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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x70
mov ebx, dword [esp + 0x84]
xor esi, esi
mov ecx, 4
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x34], esi
mov ebp, 2
mov dword [esp + 0x28], ebp
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], esi
mov eax, 1
mov dword [esp + 0x30], eax
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], eax
mov edx, 8
mov dword [esp], edx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
push ebx
mov dword [ebx + 0x78], esi
call fcn.004b7530
pop ecx
movzx eax, byte [ebx + 0x123]
test eax, eax
je 0x4c0448
mov esi, dword [ebx + 0x70]
mov eax, dword [ebx + 0xcc]
test esi, 2
jne 0x4c03f1
mov ecx, dword [esp + 0x38]
mov ebp, dword [esp + 0x54]
neg ebp
add ebp, ecx
lea eax, [ebp + eax - 1]
xor edx, edx
div ecx
mov dword [ebx + 0xd0], eax
jmp 0x4c03f7
mov dword [ebx + 0xd0], eax
mov ecx, dword [ebx + 0xc8]
movzx edi, byte [ebx + 0x124]
mov ebp, dword [esp + edi*4]
mov edx, dword [esp + edi*4 + 0x1c]
movzx edi, byte [ebx + 0x129]
lea eax, [ecx + ebp]
neg edx
lea eax, [eax + edx - 1]
xor edx, edx
div ebp
cmp edi, 8
mov dword [ebx + 0xe0], eax
jl 0x4c0434
mov edx, edi
shr edx, 3
imul eax, edx
jmp 0x4c043d
imul eax, edi
add eax, 7
shr eax, 3
add eax, 1
mov dword [ebx + 0xdc], eax
jmp 0x4c0479
mov ecx, dword [ebx + 0xcc]
mov eax, dword [ebx + 0xd8]
movzx edi, byte [ebx + 0x129]
mov esi, dword [ebx + 0x70]
mov dword [ebx + 0xd0], ecx
mov ecx, dword [ebx + 0xc8]
mov dword [ebx + 0xe0], ecx
add eax, 1
mov dword [ebx + 0xdc], eax
test esi, 4
je 0x4c0492
movzx eax, byte [ebx + 0x127]
cmp eax, 8
jge 0x4c0492
mov edi, 8
mov ebp, esi
and ebp, 0x1000
je 0x4c04d4
movzx eax, byte [ebx + 0x126]
cmp eax, 3
je 0x4c0673
test eax, eax
jne 0x4c04cb
movzx edx, word [ebx + 0x11a]
mov eax, 8
cmp edi, 8
jge 0x4c04c3
mov edi, eax
test edx, edx
je 0x4c04d4
add edi, edi
jmp 0x4c04d4
cmp eax, 2
je 0x4c064d
mov eax, esi
and eax, 0x8000
je 0x4c050d
movzx edx, byte [ebx + 0x126]
cmp edx, 3
je 0x4c06ab
test edx, edx
jne 0x4c0504
cmp edi, 8
jg 0x4c04fd
mov edi, 0x10
jmp 0x4c050d
mov edi, 0x20
jmp 0x4c050d
cmp edx, 2
je 0x4c0692
test esi, 0x4000
je 0x4c056a
movzx edx, word [ebx + 0x11a]
test edx, edx
je 0x4c0524
test ebp, ebp
jne 0x4c0528
test eax, eax
je 0x4c053b
cmp edi, 0x10
jg 0x4c0534
mov edi, 0x20
jmp 0x4c056a
mov edi, 0x40
jmp 0x4c056a
movzx eax, byte [ebx + 0x126]
cmp eax, 4
je 0x4c0528
cmp edi, 8
jg 0x4c055c
cmp eax, 6
je 0x4c06b5
mov edi, 0x18
jmp 0x4c056a
cmp eax, 6
je 0x4c06bf
mov edi, 0x30
test esi, 0x100000
je 0x4c0583
movzx eax, byte [ebx + 0x65]
movzx edx, byte [ebx + 0x64]
imul edx, eax
cmp edx, edi
jle 0x4c0583
mov edi, edx
add ecx, 7
and ecx, 0xfffffff8
cmp edi, 8
jl 0x4c0598
mov eax, edi
shr eax, 3
imul ecx, eax
jmp 0x4c05a1
imul ecx, edi
add ecx, 7
shr ecx, 3
add edi, 7
sar edi, 3
lea ebp, [edi + ecx + 0x41]
cmp ebp, dword [ebx + 0x280]
jbe 0x4c05de
push dword [ebx + 0x250]
push ebx
call fcn.004bb66c
push ebp
push ebx
call fcn.004bb6f4
add esp, 0x10
mov dword [ebx + 0x250], eax
add eax, 0x20
mov dword [ebx + 0xec], eax
mov dword [ebx + 0x280], ebp
mov edx, dword [ebx + 0xd8]
cmp edx, 0xfffffffe
ja 0x4c06c9
add edx, 1
cmp edx, dword [ebx + 0x284]
ja 0x4c0600
mov eax, dword [ebx + 0xe8]
jmp 0x4c0634
push dword [ebx + 0xe8]
push ebx
call fcn.004bb66c
mov eax, dword [ebx + 0xd8]
add eax, 1
push eax
push ebx
call fcn.004bb6f4
add esp, 0x10
mov edx, dword [ebx + 0xd8]
mov dword [ebx + 0xe8], eax
add edx, 1
mov dword [ebx + 0x284], edx
push edx
push 0
push eax
push ebx
call fcn.004bb6b4
or dword [ebx + 0x6c], 0x40
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
movzx eax, word [ebx + 0x11a]
test eax, eax
je 0x4c04d4
mov eax, 0x55555556
add edi, edi
add edi, edi
imul edi
sar edi, 0x1f
neg edi
add edi, edx
jmp 0x4c04d4
movzx eax, word [ebx + 0x11a]
test eax, eax
je 0x4c0688
mov edi, 0x20
jmp 0x4c04d4
mov edi, 0x18
jmp 0x4c04d4
cmp edi, 0x20
jg 0x4c06a1
mov edi, 0x20
jmp 0x4c050d
mov edi, 0x40
jmp 0x4c050d
mov edi, 0x20
jmp 0x4c050d
mov edi, 0x20
jmp 0x4c056a
mov edi, 0x40
jmp 0x4c056a
push 0x80e0c4
push ebx
call fcn.004bb9f0
add esp, 8
mov edx, dword [ebx + 0xd8]
jmp 0x4c05ed