Function at 0x10bb650
Capabilities:
Check for time delay via gettickcount
Execute anti-debugging instructions

Disassembly:
push 0xe24
mov eax, 0x11b87d7
call fcn.010aa6a4
mov esi, ecx
mov eax, dword [esi + 0x74]
xor ebx, ebx
mov dword [ebp - 0xc68], esi
mov byte [ebp - 0xc6d], bl
cmp byte [eax + 0x19d], bl
jne 0x10bb745
push 0xf
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
test eax, eax
jne 0x10bb745
mov eax, dword [esi + 0x74]
add eax, 0x1c0
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0xc5c]
call fcn.0107b963
push dword [esi]
push 0x270
push 0x251
push 0x10141a0
call fcn.010b32f7
add esp, 0x10
push dword [esi + 0x68]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x70]
cmp eax, ebx
je 0x10bb6e8
lea ebx, [eax + 0x90]
lea eax, [ebp - 0xc5c]
push eax
push 0xa
push edi
push ebx
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.01084b7d
push eax
call fcn.01084781
push eax
call fcn.010855f6
add esp, 0xc
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0xc5c]
push eax
push edi
push 5
lea ecx, [esi + 0x13c]
call fcn.010bade6
push dword [ebp - 0xa5c]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0xa5c]
jmp 0x10bd9a3
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x4000
lea ecx, [esi + 0x78]
mov dword [ebp - 4], ebx
call fcn.010ba034
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
or dword [ebp - 4], 0xffffffff
lea ecx, [ecx + eax*2]
mov eax, dword [esi + 0x74]
movzx eax, byte [eax + 0x19c]
neg eax
sbb eax, eax
and eax, 0x200
or eax, 4
push eax
push 0x1000
push ecx
push ebx
mov dword [ebp - 0xc8c], ecx
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0xc98], eax
cmp eax, ebx
jne 0x10bb852
mov eax, dword [esi + 0x74]
add eax, 0x1c0
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0xa50]
call fcn.0107b963
push dword [esi]
push 0x272
push 0x294
push 0x10141a0
call fcn.010b32f7
add esp, 0x10
push dword [esi + 0x68]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x70]
cmp eax, ebx
je 0x10bb7f5
lea ebx, [eax + 0x90]
lea eax, [ebp - 0xa50]
push eax
push 0xa
push edi
push ebx
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.01084b7d
push eax
call fcn.01084781
push eax
call fcn.010855f6
add esp, 0xc
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0xa50]
push eax
push edi
push 5
lea ecx, [esi + 0x13c]
call fcn.010bade6
push dword [ebp - 0x850]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x850]
jmp 0x10bd9a3
mov ecx, dword [esi + 4]
mov edi, dword [esi + 8]
add edi, ecx
push ecx
add edi, eax
push eax
mov dword [esi + 0xc], eax
mov dword [ebp - 0xcb4], edi
call dword [sym.imp.KERNEL32.dll_VirtualLock]
test eax, eax
jne 0x10bb937
mov eax, dword [esi + 0x74]
add eax, 0x1c0
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x42c]
call fcn.0107b963
push 0x8000
push ebx
push dword [ebp - 0xc98]
call dword [sym.imp.KERNEL32.dll_VirtualFree]
push dword [esi]
push 0x273
push 0x2b6
push 0x10141a0
call fcn.010b32f7
add esp, 0x10
push dword [esi + 0x68]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x70]
cmp eax, ebx
je 0x10bb8da
lea ebx, [eax + 0x90]
lea eax, [ebp - 0x42c]
push eax
push 0xa
push edi
push ebx
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.01084b7d
push eax
call fcn.01084781
push eax
call fcn.010855f6
add esp, 0xc
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0x42c]
push eax
push edi
push 5
lea ecx, [esi + 0x13c]
call fcn.010bade6
push dword [ebp - 0x22c]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x22c]
jmp 0x10bd9a3
push dword [esi + 4]
push edi
call dword [sym.imp.KERNEL32.dll_VirtualLock]
test eax, eax
mov eax, dword [esi + 0x74]
jne 0x10bba0b
add eax, 0x1c0
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x844]
call fcn.0107b963
push 0x8000
push ebx
push dword [ebp - 0xc98]
call dword [sym.imp.KERNEL32.dll_VirtualFree]
push dword [esi]
push 0x274
push 0x2cc
push 0x10141a0
call fcn.010b32f7
add esp, 0x10
push dword [esi + 0x68]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x70]
cmp eax, ebx
je 0x10bb9ae
lea ebx, [eax + 0x90]
lea eax, [ebp - 0x844]
push eax
push 0xa
push edi
push ebx
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.01084b7d
push eax
call fcn.01084781
push eax
call fcn.010855f6
add esp, 0xc
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0x844]
push eax
push edi
push 5
lea ecx, [esi + 0x13c]
call fcn.010bade6
push dword [ebp - 0x644]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x644]
jmp 0x10bd9a3
mov ecx, dword [eax + 0x18c]
fldz
mov dword [ebp - 0xcdc], ecx
mov ecx, dword [eax + 0x1a4]
mov dword [ebp - 0xc9c], ecx
mov ecx, dword [eax + 0x1a8]
fst qword [esi + 0x28]
mov dword [ebp - 0xc7c], ecx
fst qword [esi + 0x38]
lea ecx, [ebp - 0xccc]
fstp qword [esi + 0x40]
push ecx
lea ecx, [ebp - 0xcd4]
push ecx
add eax, 0x198
push eax
lea edi, [ebp - 0xcb8]
mov dword [ebp - 0xc84], ebx
mov dword [ebp - 0xc80], ebx
mov dword [ebp - 0xcd4], ebx
mov dword [ebp - 0xccc], ebx
mov dword [ebp - 0xcb8], ebx
call fcn.010ba71a
mov ecx, dword [esi + 0x74]
mov eax, dword [ecx + 0x14]
mov edx, dword [eax]
mov dword [esi + 0x18], edx
mov eax, dword [eax + 4]
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 4]
cmp dword [ebp - 0xcdc], eax
jbe 0x10bba99
mov dword [ebp - 0xcdc], eax
cmp byte [ecx + 0x11], 0
je 0x10bbc6c
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi + 0x74]
cmp byte [ecx + 0x19d], 0
mov edx, 0x1014190
jne 0x10bbac2
mov edx, 0x1014184
mov eax, dword [esi + 0x6c]
cmp eax, ebx
je 0x10bbad6
add eax, 0x90
mov dword [ebp - 0xcac], eax
jmp 0x10bbadc
mov dword [ebp - 0xcac], ebx
push 4
pop edi
mov eax, 0x1003670
push eax
add ecx, 0x198
push ecx
push 0x1014158
push eax
lea eax, [ebp - 0xd3c]
push eax
push dword [esi + 0xe0]
lea eax, [ebp - 0xd20]
push eax
push 0x1014130
push 0x101411c
lea eax, [ebp - 0xd28]
push eax
push dword [ebp - 0xc8c]
lea eax, [ebp - 0xd30]
push eax
push 0x1014110
push dword [ebp - 0xc8c]
lea eax, [ebp - 0xd38]
push 0x10140f0
push 0x10140d8
push edx
push 0x10140b4
push 0x100363c
push eax
mov dword [ebp - 0xd3c], ebx
mov dword [ebp - 0xd20], 8
mov dword [ebp - 0xd28], ebx
mov dword [ebp - 0xd30], edi
mov dword [ebp - 0xd38], ebx
mov dword [ebp - 0xd40], edi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
lea eax, [ebp - 0xd40]
push eax
push 0x10140a0
push dword [esi]
push 0x1014090
push dword [ebp - 0xcac]
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107b9f3
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01091549
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01091549
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010848da
push eax
call fcn.010845db
pop ecx
pop ecx
mov ecx, dword [esi + 0x6c]
add ecx, 0x90
call fcn.01082cd6
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x10bbc6f
push 4
pop edi
cmp dword [ebp - 0xcb8], ebx
je 0x10bbe67
mov ecx, dword [esi + 0x74]
add ecx, 0x198
push 0x1012740
call fcn.010813f5
test eax, eax
jne 0x10bbe41
mov dword [ebp - 0xcb0], 1
mov eax, dword [esi + 0x74]
lea ecx, [eax + 0x1b8]
mov dword [esi + 0x120], ecx
lea ecx, [eax + 0x1bc]
mov dword [esi + 0x124], ecx
lea ecx, [eax + 0x1c0]
mov dword [esi + 0x128], ecx
lea ecx, [eax + 0x1c4]
mov dword [esi + 0x12c], ecx
lea ecx, [eax + 0x1c8]
mov dword [esi + 0x130], ecx
lea ecx, [eax + 0x1b4]
mov dword [esi + 0x134], ecx
mov eax, dword [eax + 0x20]
mov dword [esi + 0x138], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [esi + 0x74]
fld qword [edi + 0x168]
mov ebx, eax
fld qword [0x1014088]
fmul st(1), st(0)
fxch st(1)
call sub.msvcrt.dll__ftol2
fmul qword [edi + 0x170]
mov ecx, ebx
sub ecx, eax
mov dword [ebp - 0xd50], ecx
call sub.msvcrt.dll__ftol2
sub ebx, eax
mov al, byte [edi + 0x178]
xor edi, edi
mov dword [ebp - 0xd90], ebx
mov byte [ebp - 0xc85], al
mov byte [ebp - 0xc6e], 0
mov dword [ebp - 0xc78], edi
mov dword [ebp - 0xc74], edi
call fcn.010b8127
or dword [ebp - 0xcac], 0xffffffff
mov dword [ebp - 0xc64], eax
mov eax, dword [esi + 0x74]
cmp byte [eax + 0x179], 0
mov dword [ebp - 0xc60], edx
mov dword [ebp - 0xc8c], edi
mov dword [ebp - 0xcd8], edi
sete byte [ebp - 0xca5]
rdtsc
mov dword [esi + 0x100], eax
mov dword [esi + 0x104], edx
mov ecx, esi
call fcn.010b9336
test al, al
je 0x10bbdad
cmp byte [ebp - 0xc85], 0
je 0x10bc0c9
lea edi, [esi + 0x78]
mov ecx, edi
call fcn.010b817b
cmp eax, dword [edi + 0x64]
jae 0x10bbddc
mov ecx, edi
call fcn.010b8163
mov ecx, edi
mov ebx, eax
call fcn.010b817b
cmp ebx, eax
jb 0x10bbddc
push 0x4000
mov ecx, edi
call fcn.010ba095
mov ecx, esi
call fcn.010b936a
test al, al
je 0x10bc0c9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
and dword [ebp - 0xcd0], 0
cmp dword [ebp - 0xc9c], 0
mov dword [ebp - 0xd48], eax
jbe 0x10bbfc9
mov eax, dword [ebp - 0xcb0]
dec eax
je 0x10bbf53
dec eax
je 0x10bbf32
dec eax
je 0x10bbf0b
dec eax
je 0x10bbeea
dec eax
je 0x10bbec8
xor edi, edi
xor ebx, ebx
xor eax, eax
xor edx, edx
jmp 0x10bbf72
mov ecx, dword [esi + 0x74]
add ecx, 0x198
push 0x1012728
call fcn.010813f5
test eax, eax
jne 0x10bbe67
mov dword [ebp - 0xcb0], 2
jmp 0x10bbca0
cmp dword [ebp - 0xccc], ebx
je 0x10bbe7e
mov dword [ebp - 0xcb0], 3
jmp 0x10bbca0
cmp dword [ebp - 0xcd4], ebx
je 0x10bbe91
mov dword [ebp - 0xcb0], edi
jmp 0x10bbca0
cmp dword [ebp - 0xcb8], ebx
je 0x10bbea8
mov dword [ebp - 0xcb0], 5
jmp 0x10bbca0
push ebx
push 0x1014064
push 5
lea ecx, [esi + 0x13c]
call fcn.01084dca
push 0xd
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x10bd740
rdtsc
push dword [esi + 4]
mov ebx, edx
push dword [ebp - 0xcb4]
mov edi, eax
push dword [ebp - 0xc98]
call dword [ebp - 0xcb8]
rdtsc
jmp 0x10bbf72
rdtsc
push 1
push dword [esi + 4]
mov ebx, edx
push dword [ebp - 0xcb4]
mov edi, eax
push dword [ebp - 0xc98]
call dword [ebp - 0xcd4]
rdtsc
jmp 0x10bbf72
rdtsc
push dword [ebp - 0xcdc]
mov ebx, edx
push 1
push dword [esi + 4]
mov edi, eax
push dword [ebp - 0xcb4]
push dword [ebp - 0xc98]
call dword [ebp - 0xccc]
rdtsc
jmp 0x10bbf72
rdtsc
push dword [esi + 4]
mov ebx, edx
push dword [ebp - 0xc98]
mov edi, eax
push dword [ebp - 0xcb4]
call sub.msvcrt.dll_memcpy
add esp, 0xc
rdtsc
jmp 0x10bbf72
rdtsc
push dword [esi + 4]
mov ebx, edx
push dword [ebp - 0xc98]
mov edi, eax
push dword [ebp - 0xcb4]
call sub.msvcrt.dll_memcpy
add esp, 0xc
rdtsc
cmp byte [ebp - 0xc6e], 0
jne 0x10bbf99
sub eax, edi
sbb edx, ebx
mov ebx, edx
mov edi, eax
push ebx
push edi
lea ecx, [esi + 0x78]
call fcn.010ba4e1
add dword [ebp - 0xc84], edi
adc dword [ebp - 0xc80], ebx
mov eax, dword [esi + 0x12c]
mov eax, dword [eax]
test eax, eax
jne 0x10bbfc9
mov eax, dword [esi + 0x128]
mov eax, dword [eax]
test eax, eax
jne 0x10bbfc9
inc dword [ebp - 0xcd0]
mov eax, dword [ebp - 0xcd0]
cmp eax, dword [ebp - 0xc9c]
jb 0x10bbe0b
mov eax, dword [esi + 0x12c]
mov eax, dword [eax]
test eax, eax
jne 0x10bc0c9
mov eax, dword [esi + 0x128]
mov eax, dword [eax]
test eax, eax
jne 0x10bc0c9
cmp byte [ebp - 0xca5], al
je 0x10bc000
mov eax, dword [esi + 0x74]
push dword [eax + 0x180]
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
inc dword [ebp - 0xcd8]
call edi
sub eax, dword [ebp - 0xd48]
cmp eax, dword [ebp - 0xc8c]
jbe 0x10bc022
mov dword [ebp - 0xc8c], eax
cmp eax, dword [ebp - 0xcac]
jae 0x10bc030
mov dword [ebp - 0xcac], eax
cmp eax, 0xa
jae 0x10bc045
mov eax, dword [ebp - 0xc9c]
add eax, eax
mov dword [ebp - 0xc9c], eax
jmp 0x10bc058
cmp eax, 0x4b
jae 0x10bc058
mov eax, dword [ebp - 0xc9c]
shr eax, 1
add dword [ebp - 0xc9c], eax
cmp byte [ebp - 0xc6e], 0
jne 0x10bbd95
cmp byte [ebp - 0xc85], 0
jne 0x10bbd95
push dword [ebp - 0xc7c]
lea ecx, [esi + 0x78]
call fcn.010ba524
call edi
cmp eax, dword [ebp - 0xd50]
jb 0x10bc0a3
cmp byte [esi + 0xd8], 0
je 0x10bc0a3
rdtsc
mov dword [ebp - 0xc74], edx
mov dword [ebp - 0xc78], eax
jmp 0x10bc0b1
call edi
cmp eax, dword [ebp - 0xd90]
jb 0x10bbd95
push dword [esi + 0x134]
mov byte [ebp - 0xc6e], 1
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x10bbd95
mov eax, dword [esi + 0x12c]
mov eax, dword [eax]
test eax, eax
jne 0x10bd740
mov eax, dword [esi + 0x128]
mov eax, dword [eax]
test eax, eax
jne 0x10bd740
call fcn.010b8127
mov dword [ebp - 0xc94], eax
mov dword [ebp - 0xc90], edx
rdtsc
mov dword [esi + 0x108], eax
mov dword [esi + 0x10c], edx
call fcn.010b8145
and dword [ebp - 0xc6c], 0
mov dword [ebp - 0xc68], edx
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xc64]
mov ebx, 0x7fffffff
and edx, ebx
mov dword [ebp - 0xca0], edx
fild qword [ebp - 0xca4]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xc60]
mov edi, 0x80000000
and dword [ebp - 0xc68], edi
fild qword [ebp - 0xc6c]
and dword [ebp - 0xc6c], 0
mov dword [ebp - 0xc68], eax
and dword [ebp - 0xc68], edi
fchs
faddp st(1)
and eax, ebx
mov dword [ebp - 0xca0], eax
fild qword [ebp - 0xca4]
fild qword [ebp - 0xc6c]
mov ecx, dword [ebp - 0xc90]
mov eax, dword [ebp - 0xc94]
and dword [ebp - 0xc94], 0
fchs
mov dword [ebp - 0xc6c], eax
faddp st(1)
mov edx, ecx
mov dword [ebp - 0xc68], edx
and dword [ebp - 0xc68], ebx
fdiv st(1)
mov dword [ebp - 0xc90], edx
and dword [ebp - 0xc90], edi
sub eax, dword [ebp - 0xc64]
mov edx, dword [esi + 0x18]
sbb ecx, dword [ebp - 0xc60]
and dword [ebp - 0xc64], 0
mov dword [ebp - 0xc60], ecx
and dword [ebp - 0xc60], edi
and ecx, ebx
fstp qword [esi + 0xe8]
fild qword [ebp - 0xc6c]
fild qword [ebp - 0xc94]
mov dword [ebp - 0xc6c], eax
mov dword [ebp - 0xc68], ecx
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x104]
fchs
faddp st(1)
fdiv st(1)
fstp qword [esi + 0xf0]
fild qword [ebp - 0xc6c]
fild qword [ebp - 0xc64]
mov dword [ebp - 0xc6c], edx
and dword [ebp - 0xc64], 0
mov edx, dword [esi + 0x108]
mov dword [ebp - 0xc60], eax
fchs
and dword [ebp - 0xc60], edi
faddp st(1)
and eax, ebx
sub edx, dword [esi + 0x100]
mov dword [ebp - 0xc68], eax
fdivrp st(1)
mov eax, dword [esi + 0x10c]
sbb eax, ecx
fst qword [esi + 0xf8]
fild qword [ebp - 0xc6c]
fild qword [ebp - 0xc64]
mov dword [ebp - 0xc6c], edx
fchs
faddp st(1)
fst qword [ebp - 0xd18]
and dword [ebp - 0xc64], 0
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
and eax, ebx
cmp dword [ebp - 0xc74], 0
mov dword [ebp - 0xc68], eax
fild qword [ebp - 0xc6c]
fild qword [ebp - 0xc64]
mov eax, dword [ebp - 0xc78]
fchs
faddp st(1)
fdiv st(1)
fst qword [esi + 0x110]
ja 0x10bc2c0
test eax, eax
jbe 0x10bc304
sub eax, dword [esi + 0x100]
mov edx, dword [ebp - 0xc74]
sbb edx, ecx
mov dword [ebp - 0xc60], edx
and dword [ebp - 0xc60], edi
and edx, ebx
and dword [ebp - 0xc64], 0
mov dword [ebp - 0xc78], eax
mov dword [ebp - 0xc74], edx
fild qword [ebp - 0xc78]
fild qword [ebp - 0xc64]
fchs
faddp st(1)
fdiv st(2)
fstp qword [esi + 0x30]
fsub st(2)
mov byte [ebp - 0xc6d], 1
fabs
fstp qword [ebp - 0xca4]
fxch st(1)
fdiv qword [0x10026f0]
fmul qword [0x1005658]
fstp qword [ebp - 0xcf4]
fld qword [ebp - 0xcf4]
fcomp qword [ebp - 0xca4]
fnstsw ax
test ah, 5
jnp 0x10bc343
mov byte [ebp - 0xc6d], 0
mov eax, dword [ebp - 0xc84]
and dword [ebp - 0xc64], 0
mov dword [ebp - 0xc78], eax
mov eax, dword [ebp - 0xc80]
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
and eax, ebx
mov dword [ebp - 0xc74], eax
fild qword [ebp - 0xc78]
lea ecx, [esi + 0x78]
fild qword [ebp - 0xc64]
fchs
faddp st(1)
fdivrp st(1)
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xc94]
fstp qword [esi + 0x28]
call fcn.010b8163
fild dword [esi + 4]
mov ecx, dword [esi + 4]
mov dword [esi + 0x10], eax
test ecx, ecx
jge 0x10bc3ac
fadd qword [0x1007b20]
mov dword [ebp - 0xc68], eax
fild dword [ebp - 0xc68]
test eax, eax
jge 0x10bc3c2
fadd qword [0x1007b20]
fmul st(1)
mov eax, dword [esi + 0xa4]
mov ecx, dword [esi + 0xa0]
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
fst qword [esi + 0x20]
and eax, ebx
mov dword [ebp - 0xc74], eax
mov dword [ebp - 0xc78], ecx
fild qword [ebp - 0xc78]
xor ecx, ecx
mov dword [ebp - 0xc64], ecx
fild qword [ebp - 0xc64]
mov eax, dword [esi + 0xc4]
mov edx, dword [esi + 0xc0]
mov dword [ebp - 0xc60], eax
fchs
and dword [ebp - 0xc60], edi
faddp st(1)
and eax, ebx
fld qword [ebp - 0xd18]
mov dword [ebp - 0xc74], eax
mov dword [ebp - 0xc78], edx
fdiv st(1), st(0)
mov dword [ebp - 0xc64], ecx
mov eax, dword [esi + 0x94]
mov edx, dword [esi + 0x90]
fxch st(1)
fstp qword [ebp - 0xc6c]
fld qword [0x100ab48]
fmul st(3), st(0)
fild qword [ebp - 0xc78]
fild qword [ebp - 0xc64]
mov dword [ebp - 0xc78], edx
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
and eax, ebx
fchs
mov dword [ebp - 0xc74], eax
faddp st(1)
mov dword [ebp - 0xc64], ecx
mov eax, dword [esi + 0x9c]
mov edx, dword [esi + 0x98]
fdiv st(2)
fld st(4)
fdivrp st(1)
fstp qword [esi + 0x38]
fld st(3)
fdiv qword [ebp - 0xc6c]
fstp qword [esi + 0x40]
fild qword [ebp - 0xc78]
fild qword [ebp - 0xc64]
mov dword [ebp - 0xc78], edx
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
and eax, ebx
fchs
mov dword [ebp - 0xc74], eax
faddp st(1)
mov dword [ebp - 0xc64], ecx
mov eax, dword [esi + 0x74]
fdiv st(2)
fld st(4)
fdivrp st(1)
fstp qword [esi + 0x48]
fild qword [ebp - 0xc78]
fild qword [ebp - 0xc64]
fchs
faddp st(1)
fdivrp st(2)
fxch st(3)
fdivrp st(1)
fstp qword [esi + 0x50]
fmulp st(1)
fdiv qword [ebp - 0xc94]
fstp qword [esi + 0x58]
cmp byte [eax + 0x11], cl
je 0x10bd740
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x10bc525
add eax, 0x90
jmp 0x10bc527
xor eax, eax
push 0x101405c
push dword [esi]
push 0x1014090
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc558
add eax, 0x90
jmp 0x10bc55a
xor eax, eax
push 0x1014008
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc575
add eax, 0x90
jmp 0x10bc577
xor eax, eax
and dword [ebp - 0xd98], 0
push 0x1003670
lea ecx, [ebp - 0xd98]
push ecx
push dword [ebp - 0xc80]
lea ecx, [ebp - 0xda0]
push dword [ebp - 0xc84]
mov dword [ebp - 0xda0], 0xc
push ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc5d4
add eax, 0x90
jmp 0x10bc5d6
xor eax, eax
fld qword [esi + 0x28]
and dword [ebp - 0xda8], 0
and dword [ebp - 0xdd8], 0
push 0x100363c
lea ecx, [ebp - 0xda8]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xdd8]
push ecx
push 0x1013fb0
push eax
mov dword [ebp - 0xdd4], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc643
add eax, 0x90
jmp 0x10bc645
xor eax, eax
fld qword [esi + 0x30]
and dword [ebp - 0xdb0], 0
and dword [ebp - 0xde8], 0
push 0x100363c
lea ecx, [ebp - 0xdb0]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xde8]
push ecx
push 0x1013f58
push eax
mov dword [ebp - 0xde4], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b958f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc6b2
add eax, 0x90
jmp 0x10bc6b4
xor eax, eax
fld qword [ebp - 0xc6c]
and dword [ebp - 0xdb8], 0
and dword [ebp - 0xe28], 0
push 0x1003670
lea ecx, [ebp - 0xdb8]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xe28]
push ecx
push 0x1013f00
push eax
mov dword [ebp - 0xe24], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc724
add eax, 0x90
jmp 0x10bc726
xor eax, eax
and dword [ebp - 0xdc0], 0
push 0x100363c
lea ecx, [ebp - 0xdc0]
push ecx
push dword [esi + 0x10]
lea ecx, [ebp - 0xdc8]
push ecx
push 0x1013ea8
push eax
mov dword [ebp - 0xdc8], 0xc
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc787
add eax, 0x90
jmp 0x10bc789
xor eax, eax
fld qword [esi + 0x38]
and dword [ebp - 0xdd0], 0
push 0x100363c
lea ecx, [ebp - 0xdd0]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xdf8]
push ecx
push 0x1013e50
push eax
mov dword [ebp - 0xdf8], 0xb
mov dword [ebp - 0xdf4], 1
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc7f9
add eax, 0x90
jmp 0x10bc7fb
xor eax, eax
fld qword [esi + 0x40]
and dword [ebp - 0xd5c], 0
push 0x100363c
lea ecx, [ebp - 0xd5c]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xe18]
push ecx
push 0x1013df8
push eax
mov dword [ebp - 0xe18], 0xb
mov dword [ebp - 0xe14], 1
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc86b
add eax, 0x90
jmp 0x10bc86d
xor eax, eax
fld qword [esi + 0x48]
and dword [ebp - 0xd00], 0
push 0x100363c
lea ecx, [ebp - 0xd00]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xde0]
push ecx
push 0x1013da0
push eax
mov dword [ebp - 0xde0], 0xb
mov dword [ebp - 0xddc], 1
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc8dd
add eax, 0x90
jmp 0x10bc8df
xor eax, eax
fld qword [esi + 0x50]
and dword [ebp - 0xd84], 0
push 0x100363c
lea ecx, [ebp - 0xd84]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xdf0]
push ecx
push 0x1013d48
push eax
mov dword [ebp - 0xdf0], 0xb
mov dword [ebp - 0xdec], 1
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc94f
add eax, 0x90
jmp 0x10bc951
xor eax, eax
fld qword [esi + 0x58]
and dword [ebp - 0xd08], 0
push 0x100363c
lea ecx, [ebp - 0xd08]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xe00]
push ecx
push 0x1013cf0
push eax
mov dword [ebp - 0xe00], 0xb
mov dword [ebp - 0xdfc], 1
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bc9c1
add eax, 0x90
jmp 0x10bc9c3
xor eax, eax
fld qword [esi + 0xf8]
and dword [ebp - 0xdac], 0
push 0x100363c
lea ecx, [ebp - 0xdac]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xe10]
push ecx
push 0x1013c98
push eax
mov dword [ebp - 0xe10], 0xb
mov dword [ebp - 0xe0c], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bca36
add eax, 0x90
jmp 0x10bca38
xor eax, eax
fld qword [esi + 0x110]
and dword [ebp - 0xd10], 0
push 0x100363c
lea ecx, [ebp - 0xd10]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xe20]
push ecx
push 0x1013c40
push eax
mov dword [ebp - 0xe20], 0xb
mov dword [ebp - 0xe1c], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcaab
add eax, 0x90
jmp 0x10bcaad
xor eax, eax
fld qword [ebp - 0xca4]
and dword [ebp - 0xd8c], 0
push 0x1003670
lea ecx, [ebp - 0xd8c]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xe30]
push ecx
push 0x1013be8
push eax
mov dword [ebp - 0xe30], 0xb
mov dword [ebp - 0xe2c], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcb20
add eax, 0x90
jmp 0x10bcb22
xor eax, eax
fld qword [ebp - 0xcf4]
and dword [ebp - 0xd1c], 0
lea ecx, [ebp - 0xd1c]
push ecx
push ecx
push ecx
fstp qword [esp]
lea ecx, [ebp - 0xce4]
push ecx
push 0x1013b90
push eax
mov dword [ebp - 0xce4], 0xb
mov dword [ebp - 0xce0], 9
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
cmp byte [ebp - 0xc6d], 0
pop ecx
pop ecx
mov ecx, 0x1013b6c
jne 0x10bcb8d
mov ecx, 0x1013b58
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x10bcb9b
add eax, 0x90
jmp 0x10bcb9d
xor eax, eax
push 0x100363c
push ecx
push 0x1013b4c
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcbce
add eax, 0x90
jmp 0x10bcbd0
xor eax, eax
push 0x100363c
push dword [ebp - 0xcd8]
push 0x1013af8
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcc05
add eax, 0x90
jmp 0x10bcc07
xor eax, eax
push 0x100363c
push dword [ebp - 0xc9c]
push 0x1013aa0
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcc3c
add eax, 0x90
jmp 0x10bcc3e
xor eax, eax
push 0x100363c
push dword [ebp - 0xcac]
push 0x1013a48
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcc73
add eax, 0x90
jmp 0x10bcc75
xor eax, eax
push 0x100363c
push dword [ebp - 0xc8c]
push 0x10139f0
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bccaa
add eax, 0x90
jmp 0x10bccac
xor eax, eax
push 0x10139c4
push eax
call fcn.01084781
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcccd
add eax, 0x90
mov dword [ebp - 0xc8c], eax
jmp 0x10bccd4
and dword [ebp - 0xc8c], 0
and dword [ebp - 0xdcc], 0
push 0x1003670
lea eax, [ebp - 0xdcc]
push eax
lea ecx, [esi + 0x78]
mov dword [ebp - 0xd24], 0xc
call fcn.010b8163
push eax
lea eax, [ebp - 0xd24]
push eax
push 0x1013970
push dword [ebp - 0xc8c]
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.0108522a
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcd40
add eax, 0x90
jmp 0x10bcd42
xor eax, eax
and dword [ebp - 0xd94], 0
push 0x1003670
lea ecx, [ebp - 0xd94]
push ecx
push dword [esi + 0xa4]
lea ecx, [ebp - 0xd2c]
push dword [esi + 0xa0]
mov dword [ebp - 0xd2c], 0xc
push ecx
push 0x1013918
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcdac
add eax, 0x90
jmp 0x10bcdae
xor eax, eax
and dword [ebp - 0xd58], 0
push 0x1003670
lea ecx, [ebp - 0xd58]
push ecx
push dword [esi + 0xc4]
lea ecx, [ebp - 0xd34]
push dword [esi + 0xc0]
mov dword [ebp - 0xd34], 0xc
push ecx
push 0x10138c0
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bce18
add eax, 0x90
jmp 0x10bce1a
xor eax, eax
and dword [ebp - 0xd60], 0
push 0x1003670
lea ecx, [ebp - 0xd60]
push ecx
push dword [esi + 0x94]
lea ecx, [ebp - 0xcf8]
push dword [esi + 0x90]
mov dword [ebp - 0xcf8], 0xc
push ecx
push 0x1013868
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bce84
add eax, 0x90
jmp 0x10bce86
xor eax, eax
and dword [ebp - 0xd68], 0
push 0x1003670
lea ecx, [ebp - 0xd68]
push ecx
push dword [esi + 0x9c]
lea ecx, [ebp - 0xd44]
push dword [esi + 0x98]
mov dword [ebp - 0xd44], 0xc
push ecx
push 0x1013810
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcef0
add eax, 0x90
jmp 0x10bcef2
xor eax, eax
and dword [ebp - 0xd70], 0
push 0x1003670
lea ecx, [ebp - 0xd70]
push ecx
push dword [esi + 0xbc]
lea ecx, [ebp - 0xd4c]
push dword [esi + 0xb8]
mov dword [ebp - 0xd4c], 0xc
push ecx
push 0x10137b8
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcf5c
add eax, 0x90
jmp 0x10bcf5e
xor eax, eax
and dword [ebp - 0xd78], 0
push 0x1003670
lea ecx, [ebp - 0xd78]
push ecx
push dword [esi + 0xac]
lea ecx, [ebp - 0xd54]
push dword [esi + 0xa8]
mov dword [ebp - 0xd54], 0xc
push ecx
push 0x1013760
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bcfc8
add eax, 0x90
jmp 0x10bcfca
xor eax, eax
and dword [ebp - 0xd80], 0
push 0x1003670
lea ecx, [ebp - 0xd80]
push ecx
push dword [esi + 0xb4]
lea ecx, [ebp - 0xd88]
push dword [esi + 0xb0]
mov dword [ebp - 0xd88], 0xc
push ecx
push 0x1013708
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bd034
add eax, 0x90
jmp 0x10bd036
xor eax, eax
and dword [ebp - 0xdb4], 0
push 0x1003670
lea ecx, [ebp - 0xdb4]
push ecx
push dword [esi + 0xcc]
lea ecx, [ebp - 0xd64]
push dword [esi + 0xc8]
mov dword [ebp - 0xd64], 0xc
push ecx
push 0x10136b0
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x90]
mov edx, dword [esi + 0xa0]
pop ecx
pop ecx
mov ecx, dword [esi + 0x94]
push dword [esi + 0xa4]
mov dword [ebp - 0xce0], ecx
push dword [esi + 0xa0]
mov ecx, eax
sub ecx, edx
mov dword [ebp - 0xc94], ecx
mov ecx, dword [ebp - 0xce0]
sbb ecx, dword [esi + 0xa4]
push 0
push dword [ebp - 0xc7c]
mov dword [ebp - 0xc90], ecx
mov ecx, dword [esi + 0xc0]
sub ecx, edx
mov edx, dword [esi + 0xc4]
mov dword [ebp - 0xc64], ecx
mov ecx, dword [esi + 0xc4]
sbb ecx, dword [esi + 0xa4]
sub eax, dword [esi + 0xc0]
mov dword [ebp - 0xc60], ecx
mov ecx, dword [ebp - 0xce0]
sbb ecx, edx
mov dword [ebp - 0xc78], eax
mov dword [ebp - 0xc74], ecx
call fcn.011ab190
push 0
push 0x186a0
push edx
push eax
call fcn.011ab1f0
mov dword [ebp - 0xca4], eax
mov eax, dword [esi + 0x6c]
mov dword [ebp - 0xca0], edx
test eax, eax
je 0x10bd14d
add eax, 0x90
mov dword [ebp - 0xc7c], eax
jmp 0x10bd154
and dword [ebp - 0xc7c], 0
mov edx, dword [ebp - 0xc94]
push 0x10136a0
lea eax, [ebp - 0xd9c]
push eax
mov eax, dword [ebp - 0xc90]
mov dword [ebp - 0xc80], eax
and dword [ebp - 0xc80], ebx
xor ecx, ecx
mov dword [ebp - 0xc68], eax
and dword [ebp - 0xc68], edi
mov eax, dword [esi + 0xa0]
mov dword [ebp - 0xc84], edx
fild qword [ebp - 0xc84]
mov dword [ebp - 0xc6c], ecx
fild qword [ebp - 0xc6c]
mov dword [ebp - 0xc84], eax
mov eax, dword [esi + 0xa4]
mov dword [ebp - 0xc80], eax
and dword [ebp - 0xc80], ebx
fchs
faddp st(1)
mov dword [ebp - 0xc68], eax
and dword [ebp - 0xc68], edi
mov dword [ebp - 0xc6c], ecx
fmul qword [0x1009a18]
push ecx
fild qword [ebp - 0xc84]
push ecx
fild qword [ebp - 0xc6c]
lea eax, [ebp - 0xcc8]
mov dword [ebp - 0xd9c], ecx
mov dword [ebp - 0xcc8], ecx
fchs
mov dword [ebp - 0xcc4], 2
faddp st(1)
mov dword [ebp - 0xd6c], ecx
mov dword [ebp - 0xdc4], 0xc
fdivp st(1)
fstp qword [esp]
push eax
push 0x101369c
lea eax, [ebp - 0xd6c]
push eax
push dword [ebp - 0xc90]
lea eax, [ebp - 0xdc4]
push edx
push eax
push 0x1013648
push dword [ebp - 0xc7c]
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bd29a
add eax, 0x90
mov dword [ebp - 0xc7c], eax
jmp 0x10bd2a1
and dword [ebp - 0xc7c], 0
mov edx, dword [esi + 0xa0]
push 0x10136a0
lea eax, [ebp - 0xd74]
push eax
mov eax, dword [ebp - 0xc64]
mov dword [ebp - 0xcc8], eax
mov eax, dword [ebp - 0xc60]
mov dword [ebp - 0xc80], eax
and dword [ebp - 0xc80], edi
xor ecx, ecx
and eax, ebx
mov dword [ebp - 0xcc4], eax
fild qword [ebp - 0xcc8]
mov eax, dword [esi + 0xa4]
mov dword [ebp - 0xc84], ecx
fild qword [ebp - 0xc84]
mov dword [ebp - 0xc80], eax
and dword [ebp - 0xc80], edi
and eax, ebx
fchs
mov dword [ebp - 0xcc4], eax
faddp st(1)
mov dword [ebp - 0xcc8], edx
mov dword [ebp - 0xc84], ecx
push ecx
fmul qword [0x1009a18]
push ecx
fild qword [ebp - 0xcc8]
lea eax, [ebp - 0xcc0]
fild qword [ebp - 0xc84]
mov dword [ebp - 0xd74], ecx
mov dword [ebp - 0xcc0], ecx
mov dword [ebp - 0xcbc], 2
fchs
mov dword [ebp - 0xda4], ecx
faddp st(1)
mov dword [ebp - 0xd7c], 0xc
fdivp st(1)
fstp qword [esp]
push eax
push 0x101369c
lea eax, [ebp - 0xda4]
push eax
push dword [ebp - 0xc60]
lea eax, [ebp - 0xd7c]
push dword [ebp - 0xc64]
push eax
push 0x10135f0
push dword [ebp - 0xc7c]
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bd3e4
add eax, 0x90
mov dword [ebp - 0xc7c], eax
jmp 0x10bd3eb
and dword [ebp - 0xc7c], 0
mov edx, dword [esi + 0xc0]
push 0x10135e4
lea eax, [ebp - 0xdbc]
push eax
mov eax, dword [ebp - 0xc78]
mov dword [ebp - 0xcc0], eax
mov eax, dword [ebp - 0xc74]
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
xor ecx, ecx
and eax, ebx
mov dword [ebp - 0xcbc], eax
fild qword [ebp - 0xcc0]
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0xc64], ecx
fild qword [ebp - 0xc64]
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
and eax, ebx
fchs
mov dword [ebp - 0xcbc], eax
faddp st(1)
mov dword [ebp - 0xcc0], edx
mov dword [ebp - 0xc64], ecx
push ecx
fmul qword [0x1009a18]
push ecx
fild qword [ebp - 0xcc0]
lea eax, [ebp - 0xcec]
fild qword [ebp - 0xc64]
mov dword [ebp - 0xdbc], ecx
mov dword [ebp - 0xcec], ecx
mov dword [ebp - 0xce8], 2
fchs
mov dword [ebp - 0xcfc], ecx
faddp st(1)
mov dword [ebp - 0xd04], 0xc
fdivp st(1)
fstp qword [esp]
push eax
push 0x101369c
lea eax, [ebp - 0xcfc]
push eax
push dword [ebp - 0xc74]
lea eax, [ebp - 0xd04]
push dword [ebp - 0xc78]
push eax
push 0x1013590
push dword [ebp - 0xc7c]
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bd52e
add eax, 0x90
mov dword [ebp - 0xc7c], eax
jmp 0x10bd535
and dword [ebp - 0xc7c], 0
mov edx, dword [ebp - 0xca0]
push 0x10136a0
xor eax, eax
lea ecx, [ebp - 0xd0c]
push ecx
mov ecx, dword [ebp - 0xca4]
mov dword [ebp - 0xc60], edx
and dword [ebp - 0xc60], ebx
mov dword [ebp - 0xc74], edx
and dword [ebp - 0xc74], edi
mov edx, dword [esi + 0xa0]
mov dword [ebp - 0xc78], eax
mov dword [ebp - 0xc64], ecx
fild qword [ebp - 0xc64]
and dword [ebp - 0xc64], 0
fild qword [ebp - 0xc78]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xe08], eax
mov eax, dword [esi + 0xa4]
fchs
mov dword [ebp - 0xc60], eax
and dword [ebp - 0xc60], edi
faddp st(1)
and eax, ebx
mov dword [ebp - 0xce8], eax
fmul qword [0x1009a18]
mov dword [ebp - 0xcec], edx
fild qword [ebp - 0xcec]
push ecx
fild qword [ebp - 0xc64]
push ecx
lea eax, [ebp - 0xe08]
mov dword [ebp - 0xe04], 2
fchs
mov dword [ebp - 0xd14], 0xc
faddp st(1)
fdivp st(1)
fstp qword [esp]
push eax
push 0x101369c
push dword [ebp - 0xca0]
lea eax, [ebp - 0xd14]
push ecx
push eax
push 0x1013538
push dword [ebp - 0xc7c]
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010845db
pop ecx
pop ecx
push eax
call fcn.0107ba2f
pop ecx
pop ecx
mov ecx, eax
call fcn.01084a98
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
pop ecx
pop ecx
test eax, eax
je 0x10bd65d
add eax, 0x90
jmp 0x10bd65f
xor eax, eax
and dword [ebp - 0xcf0], 0
push 0xc
pop ebx
mov edi, 0x1003670
push edi
lea ecx, [ebp - 0xcf0]
push ecx
push dword [esi + 0x8c]
lea ecx, [ebp - 0xca0]
push dword [esi + 0x88]
mov dword [ebp - 0xca0], ebx
push ecx
push 0x10134e0
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
mov ecx, eax
call fcn.01090a2b
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
cmp byte [esi + 0xd8], 0
pop ecx
pop ecx
mov ecx, 0x10134d4
jne 0x10bd6ce
mov ecx, 0x10134cc
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x10bd6dc
add eax, 0x90
jmp 0x10bd6de
xor eax, eax
and dword [ebp - 0xc90], 0
push edi
lea edx, [ebp - 0xc90]
push edx
push ecx
lea ecx, [ebp - 0xc68]
push ecx
push 0x1013478
push eax
mov dword [ebp - 0xc68], ebx
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010b9560
pop ecx
pop ecx
push eax
call fcn.01084781
pop ecx
pop ecx
push eax
call fcn.010915a9
pop ecx
pop ecx
push eax
call fcn.010845db
mov eax, dword [esi + 0x6c]
add eax, 0x90
push eax
call fcn.010855f6
add esp, 0xc
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x8000
xor ebx, ebx
push ebx
push dword [ebp - 0xc98]
call dword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
jne 0x10bd7fa
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x220]
call fcn.0107b963
push dword [esi]
push 0x276
push 0x46e
push 0x10141a0
call fcn.010b32f7
add esp, 0x10
push dword [esi + 0x68]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x70]
cmp eax, ebx
je 0x10bd7a1
add eax, 0x90
jmp 0x10bd7a3
xor eax, eax
lea ecx, [ebp - 0x220]
push ecx
push 0xa
push edi
push eax
call fcn.01084781
pop ecx
pop ecx
mov ecx, eax
call fcn.01084b7d
push eax
call fcn.01084781
push eax
call fcn.010855f6
add esp, 0xc
push dword [esi + 0x68]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0x220]
push eax
push edi
push 5
lea ecx, [esi + 0x13c]
call fcn.010bade6
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x20]
jmp 0x10bd9a3
mov eax, dword [esi + 0x74]
mov eax, dword [eax + 0x1c4]
test eax, eax
je 0x10bd816
push ebx
push dword [esi]
push 0x277
push 0x481
jmp 0x10bd830
mov eax, dword [esi + 0x74]
mov eax, dword [eax + 0x1c0]
test eax, eax
jle 0x10bd852
push ebx
push dword [esi]
push 0x278
push 0x486
push 0x10141a0
lea edi, [esi + 0x13c]
call fcn.010b32f7
add esp, 0x10
push eax
push 5
mov ecx, edi
call fcn.01084dca
jmp 0x10bd8d6
cmp byte [ebp - 0xc6d], 0
je 0x10bd8be
push dword [esi]
push 0x297
push 0x48f
push 0x10141a0
call fcn.010b32f7
push eax
push 0x1235b98
call fcn.01084781
push eax
call fcn.010855f6
lea edi, [esi + 0x13c]
mov byte [esi + 0x11c], 1
add esp, 0x1c
lea ecx, [edi + 4]
mov dword [edi], 6
call fcn.010831c6
mov byte [edi + 8], 0
mov eax, dword [esi + 0x74]
mov eax, dword [eax + 0x14]
mov ecx, dword [eax + 0x2ac]
push 2
push 0x614
call fcn.010aaee2
jmp 0x10bd8d6
lea edi, [esi + 0x13c]
lea ecx, [edi + 4]
mov dword [edi], 6
call fcn.010831c6
mov byte [edi + 8], 0
mov edi, dword [edi]
sub edi, 6
neg edi
sbb edi, edi
and edi, 0xd
push edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
jmp 0x10bd9a3
call fcn.010aa70f
ret