Function at 0x4b1fd0
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.004a1ee0
add esp, 4
mov dword [esp + 0x50], eax
test eax, eax
je 0x4b203d
lea eax, [ebx*4]
push eax
call fcn.004a1ee0
add esp, 4
mov dword [esp + 0x54], eax
test eax, eax
jne 0x4b2047
push dword [esp + 0x50]
call fcn.004a1ed0
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.004b1ea0
add esp, 0xc
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4b207d
push dword [esp + 0x50]
call fcn.004a1ed0
mov edx, dword [esp + 0x58]
push edx
call fcn.004a1ed0
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 0x4b209e
jmp 0x4b2090
mov dword [edx + eax*4], ecx
inc eax
add ecx, 0x210
cmp eax, ebx
jb 0x4b2090
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.004b1540
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 0x4b211d
imul ecx, ebx
push 2
push ecx
mov dword [esi + 8], ecx
call fcn.004a1eb0
add esp, 8
mov dword [esi + 4], eax
cmp dword [esi + 4], 0
jne 0x4b2149
push dword [esp + 0x50]
call fcn.004a1ed0
push dword [esp + 0x58]
call fcn.004a1ed0
push ebp
push esi
call fcn.004b2b60
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 0x4b21f5
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 0x4b21e2
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 0x4b21c0
mov ecx, dword [esp + 0x18]
inc ebx
add edi, 0x10
add ebp, 0x34
cmp ebx, ecx
jb 0x4b21a0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
cmp eax, 1
jbe 0x4b22f6
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 0x4b22c9
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 0x4b22b2
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 0x4b2290
mov ecx, dword [esp + 0x18]
inc ebx
add esi, 0x10
add ebp, 0x34
cmp ebx, ecx
jb 0x4b2270
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 0x4b2213
push dword [esp + 0x50]
call fcn.004a1ed0
push dword [esp + 0x58]
call fcn.004a1ed0
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 0x4b2339
call fcn.004b4160
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret
call fcn.004b40d0
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret