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

Disassembly:
sub esp, 0x14
push ebx
push ebp
push esi
mov esi, ecx
push edi
xor edi, edi
mov edx, dword [esi + 0x60]
mov eax, dword [esi + 0x5c]
mov ecx, dword [esi + 0x159c]
sub eax, edx
and eax, 0x3fffff
mov dword [esp + 0x10], edi
test ecx, ecx
jle 0x1007e8c1
mov ecx, dword [esi + 0x15a0]
mov ecx, dword [ecx + edi*4]
test ecx, ecx
je 0x1007e8ae
mov bl, byte [ecx + 0x3c]
test bl, bl
je 0x1007e74b
mov byte [ecx + 0x3c], 0
jmp 0x1007e8ae
mov ebp, dword [ecx + 0x30]
mov ebx, dword [ecx + 0x34]
mov ecx, ebp
mov dword [esp + 0x18], ebx
sub ecx, edx
and ecx, 0x3fffff
cmp ecx, eax
jae 0x1007e8ae
cmp edx, ebp
je 0x1007e788
push ebp
push edx
mov ecx, esi
call fcn.1007e600
test eax, eax
jne 0x1007e8d0
mov eax, dword [esi + 0x5c]
mov edx, ebp
sub eax, ebp
and eax, 0x3fffff
cmp ebx, eax
ja 0x1007e8d8
add ebx, ebp
and ebx, 0x3fffff
cmp ebp, ebx
mov dword [esp + 0x14], ebx
jb 0x1007e7d8
test ebx, ebx
je 0x1007e7d8
mov edx, dword [esi + 0x58]
mov ebx, 0x400000
sub ebx, ebp
add edx, ebp
lea edi, [esi + 0x1554]
push ebx
push edx
push 0
mov ecx, edi
call fcn.100821f0
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 0x58]
push eax
push ecx
push ebx
mov ecx, edi
call fcn.100821f0
mov ebx, dword [esp + 0x14]
jmp 0x1007e7f2
mov eax, dword [esi + 0x58]
mov edx, dword [esp + 0x18]
add eax, ebp
lea edi, [esi + 0x1554]
push edx
push eax
push 0
mov ecx, edi
call fcn.100821f0
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.1007e650
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x159c]
inc eax
cmp eax, ecx
jge 0x1007e86e
mov ebx, eax
mov ecx, dword [esi + 0x15a0]
mov eax, dword [ecx + ebx*4]
test eax, eax
je 0x1007e86a
cmp dword [eax + 0x30], ebp
jne 0x1007e86a
mov ecx, dword [esp + 0x20]
mov edx, dword [eax + 0x34]
cmp edx, ecx
jne 0x1007e874
mov dl, byte [eax + 0x3c]
test dl, dl
jne 0x1007e874
mov edx, dword [edi]
mov eax, dword [esp + 0x1c]
add edx, eax
push ecx
push edx
push 0
mov ecx, edi
call fcn.100821f0
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
inc eax
push ecx
push eax
mov ecx, esi
mov dword [esp + 0x18], eax
inc ebx
call fcn.1007e650
cmp ebx, dword [esi + 0x159c]
jl 0x1007e814
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
jmp 0x1007e878
mov ebx, dword [esp + 0x14]
mov edx, dword [edi]
mov ebp, dword [esp + 0x1c]
add edx, ebp
push ecx
push edx
mov ecx, esi
call fcn.1007e580
mov eax, dword [esp + 0x20]
mov ecx, dword [esi + 0x78]
add ecx, eax
mov eax, dword [esi + 0x5c]
mov edi, dword [esp + 0x10]
mov dword [esi + 0x78], ecx
mov ebp, dword [esi + 0x7c]
mov edx, ebx
adc ebp, 0
sub eax, ebx
mov dword [esi + 0x7c], ebp
and eax, 0x3fffff
mov ecx, dword [esi + 0x159c]
inc edi
cmp edi, ecx
mov dword [esp + 0x10], edi
jl 0x1007e72a
mov eax, dword [esi + 0x5c]
mov ecx, esi
push eax
push edx
mov dword [esi + 0x60], eax
call fcn.1007e600
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret
mov eax, dword [esi + 0x159c]
mov ecx, edi
cmp edi, eax
jge 0x1007e907
mov eax, dword [esi + 0x15a0]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x1007e8fc
mov bl, byte [eax + 0x3c]
test bl, bl
je 0x1007e8fc
mov byte [eax + 0x3c], 0
mov eax, dword [esi + 0x159c]
inc ecx
cmp ecx, eax
jl 0x1007e8e4
mov dword [esi + 0x60], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret