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

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
cmp ebx, 0x7fffffff
ja 0x42cec5
test ebx, ebx
je 0x42cec5
mov esi, dword [ebp + 8]
mov eax, 0x40000000
cdq
idiv dword [esi + 0x34]
inc eax
cmp ebx, eax
je 0x42cec5
mov eax, dword [ebp + 0x10]
and dword [eax], 0
mov eax, dword [esi + 0x14]
test eax, eax
je 0x42cb9c
cmp eax, 0xd
jne 0x42cec8
cmp dword [esi + 0x40], 0
jne 0x42cc61
cmp byte [esi + 0x10], 0
jne 0x42cc61
cmp byte [esi + 3], 0
jne 0x42cbd2
push 1
push esi
call fcn.0042c47d
pop ecx
pop ecx
test eax, eax
je 0x42cbd2
push eax
push esi
call fcn.0042ba40
pop ecx
pop ecx
jmp 0x42cec8
push esi
call fcn.0042b6e4
pop ecx
test eax, eax
je 0x42cc58
push 4
push dword [esi + 0x5c]
call fcn.0042a791
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x42cc04
push esi
call fcn.0042c3be
push edi
push esi
call fcn.0042ba40
add esp, 0xc
jmp 0x42cec8
lea eax, [esi + 0x60]
push eax
push dword [esi + 0x54]
mov byte [esi + 0xa], 4
call fcn.0042b173
pop ecx
pop ecx
push esi
test eax, eax
je 0x42cc28
call fcn.0042c3be
pop ecx
push 5
jmp 0x42cec7
xor eax, eax
mov word [esi], 1
mov dword [esi + 0x88], eax
mov dword [esi + 0x8c], eax
mov byte [esi + 0x11], al
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], eax
call fcn.0042bc06
pop ecx
test eax, eax
jne 0x42cbc4
and dword [ebp + 0xc], 0
xor eax, eax
inc eax
jmp 0x42cc89
push ebx
push esi
call fcn.0042bac1
mov edi, eax
xor eax, eax
pop ecx
inc eax
cmp byte [esi + 0x10], 0
pop ecx
mov dword [ebp + 0xc], edi
je 0x42cc81
cmp byte [esi + 0xa], 0
jne 0x42cc81
mov byte [esi + 0xa], al
test edi, edi
jne 0x42cea2
mov ecx, dword [esi + 0x38]
cmp ecx, dword [esi + 0x44]
jl 0x42ccbb
cmp dword [esi + 0x6c], 0
je 0x42ccbb
cmp byte [esi + 0x10], 0
jne 0x42ccbb
lea ecx, [ebp + 0xc]
push ecx
push eax
push esi
call fcn.0042bf34
add esp, 0xc
test eax, eax
jne 0x42cec8
mov edi, dword [ebp + 0xc]
jmp 0x42cd53
mov eax, dword [esi + 0xc4]
cmp ecx, eax
jl 0x42ccea
mov ecx, 0x100
cmp eax, ecx
jl 0x42ccd1
lea ecx, [eax + eax]
push ecx
push esi
call fcn.0042c14b
cmp dword [esi + 0xc4], 0
pop ecx
pop ecx
jne 0x42ccea
push 7
jmp 0x42cec7
movzx ecx, byte [esi + 0x10]
mov eax, dword [esi + 0x34]
push 1
lea ecx, [eax + ecx*8]
mov eax, dword [esi + 0x30]
add eax, 0x3c
add eax, ecx
push eax
call fcn.004395e9
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x42cce3
push 0x38
push 0
push edi
call fcn.004bc640
add esp, 0xc
cmp byte [esi + 0x10], 0
je 0x42cd39
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
push 8
add ecx, edi
add eax, 0x38
add eax, ecx
push 0
push eax
call fcn.004bc640
add esp, 0xc
mov dword [edi], esi
mov eax, dword [esi + 0x78]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x3c]
inc dword [esi + 0x38]
mov dword [esi + 0x78], edi
cmp dword [esi + 0x38], eax
jle 0x42cd53
inc eax
mov dword [esi + 0x3c], eax
mov dword [edi + 4], ebx
mov eax, dword [esi + 0x48]
test eax, eax
je 0x42cd7f
cmp ebx, dword [esi + 0x1c]
jg 0x42cd7f
xor edx, edx
mov ecx, ebx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [esi + 0x48]
mov eax, ebx
shr eax, 3
test byte [eax + ecx], dl
setne al
mov byte [edi + 0x24], al
jmp 0x42cd83
mov byte [edi + 0x24], 0
mov byte [edi + 0x27], 0
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x42cdb2
cmp ebx, dword [esi + 0x20]
jg 0x42cdb2
xor edx, edx
mov ecx, ebx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [esi + 0x4c]
mov eax, ebx
shr eax, 3
test byte [eax + ecx], dl
je 0x42cdb2
push edi
call fcn.0042b849
jmp 0x42cdb8
push edi
call fcn.0042b874
pop ecx
push edi
call fcn.0042b72b
xor eax, eax
inc eax
mov word [edi + 0x2a], ax
inc dword [esi + 0x40]
cmp dword [esi + 0x30], 0
pop ecx
jle 0x42cde6
push dword [esi + 0x30]
mov eax, dword [esi + 0x34]
add eax, 0x38
add eax, edi
push 0
push eax
call fcn.004bc640
add esp, 0xc
cmp dword [esi + 0x14], 0
je 0x42cdfe
lea eax, [edi + 0x38]
push eax
call fcn.0042d953
mov eax, dword [esi + 0x14]
pop ecx
jmp 0x42cec8
push esi
call fcn.0042d33e
pop ecx
cmp eax, ebx
jl 0x42ce67
cmp byte [esi + 0x10], 0
jne 0x42ce67
mov eax, dword [esi + 0x34]
cdq
push edx
push eax
lea ecx, [ebx - 1]
push 0
push ecx
call fcn.004c2080
push edx
push eax
push dword [esi + 0x5c]
call fcn.0042a7ce
add esp, 0xc
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x42ce4d
push dword [esi + 0x34]
lea eax, [edi + 0x38]
push eax
push dword [esi + 0x5c]
call fcn.0042a7b7
add esp, 0xc
mov dword [ebp + 0xc], eax
test eax, eax
je 0x42ce78
cmp eax, 0x20a
je 0x42ce78
and dword [edi + 4], 0
lea eax, [edi + 0x38]
push eax
call fcn.0042d953
mov eax, dword [ebp + 0xc]
pop ecx
jmp 0x42cec8
push dword [esi + 0x34]
lea eax, [edi + 0x38]
push 0
push eax
call fcn.004bc640
add esp, 0xc
mov ecx, dword [esi + 0xc4]
mov eax, dword [esi + 0xc8]
dec ecx
and ecx, ebx
mov eax, dword [eax + ecx*4]
mov dword [edi + 8], eax
mov eax, dword [esi + 0xc8]
mov dword [eax + ecx*4], edi
mov eax, dword [edi + 8]
test eax, eax
je 0x42ceb9
mov dword [eax + 0xc], edi
jmp 0x42ceb9
movzx eax, word [edi + 0x2a]
test ax, ax
jne 0x42ceb4
push edi
call fcn.0042b666
pop ecx
jmp 0x42ceb9
inc eax
mov word [edi + 0x2a], ax
mov ecx, dword [ebp + 0x10]
lea eax, [edi + 0x38]
mov dword [ecx], eax
xor eax, eax
jmp 0x42cec8
push 0xb
pop eax
pop edi
pop esi
pop ebx
pop ebp
ret