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

Disassembly:
sub esp, 0x38
push ebx
mov ebx, dword [esp + 0x40]
push ebp
push esi
mov esi, dword [esp + 0x50]
mov ebx, dword [ebx + 0x10]
push edi
mov edi, dword [esp + 0x50]
imul eax, esi, 0x160c
mov dword [esp + 0x18], ebx
add eax, dword [edi + 0x4c]
mov dword [esp + 0x3c], eax
mov ebp, dword [eax + 0x1a4]
imul eax, ebx, 0x210
inc ebp
mov dword [esp + 0x38], ebp
push eax
call fcn.004a6980
add esp, 4
mov dword [esp + 0x50], eax
test eax, eax
je 0x4b6add
lea eax, [ebx*4]
push eax
call fcn.004a6980
add esp, 4
mov dword [esp + 0x54], eax
test eax, eax
jne 0x4b6ae7
push dword [esp + 0x50]
call fcn.004a6970
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x38
ret
push esi
push edi
push dword [esp + 0x54]
call fcn.004b6940
add esp, 0xc
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4b6b1d
push dword [esp + 0x50]
call fcn.004a6970
mov edx, dword [esp + 0x58]
push edx
call fcn.004a6970
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
mov ecx, dword [esp + 0x50]
xor eax, eax
mov edx, dword [esp + 0x54]
test ebx, ebx
je 0x4b6b3e
jmp 0x4b6b30
mov dword [edx + eax*4], ecx
inc eax
add ecx, 0x210
cmp eax, ebx
jb 0x4b6b30
push edx
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x40]
push eax
push esi
push edi
push dword [esp + 0x78]
call fcn.004b5fe0
mov eax, dword [esp + 0x40]
xor edx, edx
mov esi, dword [esp + 0x44]
add esp, 0x30
imul eax, ebx
mov dword [esi + 4], 0
mov ebx, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x3c]
imul ebx, dword [esp + 0x1c]
mov ecx, dword [eax + 8]
or eax, 0xffffffff
inc ecx
div ecx
mov dword [esp + 0x40], ebx
cmp ebx, eax
ja 0x4b6bbd
imul ecx, ebx
push 2
push ecx
mov dword [esi + 8], ecx
call fcn.004a6950
add esp, 8
mov dword [esi + 4], eax
cmp dword [esi + 4], 0
jne 0x4b6be9
push dword [esp + 0x50]
call fcn.004a6970
push dword [esp + 0x58]
call fcn.004a6970
push ebp
push esi
call fcn.004b7600
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x18]
mov edi, dword [esi + 0xc8]
mov ebp, dword [eax + 0x18]
mov eax, dword [esp + 0x20]
mov dword [esi + 0xcc], eax
mov eax, dword [esp + 0x24]
mov dword [esi + 0xd0], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0xd4], eax
mov eax, dword [esp + 0x2c]
mov dword [esi + 0xd8], eax
mov eax, dword [esp + 0x10]
mov dword [esi + 0xc], ebx
xor ebx, ebx
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x30]
mov dword [esi + 0x18], 1
mov dword [esi + 0x10], eax
test ecx, ecx
je 0x4b6c95
mov eax, dword [esp + 0x54]
xor esi, esi
mov edx, dword [edi + 0xc]
mov ecx, dword [eax + ebx*4]
mov eax, dword [ebp]
mov dword [edi], eax
mov eax, dword [ebp + 4]
mov dword [edi + 4], eax
cmp dword [edi + 8], esi
jbe 0x4b6c82
lea esp, [esp]
mov eax, dword [ecx]
lea ecx, [ecx + 0x10]
mov dword [edx], eax
lea edx, [edx + 0x10]
mov eax, dword [ecx - 0xc]
inc esi
mov dword [edx - 0xc], eax
mov eax, dword [ecx - 8]
mov dword [edx - 8], eax
mov eax, dword [ecx - 4]
mov dword [edx - 4], eax
cmp esi, dword [edi + 8]
jb 0x4b6c60
mov ecx, dword [esp + 0x18]
inc ebx
add edi, 0x10
add ebp, 0x34
cmp ebx, ecx
jb 0x4b6c40
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
cmp eax, 1
jbe 0x4b6d96
lea ebp, [esi + 0x1b8]
lea edx, [eax - 1]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0x4c]
xor ebx, ebx
mov esi, dword [ebp - 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x20]
mov dword [ebp], eax
mov eax, dword [esp + 0x24]
mov dword [ebp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [ebp + 0xc], eax
mov eax, dword [esp + 0x10]
mov dword [ebp - 0xb8], eax
mov eax, dword [esp + 0x30]
mov dword [ebp - 0xbc], eax
mov eax, dword [esp + 0x40]
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0xc0], eax
test ecx, ecx
je 0x4b6d69
mov ebp, dword [esp + 0x44]
nop
mov eax, dword [esp + 0x54]
xor edi, edi
mov ecx, dword [ebp]
mov edx, dword [esi + 0xc]
mov eax, dword [eax + ebx*4]
mov dword [esi], ecx
mov ecx, dword [ebp + 4]
mov dword [esi + 4], ecx
cmp dword [esi + 8], edi
jbe 0x4b6d52
lea esp, [esp]
mov ecx, dword [eax]
lea eax, [eax + 0x10]
mov dword [edx], ecx
lea edx, [edx + 0x10]
mov ecx, dword [eax - 0xc]
inc edi
mov dword [edx - 0xc], ecx
mov ecx, dword [eax - 8]
mov dword [edx - 8], ecx
mov ecx, dword [eax - 4]
mov dword [edx - 4], ecx
cmp edi, dword [esi + 8]
jb 0x4b6d30
mov ecx, dword [esp + 0x18]
inc ebx
add esi, 0x10
add ebp, 0x34
cmp ebx, ecx
jb 0x4b6d10
mov ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0xc4], eax
add ebp, 0xec
dec edx
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], edx
jne 0x4b6cb3
push dword [esp + 0x50]
call fcn.004a6970
push dword [esp + 0x58]
call fcn.004a6970
mov ecx, dword [esp + 0x24]
add esp, 8
mov eax, dword [esp + 0x3c]
mov esi, dword [esp + 0x14]
push ecx
test byte [eax + 0x1608], 4
push dword [esp + 0x14]
push eax
push esi
je 0x4b6dd9
call fcn.004b8c00
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
call fcn.004b8b70
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret