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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4b258f
sub esp, 0x50
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x74]
mov eax, dword [esp + 0x5c]
jmp 0x4b21a7
lea eax, [esi + ebp*8 + 4]
mov eax, dword [eax]
mov ebx, ecx
mov ebp, edi
mov esi, edx
test eax, eax
je 0x4b2536
mov ecx, dword [ebp + 4]
mov edx, esi
mov esi, dword [ebp]
cmp eax, ecx
jae 0x4b2589
mov esi, dword [esi + eax*4]
mov ecx, ebx
mov ebx, dword [ebp + 0x10]
mov edi, ebx
mov ebx, dword [ebp + 0x14]
mov ebp, dword [ebp + 0xc]
cmp edi, esi
jbe 0x4b21e0
lea ebp, [ebp + esi*8]
cmp dword [ebp], eax
je 0x4b22a5
lea ebp, [edi + 1]
cmp ebx, ebp
jb 0x4b2580
mov ebx, dword [esp + 0x58]
mov dword [ebx + 0x10], ebp
mov esi, dword [ebx + 0xc]
cmp edi, ebp
jae 0x4b2577
lea ebp, [esi + edi*8 + 4]
mov ebx, dword [0x5a34c0]
lea esi, [esi + edi*8]
test ebx, ebx
jne 0x4b2217
mov dword [ebp], 0
jmp 0x4b222c
mov dword [esp + 0x34], eax
mov ebx, edi
mov edi, ebp
xor eax, eax
call fcn.00459240
mov eax, dword [esp + 0x34]
mov edi, ebx
mov dword [esp + 0x4c], ebp
mov dword [esi], eax
mov ebx, dword [esp + 0x58]
mov esi, dword [ebx + 4]
mov ebp, dword [ebx]
cmp eax, esi
jae 0x4b2570
mov dword [ebp + eax*4], edi
mov ebp, dword [ecx + 4]
mov esi, dword [ebp]
mov ebp, dword [ebp + 4]
cmp eax, ebp
jae 0x4b2569
lea ebp, [eax + eax*2]
lea eax, [esi + ebp*8]
mov edi, ebx
lea ebx, [esi + ebp*8]
movzx ebx, byte [ebx]
cmp bl, 3
ja 0x4b23e2
mov dword [esp + 0x30], ebp
mov dword [esp + 0x48], esi
cmp bl, 1
jbe 0x4b237d
mov dword [esp + 0x44], edx
cmp bl, 2
jne 0x4b232d
lea ebx, [esi + ebp*8 + 8]
mov dword [esp + 0x40], ebx
mov eax, dword [ebx]
mov ebx, dword [esp + 0x68]
cmp ebx, eax
jle 0x4b219b
jmp 0x4b22ad
mov dword [esp + 0x78], edx
add esp, 0x50
ret
jbe 0x4b2562
mov edx, dword [esp + 0x64]
mov ebx, dword [edx + eax*4]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x60]
mov dword [edx + eax*4], ebx
lea eax, [esi + ebp*8 + 4]
mov eax, dword [eax]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov eax, dword [esp + 0x64]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], 0
call fcn.004b2170
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
cmp ecx, eax
jbe 0x4b255d
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x64]
mov dword [edx + eax*4], ecx
mov edx, dword [esp + 0x44]
jmp 0x4b252e
mov eax, dword [esp + 0x70]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
lea ebx, [esi + ebp*8 + 8]
mov ebx, dword [ebx]
mov dword [esp + 4], edx
mov dword [esp], ecx
mov byte [esp + 8], bl
call fcn.004b15e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x4b2374
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x48]
lea eax, [ecx + eax*8 + 4]
mov eax, dword [eax]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x44]
jmp 0x4b21a7
mov edx, dword [esp + 0x44]
jmp 0x4b252e
lea eax, [esi + ebp*8 + 4]
mov eax, dword [eax]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
call fcn.004b2170
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x48]
lea eax, [ecx + eax*8 + 8]
mov eax, dword [eax]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov ebx, ecx
mov ebp, edx
jmp 0x4b21a7
cmp bl, 5
jbe 0x4b2407
cmp bl, 6
jne 0x4b23fd
lea eax, [esi + ebp*8 + 4]
mov eax, dword [eax]
mov ebx, ecx
mov ebp, edi
mov esi, edx
jmp 0x4b21a7
cmp bl, 0xa
jbe 0x4b2410
jmp 0x4b2545
cmp bl, 4
jne 0x4b252e
test edx, edx
je 0x4b2431
mov ebx, dword [0x5a34c0]
test ebx, ebx
jne 0x4b2425
mov dword [edx], eax
jmp 0x4b24d4
mov edi, edx
call fcn.00459240
jmp 0x4b24d4
nop
mov edx, dword [ecx + 0x3c]
mov ebx, dword [ecx + 0x38]
test edx, edx
jle 0x4b2446
mov ebx, dword [ebx + edx*4 - 4]
dec edx
mov dword [ecx + 0x3c], edx
jmp 0x4b24bb
mov dword [esp + 0x3c], eax
lea eax, [0x4c6ca0]
mov dword [esp], eax
call fcn.0040b240
mov eax, dword [esp + 4]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 0x4c]
mov dword [esp + 0x30], edx
mov ecx, dword [ecx + 0x50]
mov dword [esp + 0x2c], ecx
lea ebx, [0x4c2d80]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00443900
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
mov dword [edx + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [edx + 0xc], ecx
mov ecx, dword [0x5a34c0]
test ecx, ecx
jne 0x4b24ad
mov dword [edx + 4], eax
jmp 0x4b24b5
lea edi, [edx + 4]
call fcn.00459240
mov eax, dword [esp + 0x3c]
mov ebx, edx
test byte [ebx], al
mov edx, dword [0x5a34c0]
test edx, edx
jne 0x4b24cb
mov dword [ebx], eax
jmp 0x4b24d2
mov edi, ebx
call fcn.00459240
mov edx, ebx
mov ebx, dword [esp + 0x68]
test ebx, ebx
jle 0x4b250f
mov ecx, dword [edx + 8]
mov ebp, dword [edx + 4]
test ecx, ecx
jbe 0x4b253e
mov esi, dword [esp + 0x64]
cmp esi, ebp
je 0x4b250f
mov dword [esp + 0x44], edx
cmp ebx, ecx
jl 0x4b24f8
mov ebx, ecx
mov dword [esp], ebp
mov dword [esp + 4], esi
shl ebx, 2
mov dword [esp + 8], ebx
call fcn.00459b10
mov edx, dword [esp + 0x44]
mov ecx, dword [0x5a34c0]
test ecx, ecx
jne 0x4b2521
mov eax, dword [esp + 0x4c]
mov dword [eax], edx
jmp 0x4b252c
mov edi, dword [esp + 0x4c]
mov eax, edx
call fcn.00459240
xor edx, edx
mov dword [esp + 0x78], edx
add esp, 0x50
ret
mov dword [esp + 0x78], esi
add esp, 0x50
ret
xor eax, eax
call fcn.004592c0
lea eax, [0x4c3500]
mov dword [esp], eax
lea eax, [0x4f6da8]
mov dword [esp + 4], eax
call fcn.00431520
call fcn.004592d0
mov ecx, ebx
call fcn.004592d0
mov ecx, ebp
call fcn.004592d0
mov ecx, esi
call fcn.004592d0
mov eax, edi
mov ecx, ebp
call fcn.004592c0
mov ecx, ebp
mov edx, ebx
call fcn.00459300
call fcn.004592d0
nop
call fcn.00457e00
jmp fcn.004b2170