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

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0xc4
push ebx
push esi
push edi
push dword [ebp + 0x7c]
mov esi, ecx
push dword [ebp + 0x78]
mov byte [esi + 0x2e], 1
call fcn.1001bb87
mov ecx, esi
call fcn.1001c824
xor ebx, ebx
push ebx
mov ecx, esi
mov dword [esi + 0x78], eax
mov byte [esi + 0x7c], 1
call fcn.10019526
lea ecx, [ebp + 0x58]
mov edi, eax
call fcn.10017dc0
push esi
lea ecx, [ebp - 0x1c]
call fcn.10017e4a
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp - 0x1c]
call fcn.1001d667
push esi
lea ecx, [ebp - 0x54]
call fcn.10017e4a
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp - 0x54]
call fcn.1001d667
push esi
lea ecx, [ebp + 0x1c]
call fcn.10017e4a
lea eax, [ebp + 0x1c]
push eax
mov ecx, esi
call fcn.1001e4ff
push ebx
push edi
mov ecx, esi
call fcn.10019591
lea ecx, [ebp + 0x1c]
call fcn.10018eee
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
call fcn.1001df4c
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x1c]
call fcn.1001df4c
mov eax, dword [esi + 0x68]
cmp eax, ebx
je 0x1001e60c
push eax
mov dword [esi + 0x68], ebx
call fcn.10018424
pop ecx
xor edi, edi
cmp dword [esi + 0xc], edi
jle 0x1001e672
lea ecx, [esi + 8]
call fcn.1001860a
mov eax, dword [eax + ebx*8 + 4]
cmp eax, 0xfffffffd
je 0x1001e64a
cmp eax, 0xfffffffe
jne 0x1001e66a
lea ecx, [esi + 8]
lea edi, [esi + 0x1c]
call fcn.1001860a
mov ecx, dword [edi]
mov dword [eax + ebx*8 + 4], ecx
push edi
lea ecx, [esi + 0x14]
call fcn.1003116e
inc dword [edi]
inc dword [esi + 0x18]
jmp 0x1001e66a
cmp byte [esi + 0x34], 0
je 0x1001e65b
mov edi, dword [esi + 0x1c]
lea eax, [edi + 1]
mov dword [esi + 0x1c], eax
jmp 0x1001e65e
or edi, 0xffffffff
lea ecx, [esi + 8]
call fcn.1001860a
mov dword [eax + ebx*8 + 4], edi
inc ebx
cmp ebx, dword [esi + 0xc]
jl 0x1001e613
xor edi, edi
cmp dword [esi + 0x18], edi
jne 0x1001e68a
cmp dword [esi + 0x38], edi
jne 0x1001e68a
lea ecx, [esi + 8]
mov dword [esi + 0xc], edi
mov dword [esi + 0x1c], edi
call fcn.10018579
mov eax, dword [esi + 0x38]
sub eax, dword [esi + 0x18]
mov dword [ebp + 0x7c], edi
test eax, eax
jle 0x1001e6b5
lea ebx, [esi + 0x14]
lea edi, [esi + 0x1c]
push edi
mov ecx, ebx
call fcn.1003116e
inc dword [edi]
mov eax, dword [esi + 0x38]
sub eax, dword [esi + 0x18]
inc dword [ebp + 0x7c]
cmp dword [ebp + 0x7c], eax
jl 0x1001e69d
mov eax, dword [esi + 0x74]
cmp dword [eax + 8], 0
je 0x1001e6f5
or esi, 0xffffffff
lea ecx, [ebp + 0x1c]
call fcn.10017c3c
lea ecx, [ebp - 0x54]
call fcn.10017c3c
lea ecx, [ebp - 0x1c]
call fcn.10017c3c
lea ecx, [ebp + 0x64]
call fcn.10017978
lea ecx, [ebp + 0x5c]
call fcn.10017978
pop edi
mov eax, esi
pop esi
pop ebx
add ebp, 0x70
leave
ret 8
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x20]
cmp dword [ecx + 0x3c], 0
setne cl
mov byte [esi + 0x2c], cl
test cl, cl
je 0x1001e72a
mov edi, dword [eax + 0x20]
mov ecx, dword [edi + 4]
jmp 0x1001e720
mov edx, dword [ecx - 4]
test edx, edx
js 0x1001e726
test dl, 2
je 0x1001e726
mov ecx, dword [ecx + 4]
cmp ecx, edi
jne 0x1001e711
jmp 0x1001e72a
mov byte [esi + 0x2c], 0
mov eax, dword [eax + 8]
test eax, eax
jle 0x1001e79f
and dword [ebp + 0x7c], 0
mov dword [ebp + 0x6c], eax
lea ecx, [esi + 4]
call fcn.1001cbd5
add eax, dword [ebp + 0x7c]
lea ebx, [eax + 0x10]
mov eax, dword [ebx]
cmp dword [eax + 0x3c], 0
je 0x1001e796
lea eax, [ebp + 0x78]
push eax
mov ecx, ebx
call fcn.10006c94
lea eax, [ebp + 0x68]
push eax
mov ecx, ebx
call fcn.10006cb7
mov edi, dword [ebp + 0x78]
cmp edi, dword [eax]
je 0x1001e796
cmp dword [edi - 4], 0
jne 0x1001e781
push edi
lea eax, [ebp + 0x54]
push eax
mov ecx, ebx
call fcn.10018454
mov edi, dword [eax]
jmp 0x1001e784
mov edi, dword [edi + 4]
lea eax, [ebp + 0x68]
push eax
mov ecx, ebx
call fcn.10006cb7
cmp edi, dword [eax]
jne 0x1001e76b
mov dword [ebp + 0x78], edi
add dword [ebp + 0x7c], 0x14
dec dword [ebp + 0x6c]
jne 0x1001e738
mov esi, dword [esi + 0x58]
jmp 0x1001e6c1