Function at 0x10031c60
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x1007fc78
mov eax, dword fs:[0]
push eax
sub esp, 0xa4
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10097060]
xor eax, esp
push eax
lea eax, [esp + 0xb8]
mov dword fs:[0], eax
mov ebp, ecx
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x597dc]
cmp ecx, 2
je 0x10031cc7
mov eax, 1
mov dword [ebp + 0x80], eax
mov dword [ebp + 0x88], eax
xor eax, eax
mov dword [ebp + 0xa8], eax
mov dword [ebp + 0xac], eax
jmp 0x10033295
mov ebx, dword [eax + 0x59774]
mov eax, dword [ebx]
mov edx, dword [eax + 8]
mov ecx, ebx
call edx
mov eax, dword [ebp + 0x14]
push eax
call fcn.1001be00
push ebp
call fcn.10004230
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx + 0x597b0]
xor esi, esi
cmp eax, esi
ja 0x10031d40
mov ecx, dword [0x1009a210]
mov edi, 1
mov dword [ebp + 0x80], edi
mov dword [ebp + 0x88], edi
mov edx, dword [ecx]
mov eax, dword [edx + 0x28]
call eax
mov dword [ebx + 0xfc], esi
mov eax, dword [ebp + 0x14]
add eax, 0x597e8
lea ebx, [esp + 0x50]
mov dword [esp + 0x50], 2
call fcn.100053d0
mov dword [eax], esi
mov dword [ebp + 0xb8], esi
mov eax, edi
jmp 0x10033295
cmp dword [ebp + 0x88], esi
je 0x10031d57
cmp dword [ebp + 0x84], esi
je 0x10031d57
mov eax, 1
jmp 0x10031d59
xor eax, eax
mov dword [ebp + 0x80], eax
mov eax, ebp
call fcn.10001990
cmp dword [ebx + 0xa4], esi
jne 0x10033290
cmp dword [ebx + 0xa8], esi
jne 0x10033290
mov edi, dword [ebp + 0x14]
add edi, 0x597a8
cmp dword [edi + 8], esi
mov dword [esp + 0x50], edi
jne 0x10031d9b
push ebx
call fcn.10004080
jmp 0x10033290
fld dword [ebx + 0x24]
push ebp
fstp dword [esp + 0x64]
fld dword [ebx + 0x20]
fstp dword [esp + 0x60]
fld dword [ebx + 0x28]
fstp dword [esp + 0x68]
fld dword [ebx + 0x2c]
fstp dword [esp + 0x6c]
call fcn.100332b0
mov esi, eax
test esi, esi
je 0x10031e01
fld dword [esi + 0xc]
lea eax, [esp + 0x5c]
fstp dword [esp + 0x74]
lea ecx, [esp + 0x70]
fld dword [esi + 8]
fstp dword [esp + 0x70]
fld dword [esi + 0x10]
fstp dword [esp + 0x78]
fld dword [esi + 0x14]
fstp dword [esp + 0x7c]
call fcn.10023f00
fcomp qword [0x1008b798]
fnstsw ax
test ah, 5
jp 0x10031e01
push esi
mov eax, ebp
call fcn.10004e00
mov eax, edi
call fcn.100052e0
mov esi, eax
mov dword [esp + 0x4c], esi
call fcn.1005a620
fld dword [esi + 0xc]
fstp dword [esp + 0x74]
lea eax, [esp + 0x5c]
fld dword [esi + 8]
lea ecx, [esp + 0x70]
fstp dword [esp + 0x70]
fld dword [esi + 0x10]
fstp dword [esp + 0x78]
fld dword [esi + 0x14]
fstp dword [esp + 0x7c]
call fcn.10023f00
fst qword [esp + 0x54]
fcomp qword [0x1008b750]
fnstsw ax
test ah, 5
jp 0x10031ed2
fld dword [esp + 0x70]
sub esp, 0x10
fsub dword [esp + 0x6c]
fstp qword [esp + 8]
fld dword [esp + 0x84]
fsub dword [esp + 0x70]
fstp qword [esp]
call fcn.10059120
fstp dword [esp + 0x58]
add esp, 4
fld dword [0x1008b71c]
fstp dword [esp + 8]
fld dword [esp + 0x74]
fstp dword [esp + 4]
fld dword [esp + 0x54]
fstp dword [esp]
call fcn.10022b80
add esp, 0xc
test eax, eax
jne 0x10031eac
fld dword [esp + 0x48]
push ecx
fstp dword [esp]
call fcn.10022bd0
mov edi, dword [esp + 0x4c]
call fcn.10004d90
test eax, eax
jne 0x10031ed2
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, edi
call fcn.1001ca30
mov eax, dword [esp + 0x50]
call fcn.10005300
jmp 0x10033290
push str.target
call fcn.10064a30
mov edi, dword [esp + 0x50]
add esp, 4
push edx
push eax
mov eax, edi
call fcn.1005a700
test eax, eax
je 0x10031f22
mov ecx, dword [ebx + 0x19c]
mov eax, dword [ebx + 0x198]
push ecx
push eax
mov eax, edi
call fcn.10031b00
test eax, eax
je 0x10031f22
cmp dword [ebx + 0x144], 0
je 0x10031f22
mov ecx, dword [0x1009a210]
mov edx, dword [ecx]
mov eax, dword [edx + 0x8c]
call eax
fld dword [ebx + 0x24]
lea esi, [ebp + 0x24]
fstp dword [esi + 4]
fld dword [ebx + 0x20]
fstp dword [esi]
fld dword [ebx + 0x28]
fstp dword [esi + 8]
mov dword [ebp + 0x34], 0x211
mov eax, dword [edi + 0x60]
mov edi, dword [edi + 0x64]
push edi
push eax
mov eax, ebx
call fcn.100040c0
test eax, eax
je 0x10032024
cmp dword [ebp + 0x80], 0
je 0x1003202d
fld qword [0x1008b730]
fld qword [esp + 0x54]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 1
jne 0x10031f8e
fstp st(0)
mov dword [ebp + 0x34], 0x211
fld dword [esp + 0x74]
fstp dword [ebp + 0x28]
fld dword [esp + 0x70]
fstp dword [esi]
jmp 0x10031fd9
fld qword [0x1008b810]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x10031fd7
fld dword [esp + 0x74]
mov dword [ebp + 0x34], 0x112
fld dword [esp + 0x60]
fsubr st(1)
fld qword [0x1008b708]
fmul st(1), st(0)
fxch st(1)
fdiv st(3)
fsubp st(2)
fxch st(1)
fstp dword [ebp + 0x28]
fld dword [esp + 0x70]
fld dword [esp + 0x5c]
fsubr st(1)
fmulp st(2)
fxch st(1)
fdivrp st(2)
fsubrp st(1)
fstp dword [esi]
jmp 0x10031fd9
fstp st(0)
mov edx, dword [ebp + 0x34]
mov eax, esi
mov ecx, 1
mov esi, ebx
call fcn.1004a2f0
cmp eax, 2
jne 0x10032099
mov ecx, dword [ebp + 0x34]
and cl, 0xf
cmp cl, al
jne 0x1003200c
mov dword [ebp + 0x88], 0
jmp 0x10032099
mov edx, dword [ebp + 0x14]
mov eax, dword [esp + 0x4c]
push edx
call fcn.1001ca30
mov eax, dword [esp + 0x50]
call fcn.10005300
jmp 0x10032099
cmp dword [ebp + 0x80], 0
jne 0x10032093
fld qword [0x1008b798]
fld qword [esp + 0x54]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x1003207c
fld dword [esp + 0x74]
mov dword [ebp + 0x34], 0x211
fld dword [esp + 0x60]
fsubr st(1)
fld qword [0x1008b728]
fmul st(1), st(0)
fxch st(1)
fdiv st(3)
fsubp st(2)
fxch st(1)
fstp dword [ebp + 0x28]
fld dword [esp + 0x70]
fld dword [esp + 0x5c]
fsubr st(1)
fmulp st(2)
fxch st(1)
fdivrp st(2)
fsubrp st(1)
fstp dword [esi]
jmp 0x1003207e
fstp st(0)
mov eax, esi
mov ecx, 1
mov edx, 0x211
mov esi, ebx
call fcn.1004a2f0
jmp 0x10032099
push ebx
call fcn.10004080
fld dword [esp + 0x70]
sub esp, 0x10
fsub dword [esp + 0x6c]
fstp qword [esp + 8]
fld dword [esp + 0x84]
fsub dword [esp + 0x70]
fstp qword [esp]
call fcn.10059120
fstp dword [esp + 0x60]
add esp, 4
fld dword [0x1008b71c]
fstp dword [esp + 8]
fld dword [esp + 0x74]
fstp dword [esp + 4]
fld dword [esp + 0x5c]
fstp dword [esp]
call fcn.10022b80
add esp, 0xc
test eax, eax
jne 0x100320f4
fld dword [esp + 0x50]
push ecx
fstp dword [esp]
call fcn.10022bd0
fld qword [0x1008b758]
fcomp qword [esp + 0x54]
fnstsw ax
test ah, 1
jne 0x1003319e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp + 0x3c]
cmp eax, 0x1f4
jbe 0x1003319e
mov eax, dword [ebx + 0x1b8]
test eax, eax
je 0x100321ec
mov eax, dword [ebx + 0x144]
test eax, eax
je 0x100321ec
mov ecx, dword [ebx + 0x168]
test ecx, ecx
jne 0x10032148
lea eax, [ecx + 0x64]
jmp 0x1003214f
imul eax, eax, 0x64
xor edx, edx
div ecx
mov ecx, dword [ebp + 0x14]
cmp eax, dword [ecx + 0x250]
jae 0x100321ec
lea edx, [esp + 0x50]
push edx
mov ecx, 0x10089cb0
call fcn.10001a30
lea eax, [esp + 0x50]
push eax
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x100321ec
mov esi, dword [edi]
mov eax, ebx
call fcn.10031970
test eax, eax
jne 0x100321ec
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x100321ec
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x100321ec
cmp dword [edi + 0x14], 0
jne 0x100321ec
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089cbc
call fcn.10001a30
lea edx, [esp + 0x50]
lea ecx, [ebp + 0x68]
push edx
mov dword [esp + 0xc4], 1
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0x48], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x10032297
mov eax, esi
cmp dword [eax + 0x14], 0
jne 0x10032297
mov ecx, esi
mov edi, dword [ecx]
mov eax, ebx
call fcn.1004a950
test eax, eax
jne 0x10032297
mov edx, esi
mov esi, dword [edx]
call fcn.10064990
test eax, eax
je 0x10032297
mov edi, 0x1aacc
mov eax, ebx
call fcn.1004a950
test eax, eax
jne 0x10032297
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx]
mov eax, dword [ebx]
mov eax, dword [eax + 0x14]
push edx
mov ecx, ebx
call eax
jmp 0x10033195
mov eax, ebx
call fcn.100040a0
cmp eax, 0x14
jae 0x10032379
mov esi, dword [esp + 0x4c]
mov eax, esi
call fcn.10004040
cmp eax, 0x1e
jbe 0x10032379
mov eax, dword [esi + 0x64]
cmp eax, dword [ebx + 0x1c]
jne 0x10032379
mov eax, dword [esi + 0x60]
cmp eax, dword [ebx + 0x18]
jne 0x10032379
lea ecx, [esp + 0x50]
push ecx
mov ecx, str.GPk
call fcn.10001a30
lea edx, [esp + 0x50]
push edx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 2
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032379
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032379
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032379
mov ecx, dword [edi]
mov eax, dword [ebx]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0x1770
mov dword [ebp + 0x3c], eax
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x1009a210]
mov eax, dword [ecx]
mov edx, dword [eax + 0x2c]
call edx
jmp 0x1003319e
mov eax, ebx
call fcn.100040a0
cmp eax, 0x28
jae 0x1003240a
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089cd0
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 3
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x1003240a
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x1003240a
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x1003240a
cmp dword [edi + 0x14], 0
jne 0x1003240a
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089cd8
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 4
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0x48], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x100324eb
mov edx, esi
cmp dword [edx + 0x14], 0
jne 0x100324eb
mov eax, esi
mov esi, dword [eax]
call fcn.10064990
test eax, eax
je 0x100324eb
mov eax, dword [esp + 0x48]
call fcn.1002a6c0
test eax, eax
jne 0x100324eb
mov ecx, dword [esp + 0x48]
mov esi, dword [esp + 0x4c]
mov edi, dword [ecx]
mov eax, esi
call fcn.1005a6a0
test eax, eax
jne 0x100324eb
mov edx, dword [ebp + 0xa0]
mov eax, dword [ebp + 0x9c]
push edx
push eax
mov eax, esi
call fcn.10031b00
test eax, eax
je 0x100324eb
mov eax, dword [esp + 0x48]
mov ecx, dword [eax]
mov edx, dword [ebx]
mov edx, dword [edx + 0x14]
push ecx
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
mov eax, dword [esi + 4]
mov esi, dword [esi]
mov dword [ebp + 0x9c], esi
mov dword [ebp + 0xa0], eax
jmp 0x1003319e
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x24c], 0
je 0x100325c5
mov eax, dword [esp + 0x4c]
mov esi, dword [eax + 0x64]
mov edi, dword [eax + 0x60]
push esi
push edi
mov eax, ebx
call fcn.100040c0
test eax, eax
je 0x100325c5
cmp dword [ebx + 0x130], esi
je 0x100325c5
cmp dword [ebx + 0x12c], edi
je 0x100325c5
lea ecx, [esp + 0x50]
push ecx
mov ecx, 0x10089ce4
call fcn.10001a30
lea edx, [esp + 0x50]
push edx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 5
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0x48], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x100325c5
mov eax, esi
cmp dword [eax + 0x14], 0
jne 0x100325c5
call fcn.1002a6c0
test eax, eax
jne 0x100325c5
mov ecx, esi
mov esi, dword [ecx]
call fcn.10064990
test eax, eax
je 0x100325c5
mov esi, dword [esp + 0x48]
mov edi, dword [esi]
mov eax, dword [esp + 0x4c]
call fcn.1005a6a0
test eax, eax
je 0x10033189
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x254], 0
je 0x10032663
lea ecx, [esp + 0x50]
push ecx
mov ecx, 0x10089cf0
call fcn.10001a30
lea edx, [esp + 0x50]
push edx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 6
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032663
cmp dword [edi + 0x14], 0
jne 0x10032663
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032663
cmp dword [ebx + 0x1b8], 0
je 0x10032663
cmp dword [ebx + 0x144], 0
je 0x10032663
mov eax, dword [ebx]
mov ecx, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
jmp 0x10033191
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089cfc
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 7
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x100326f2
cmp dword [edi + 0x14], 0
jne 0x100326f2
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x100326f2
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x100326f2
mov eax, dword [esp + 0x4c]
call fcn.10004040
cmp eax, 0x14
jae 0x100326f2
mov eax, dword [edi]
jmp 0x1003318b
fld qword [0x1008b798]
fcomp qword [esp + 0x54]
fnstsw ax
test ah, 1
jne 0x10032809
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d08
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 8
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032788
cmp dword [edi + 0x14], 0
jne 0x10032788
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032788
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032788
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d14
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 9
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032809
cmp dword [edi + 0x14], 0
jne 0x10032809
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032809
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032809
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d20
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0xa
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x1003288a
cmp dword [edi + 0x14], 0
jne 0x1003288a
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x1003288a
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x1003288a
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d2c
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0xb
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x1003290b
cmp dword [edi + 0x14], 0
jne 0x1003290b
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x1003290b
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x1003290b
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d38
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0xc
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032987
cmp dword [edi + 0x14], 0
jne 0x10032987
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032987
cmp dword [ebx + 0x48], 0x32
jae 0x10032987
mov eax, dword [edi]
jmp 0x1003318b
push 0x14
mov eax, ebp
call fcn.10004c90
cmp eax, 1
jle 0x10032aa7
lea eax, [esp + 0x50]
push eax
mov ecx, str.:YT
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0xd
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032a20
cmp dword [edi + 0x14], 0
jne 0x10032a20
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032a20
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032a20
cmp dword [ebx + 0x48], 0x32
jb 0x10032a20
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d4c
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0xe
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032aa7
cmp dword [edi + 0x14], 0
jne 0x10032aa7
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032aa7
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032aa7
cmp dword [ebx + 0x48], 0x28
jb 0x10032aa7
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d58
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0xf
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0x48], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x10032b74
mov edx, esi
cmp dword [edx + 0x14], 0
jne 0x10032b74
mov eax, esi
mov esi, dword [eax]
call fcn.10064990
test eax, eax
je 0x10032b74
mov eax, dword [esp + 0x48]
call fcn.1002a6c0
test eax, eax
jne 0x10032b74
mov esi, dword [esp + 0x4c]
mov edi, 0x1cded
mov eax, esi
call fcn.1005a6a0
test eax, eax
jne 0x10032b74
cmp dword [ebx + 0x48], 0x19
jb 0x10032b74
mov eax, dword [esp + 0x48]
mov ecx, dword [eax]
mov edx, dword [ebx]
mov edx, dword [edx + 0x14]
push ecx
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov dword [ebp + 0x8c], ecx
mov dword [ebp + 0x90], eax
jmp 0x1003319e
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x258], 0
je 0x10032c12
lea ecx, [esp + 0x50]
push ecx
mov ecx, 0x10089d64
call fcn.10001a30
lea edx, [esp + 0x50]
push edx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x10
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032c12
cmp dword [edi + 0x14], 0
jne 0x10032c12
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032c12
cmp dword [ebx + 0x144], 0
je 0x10032c12
cmp dword [ebx + 0x1b8], 0
je 0x10032c12
mov eax, dword [ebx]
mov ecx, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
jmp 0x10033191
mov edi, 0x4c9f
mov eax, ebx
call fcn.1004a950
test eax, eax
je 0x10032cca
lea eax, [esp + 0x50]
push eax
mov ecx, str._Nkp
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x11
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0x48], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x10032cca
cmp dword [esi + 0x14], 0
jne 0x10032cca
mov edx, esi
mov esi, dword [edx]
call fcn.10064990
test eax, eax
je 0x10032cca
cmp dword [ebx + 0x144], 0
je 0x10032cca
cmp dword [ebx + 0x1b8], 0
je 0x10032cca
mov eax, dword [esp + 0x48]
mov edi, dword [eax]
mov eax, ebx
call fcn.1004a950
test eax, eax
jne 0x10032cca
mov eax, dword [esp + 0x48]
mov ecx, dword [eax]
push ecx
jmp 0x1003318c
lea eax, [esp + 0x50]
push eax
mov ecx, str..bT
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x12
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032d5a
cmp dword [edi + 0x14], 0
jne 0x10032d5a
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032d5a
cmp dword [ebx + 0x48], 0x28
jb 0x10032d5a
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032d5a
cmp dword [ebx + 0x144], 0
je 0x10032d5a
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, str.qs
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x13
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032de4
cmp dword [edi + 0x14], 0
jne 0x10032de4
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032de4
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032de4
cmp dword [ebx + 0x144], 0
je 0x10032de4
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d8c
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x14
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032e6b
cmp dword [edi + 0x14], 0
jne 0x10032e6b
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032e6b
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032e6b
cmp dword [ebx + 0x48], 0x2d
jb 0x10032e6b
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089d98
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x15
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032ef2
cmp dword [edi + 0x14], 0
jne 0x10032ef2
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032ef2
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032ef2
cmp dword [ebx + 0x48], 0x32
jb 0x10032ef2
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089da4
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x16
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10032f79
cmp dword [edi + 0x14], 0
jne 0x10032f79
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10032f79
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10032f79
cmp dword [ebx + 0x48], 0x14
jb 0x10032f79
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089db0
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x17
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10033000
cmp dword [edi + 0x14], 0
jne 0x10033000
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10033000
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10033000
cmp dword [ebx + 0x48], 0x14
jae 0x10033000
mov eax, dword [edi]
jmp 0x1003318b
lea eax, [esp + 0x50]
push eax
mov ecx, 0x10089dbc
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x18
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov edi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test edi, edi
je 0x10033087
cmp dword [edi + 0x14], 0
jne 0x10033087
mov eax, edi
call fcn.1002a6c0
test eax, eax
jne 0x10033087
mov esi, dword [edi]
call fcn.10064990
test eax, eax
je 0x10033087
cmp dword [ebx + 0x48], 0x14
jae 0x10033087
mov eax, dword [edi]
jmp 0x1003318b
fld qword [0x1008b798]
fcomp qword [esp + 0x54]
fnstsw ax
test ah, 1
jne 0x10033115
lea eax, [esp + 0x50]
push eax
mov ecx, str.R_e
call fcn.10001a30
lea ecx, [esp + 0x50]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x19
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x4c], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x50]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x10033115
mov eax, dword [esi]
mov ecx, dword [0x1009a210]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x64]
call eax
test eax, eax
jne 0x10033115
mov eax, esi
call fcn.1002a6e0
test eax, eax
je 0x10033189
lea eax, [esp + 0x48]
push eax
mov ecx, 0x10089dc8
call fcn.10001a30
lea ecx, [esp + 0x48]
push ecx
lea ecx, [ebp + 0x68]
mov dword [esp + 0xc4], 0x1a
call fcn.10005150
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x54], esp
mov esi, esp
call fcn.10001cb0
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001590
mov esi, eax
lea eax, [esp + 0x48]
mov dword [esp + 0xc0], 0xffffffff
call fcn.1001f1f0
test esi, esi
je 0x1003319e
mov eax, esi
call fcn.1002a6c0
test eax, eax
jne 0x1003319e
mov eax, esi
call fcn.1002a6e0
test eax, eax
jne 0x1003319e
mov eax, dword [esi]
push eax
mov edx, dword [ebx]
mov edx, dword [edx + 0x14]
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
push 0x11
call fcn.1004b2a0
test eax, eax
je 0x100331d3
mov eax, dword [ebp + 0x14]
mov edx, dword [ebx]
add eax, 0x18
push eax
mov eax, dword [edx + 0x38]
mov ecx, ebx
call eax
test eax, eax
je 0x100331d3
mov edx, dword [ebx]
mov eax, dword [edx + 0x4c]
mov ecx, ebx
call eax
test eax, eax
jle 0x100331d3
mov edx, dword [ebx]
mov eax, dword [edx + 0x58]
mov ecx, ebx
call eax
push 0x12
call fcn.1004b2a0
test eax, eax
je 0x10033208
mov ebp, dword [ebp + 0x14]
mov edx, dword [ebx]
mov eax, dword [edx + 0x3c]
add ebp, 0x18
push ebp
mov ecx, ebx
call eax
test eax, eax
je 0x10033208
mov edx, dword [ebx]
mov eax, dword [edx + 0x50]
mov ecx, ebx
call eax
test eax, eax
jle 0x10033208
mov edx, dword [ebx]
mov eax, dword [edx + 0x5c]
mov ecx, ebx
call eax
push 0x19
call fcn.1004b2a0
test eax, eax
je 0x1003322d
mov edx, dword [ebx]
mov eax, dword [edx + 0x54]
push 0x19
mov ecx, ebx
call eax
test eax, eax
jle 0x1003322d
mov edx, dword [ebx]
mov eax, dword [edx + 0x64]
push 0x19
mov ecx, ebx
call eax
push 0x1a
call fcn.1004b2a0
test eax, eax
je 0x10033252
mov edx, dword [ebx]
mov eax, dword [edx + 0x54]
push 0x1a
mov ecx, ebx
call eax
test eax, eax
jle 0x10033252
mov edx, dword [ebx]
mov eax, dword [edx + 0x64]
push 0x1a
mov ecx, ebx
call eax
call fcn.10064a60
test eax, eax
je 0x10033290
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + 0x60]
mov ecx, dword [ecx + 0x64]
mov edx, dword [ebx]
push ecx
push eax
mov eax, dword [edx + 0x78]
mov ecx, ebx
call eax
test eax, eax
je 0x10033290
mov ecx, dword [0x1009a210]
mov edx, dword [ecx]
mov eax, dword [edx + 0x90]
push 0
call eax
mov al, 0
mov ecx, dword [0x1009a43c]
mov byte [ecx], al
mov eax, 1
mov ecx, dword [esp + 0xb8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret 4