Here's what the code in Olly looked like, it seems right... (I just edited it so it shows the entry point, where it's crashing.)
Code:
710C15C0 > 55 PUSH EBP
710C15C1 8BEC MOV EBP,ESP
710C15C3 81EC C4000000 SUB ESP,0C4
710C15C9 53 PUSH EBX
710C15CA 56 PUSH ESI
710C15CB 57 PUSH EDI
710C15CC 8DBD 3CFFFFFF LEA EDI,DWORD PTR SS:[EBP-C4]
710C15D2 B9 31000000 MOV ECX,31
710C15D7 B8 CCCCCCCC MOV EAX,CCCCCCCC
710C15DC F3:AB REP STOS DWORD PTR ES:[EDI]
710C15DE 8B45 0C MOV EAX,DWORD PTR SS:[EBP+C]
710C15E1 8985 3CFFFFFF MOV DWORD PTR SS:[EBP-C4],EAX
710C15E7 83BD 3CFFFFFF 01 CMP DWORD PTR SS:[EBP-C4],1
710C15EE 74 02 JE SHORT Gettickc.710C15F2
710C15F0 EB 22 JMP SHORT Gettickc.710C1614
710C15F2 8BF4 MOV ESI,ESP
710C15F4 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
710C15F7 50 PUSH EAX
710C15F8 FF15 B0B10C71 CALL DWORD PTR DS:[<&KERNEL32.DisableThr>; kernel32.DisableThreadLibraryCalls
710C15FE 3BF4 CMP ESI,ESP
710C1600 E8 D1FBFFFF CALL Gettickc.710C11D6
710C1605 68 46100C71 PUSH Gettickc.710C1046
710C160A 68 E0110C71 PUSH Gettickc.710C11E0
710C160F E8 44FCFFFF CALL Gettickc.710C1258
710C1614 B8 01000000 MOV EAX,1
710C1619 5F POP EDI
710C161A 5E POP ESI
710C161B 5B POP EBX
710C161C 81C4 C4000000 ADD ESP,0C4
710C1622 3BEC CMP EBP,ESP
710C1624 E8 ADFBFFFF CALL Gettickc.710C11D6
710C1629 8BE5 MOV ESP,EBP
710C162B 5D POP EBP
710C162C C2 0C00 RETN 0C
EDIT: It seems that there is an access violation at 710C15DE, I'll try to figure it out... It's crashing before the code is executed. Odd.
EDIT2: I don't think that CMP DWORD PTR SS:[EBP-C4],1 is pointing to the right addy. I have no idea how to fix this, but it's crashing right there.