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

Disassembly:
sub esp, 0xa4
push ebx
push ebp
mov ebp, ecx
push esi
push edi
lea eax, [ebp + 0x30]
push eax
lea ecx, [esp + 0x4c]
mov dword [esp + 0x18], ebp
call fcn.00419d50
mov edx, dword [ebp + 0x2c]
mov eax, dword [esp + 0xb8]
cmp eax, edx
jb 0x42d800
cmp byte [esp + 0x61], 0
je 0x42d7f1
mov esi, dword [esp + 0x5c]
mov ecx, dword [esi + 8]
push 0
push ecx
call dword [0x1005b0ac]
mov edx, dword [esi + 0xc]
test edx, edx
lea eax, [esi + 0xc]
jle 0x42d7f1
push eax
call dword [0x1005b098]
mov eax, dword [esi + 0x10]
push 0
push 1
push eax
call dword [0x1005b0a8]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa4
ret 0xc
mov ecx, dword [esp + 0xc0]
test ecx, ecx
je 0x42d7bb
add ecx, eax
cmp ecx, edx
jae 0x42d817
mov dword [esp + 0x20], ecx
jmp 0x42d81d
mov dword [esp + 0x20], edx
mov ecx, edx
mov edi, eax
mov ebx, ecx
push 0
shr edi, 0xe
shr ebx, 0xe
sub esp, 8
cmp edi, ebx
jne 0x42d8c1
sub ecx, eax
mov esi, eax
mov eax, esp
mov ebx, ecx
lea ecx, [esp + 0x80]
and esi, 0x3fff
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0046bb10
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x78]
push edx
push edi
mov ecx, ebp
call fcn.0042d3f0
mov ecx, dword [esp + 0x74]
lea eax, [esp + 0x84]
push eax
call fcn.0042c530
mov ecx, dword [eax]
mov edx, dword [esp + 0xbc]
push ebx
add ecx, esi
push ecx
push edx
call fcn.0041a4c0
add esp, 0xc
lea ecx, [esp + 0x84]
call fcn.0042c2d0
lea ecx, [esp + 0x74]
call fcn.0042c5d0
lea ecx, [esp + 0x48]
call fcn.00419cd0
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa4
ret 0xc
and eax, 0x3fff
mov ebp, eax
mov eax, esp
mov esi, 0x4000
lea ecx, [esp + 0x34]
sub esi, ebp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0046bb10
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x1c]
push edi
call fcn.0042d3f0
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0xa4]
push edx
call fcn.0042c530
mov eax, dword [eax]
add eax, ebp
mov ebp, dword [esp + 0xbc]
push esi
push eax
push ebp
call fcn.0041a4c0
add esp, 0xc
lea ecx, [esp + 0xa4]
call fcn.0042c2d0
add ebp, esi
cmp dword [esp + 0x18], 0
mov dword [esp + 0x10], esi
jne 0x42d942
cmp dword [esp + 0x1c], 0
je 0x42d967
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x98]
push edx
add ecx, 0x10
call fcn.0042ced0
lea ecx, [esp + 0x94]
call fcn.0042c5d0
add edi, 1
cmp edi, ebx
jae 0x42da1d
sub ebx, edi
mov eax, ebx
shl eax, 0xe
add eax, esi
mov dword [esp + 0x10], eax
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x1c]
add ecx, 0x10
call fcn.0042ced0
push eax
lea ecx, [esp + 0x2c]
call fcn.0042c570
lea ecx, [esp + 0x38]
call fcn.0042c3f0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
xor esi, esi
cmp eax, esi
jne 0x42d9ba
cmp ecx, esi
je 0x42d9c1
push ecx
push eax
call fcn.00418e90
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx + 0x10]
cmp eax, esi
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x38], esi
jne 0x42d9df
cmp ecx, esi
je 0x42d9ec
push ecx
push eax
mov esi, eax
mov edi, ecx
call fcn.00418e70
jmp 0x42d9f0
xor edi, edi
xor eax, eax
push 0x4000
push eax
push ebp
call fcn.0041a4c0
add esp, 0xc
test esi, esi
jne 0x42da07
test edi, edi
je 0x42da0e
push edi
push esi
call fcn.00418e90
add ebp, 0x4000
sub ebx, 1
jne 0x42d97f
mov eax, dword [esp + 0x20]
and eax, 0x3fff
mov ebx, eax
je 0x42dab1
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x68]
push eax
add ecx, 0x10
call fcn.0042ced0
push eax
lea ecx, [esp + 0x2c]
call fcn.0042c570
lea ecx, [esp + 0x64]
call fcn.0042c3f0
mov eax, dword [esp + 0x6c]
test eax, eax
mov ecx, dword [esp + 0x70]
jne 0x42da67
test ecx, ecx
je 0x42da6e
push ecx
push eax
call fcn.00418e90
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx + 0x10]
test eax, eax
mov ecx, dword [ecx + 0x14]
jne 0x42da80
test ecx, ecx
je 0x42da8d
push ecx
push eax
mov esi, eax
mov edi, ecx
call fcn.00418e70
jmp 0x42da93
xor esi, esi
xor edi, edi
xor eax, eax
push ebx
push eax
push ebp
call fcn.0041a4c0
add esp, 0xc
test esi, esi
jne 0x42daa6
test edi, edi
je 0x42daad
push edi
push esi
call fcn.00418e90
add dword [esp + 0x10], ebx
lea ecx, [esp + 0x28]
call fcn.0042c3f0
mov eax, dword [esp + 0x30]
test eax, eax
mov ecx, dword [esp + 0x34]
jne 0x42daca
test ecx, ecx
je 0x42dad1
push ecx
push eax
call fcn.00418e90
cmp byte [esp + 0x61], 0
je 0x42db07
mov esi, dword [esp + 0x5c]
mov ecx, dword [esi + 8]
push 0
push ecx
call dword [0x1005b0ac]
mov edx, dword [esi + 0xc]
test edx, edx
lea eax, [esi + 0xc]
jle 0x42db07
push eax
call dword [0x1005b098]
mov eax, dword [esi + 0x10]
push 0
push 1
push eax
call dword [0x1005b0a8]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa4
ret 0xc