Function at 0x10062470
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x1016f3d3
mov eax, dword fs:[0]
push eax
sub esp, 0x8c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101b01e4]
xor eax, esp
push eax
lea eax, [esp + 0xa0]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x14], esi
xor edi, edi
cmp dword [esi + 0x40], edi
jne 0x100624b3
cmp dword [esi + 0x44], edi
je 0x100628cc
lea ecx, [esp + 0x18]
call fcn.10056470
mov dword [esp + 0x1c], eax
mov byte [eax + 0x25], 1
mov eax, dword [esp + 0x1c]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x1c]
mov dword [eax], eax
mov eax, dword [esp + 0x1c]
mov dword [eax + 8], eax
mov dword [esp + 0x20], edi
lea eax, [esi + 8]
mov dword [esp + 0x6c], eax
add eax, 4
push eax
mov dword [esp + 0xac], edi
xor ebp, ebp
mov dword [esp + 0x6c], 0x1018442c
mov dword [esp + 0x38], eax
call dword [sym.imp.KERNEL32.DLL_EnterCriticalSection]
mov eax, dword [esi + 0x28]
lea ebx, [esi + 0x24]
mov esi, dword [eax]
mov byte [esp + 0xa8], 1
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x3c], eax
mov edi, edi
test ebx, ebx
je 0x1006252f
mov eax, dword [esp + 0x14]
add eax, 0x24
cmp ebx, eax
je 0x10062534
call fcn.10149775
cmp esi, dword [esp + 0x3c]
je 0x100625d6
test ebx, ebx
jne 0x10062547
call fcn.10149775
cmp esi, dword [ebx + 4]
jne 0x10062551
call fcn.10149775
lea ecx, [esi + 0x28]
mov dword [esp + 0x2c], ecx
call fcn.10063b30
cmp esi, dword [ebx + 4]
mov dword [esp + 0x40], eax
jne 0x1006256b
call fcn.10149775
mov ecx, dword [esp + 0x40]
mov edx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
mov dword [esp + 0x50], ecx
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x54], edx
mov edx, dword [esi + 0x1c]
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x50]
mov dword [esp + 0x60], edx
push ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esi + 0x20]
lea edx, [esp + 0x74]
push edx
lea ecx, [esp + 0x20]
mov dword [esp + 0x6c], eax
call fcn.10060350
cmp esi, dword [ebx + 4]
jne 0x100625b3
call fcn.10149775
mov ecx, dword [esp + 0x2c]
call fcn.10063b40
add edi, eax
lea ecx, [esp + 0x24]
adc ebp, edx
call fcn.1005dfe0
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
jmp 0x10062520
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebx + 0x44]
mov esi, dword [ebx + 0x40]
mov edx, edi
add edx, dword [esp + 0xb0]
mov eax, ebp
adc eax, dword [esp + 0xb4]
cmp eax, ecx
jg 0x10062638
jl 0x100625fc
cmp edx, esi
jae 0x10062638
mov eax, dword [esp + 0x34]
push eax
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov esi, ecx
push edx
push esi
lea ecx, [esp + 0x58]
push ecx
mov ecx, esi
mov dword [esp + 0xbc], 0xffffffff
call fcn.1000e990
mov edx, dword [esp + 0x1c]
push edx
jmp 0x100628c4
mov eax, dword [esp + 0x1c]
sub edi, esi
sbb ebp, ecx
add dword [esp + 0xb0], edi
mov ecx, dword [eax]
lea edx, [esp + 0x18]
adc dword [esp + 0xb4], ebp
mov esi, edx
mov edi, ecx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], edi
mov dword [esp + 0x4c], eax
test esi, esi
je 0x10062670
lea eax, [esp + 0x18]
cmp esi, eax
je 0x10062675
call fcn.10149775
cmp edi, dword [esp + 0x4c]
je 0x1006288c
test esi, esi
jne 0x10062688
call fcn.10149775
cmp edi, dword [esi + 4]
jne 0x10062692
call fcn.10149775
add edi, 0x10
push edi
lea ecx, [ebx + 0x24]
call fcn.1005e3f0
lea esi, [ebx + 0x24]
test esi, esi
mov ebp, eax
mov dword [esp + 0x44], ebp
jne 0x100626b0
call fcn.10149775
mov dword [esp + 0x40], esi
mov esi, dword [esi + 4]
cmp ebp, esi
je 0x100626ea
xor eax, eax
lea ecx, [ecx]
mov cl, byte [eax + edi]
mov dl, byte [eax + ebp + 0x10]
cmp cl, dl
ja 0x10062806
jb 0x100626ea
cmp eax, 0x13
jne 0x100626e2
mov cl, byte [edi + 0x13]
cmp cl, byte [ebp + 0x23]
je 0x10062806
add eax, 1
cmp eax, 0x14
jb 0x100626c0
lea eax, [ebx + 0x24]
lea edx, [esp + 0x38]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x14], edx
mov eax, edx
mov edi, dword [eax]
test edi, edi
mov esi, dword [eax + 4]
jne 0x1006270d
call fcn.10149775
cmp esi, dword [edi + 4]
jne 0x10062717
call fcn.10149775
lea ecx, [esi + 0x28]
call fcn.10063b40
sub dword [esp + 0xb0], eax
sbb dword [esp + 0xb4], edx
cmp esi, dword [edi + 4]
jne 0x10062737
call fcn.10149775
lea eax, [esp + 0x7c]
push eax
lea ecx, [esi + 0x28]
call fcn.100371f0
mov ebp, eax
cmp esi, dword [edi + 4]
mov byte [esp + 0xa8], 2
jne 0x10062758
call fcn.10149775
lea ecx, [esp + 0x50]
push ecx
lea ecx, [esi + 0x28]
call fcn.10063b60
push eax
push ebp
mov ecx, ebx
call fcn.1005ecb0
cmp dword [esp + 0x94], 0x10
mov byte [esp + 0xa8], 1
jb 0x10062790
mov edx, dword [esp + 0x80]
push edx
call fcn.10149646
add esp, 4
cmp esi, dword [edi + 4]
jne 0x1006279a
call fcn.10149775
lea eax, [esp + 0x7c]
push eax
lea ecx, [esi + 0x28]
call fcn.10063d10
mov edi, eax
lea esi, [ebx + 0x30]
push edi
mov ecx, esi
mov byte [esp + 0xac], 3
call fcn.1005eb10
test esi, esi
mov ebp, eax
jne 0x100627c7
call fcn.10149775
push edi
mov ecx, esi
call fcn.1005ea70
test esi, esi
mov edi, eax
jne 0x100627da
call fcn.10149775
mov eax, esi
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], edi
test eax, eax
je 0x100627ec
cmp eax, esi
je 0x100627f1
call fcn.10149775
cmp dword [esp + 0x28], ebp
je 0x10062813
lea ecx, [esp + 0x24]
call fcn.1005e1a0
mov eax, dword [esp + 0x24]
jmp 0x100627e4
lea eax, [esp + 0x40]
mov dword [esp + 0x14], eax
jmp 0x100626ff
push ebp
push esi
push edi
push esi
lea ecx, [esp + 0xa8]
push ecx
mov ecx, esi
call fcn.10061a60
cmp dword [esp + 0x94], 0x10
mov byte [esp + 0xa8], 1
jb 0x10062848
mov edx, dword [esp + 0x80]
push edx
call fcn.10149646
add esp, 4
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
lea eax, [esp + 0x78]
push eax
lea ecx, [ebx + 0x24]
call fcn.1005f280
cmp dword [esp + 0xb4], 0
jl 0x1006288c
jg 0x10062876
cmp dword [esp + 0xb0], 0
jb 0x1006288c
lea ecx, [esp + 0x2c]
call fcn.1000cda0
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x10062664
mov ecx, dword [esp + 0x34]
push ecx
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
push eax
lea ecx, [esp + 0x1c]
push ecx
push edx
mov esi, ecx
push esi
lea edx, [esp + 0x80]
push edx
mov dword [esp + 0xbc], 0xffffffff
call fcn.1000e990
mov eax, dword [esp + 0x1c]
push eax
call fcn.10149646
add esp, 4
mov ecx, dword [esp + 0xa0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x98
ret 8