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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x4a0
cmp dword [ebp + 8], 0
mov dword [esp + 4], ecx
je 0x4b597a
mov dword [esp + 0x24], edx
movsd qword [esp + 0x28], xmm0
mov ecx, 0x100000
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
lea esi, [ecx - 1]
mov eax, ebx
mov edi, ebx
and esi, ebx
mov dword [esp + 8], ebx
shr eax, 0x14
shld edi, edx, 1
lea ebx, [esi + 0x100000]
and eax, 0x7ff
and edi, 0x1fffff
test eax, eax
cmove ebx, edi
mov edi, ebx
lea ebx, [edx + edx]
cmovne ebx, edx
ucomisd xmm0, xmm0
jp 0x4b598b
mov dword [esp + 0xc], ebx
and ebx, 1
or esi, edx
je 0x4b56ba
test dword [esp + 8], 0x7ff00000
jne 0x4b56e0
mov edx, dword [esp + 0xc]
add eax, 0xfffffbcd
xor bl, 1
xor ecx, ecx
mov esi, 1
jmp 0x4b5720
mov dword [esp + 0x20], edi
mov edi, dword [esp + 8]
and edi, 0x7fffffff
mov esi, edi
xor esi, 0x7ff00000
or esi, edx
je 0x4b571e
or edx, edi
mov edi, dword [esp + 0x20]
jne 0x4b56e0
mov bl, 4
jmp 0x4b5720
mov edx, dword [esp + 0xc]
xor ecx, edi
or ecx, edx
jne 0x4b5704
movzx eax, ax
xor edx, edx
mov esi, 2
mov edi, 0x400000
mov bl, 1
xor ecx, ecx
add eax, 0xfffffbcb
jmp 0x4b5720
movzx eax, ax
shld edi, edx, 1
add edx, edx
xor bl, 1
xor ecx, ecx
mov esi, 1
add eax, 0xfffffbcc
jmp 0x4b5720
mov bl, 3
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], edi
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 1
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], ecx
mov word [esp + 0x90], ax
mov byte [esp + 0x92], bl
add bl, 0xfe
je 0x4b57f3
movzx edx, bl
cmp bl, 3
mov ecx, 3
mov edi, 1
mov ebx, 0x4eff4f
cmovb ecx, edx
mov edx, dword [esp + 8]
mov esi, edx
shr esi, 0x1f
test edx, edx
mov edx, 0x4eff4e
cmovs edi, edx
cmovs ebx, edx
cmp byte [esp + 0x24], 0
mov edx, 1
cmove ebx, edi
cmovne esi, edx
cmp cl, 1
je 0x4b581f
movzx edx, byte [ebp + 0xc]
movzx ecx, cl
cmp ecx, 2
jne 0x4b583f
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x4b58bf
test dl, dl
mov eax, 0x4eff5a
mov ecx, 0x4eff57
mov word [esp + 0x30], 2
mov edx, 1
cmovne ecx, eax
lea eax, [esp + 0x30]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], 3
jmp 0x4b5955
mov ebx, 1
lea eax, [esp + 0x30]
xor esi, esi
mov edx, 1
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x4eff50
mov dword [esp + 0x38], 3
jmp 0x4b5955
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x4eff53
mov dword [esp + 0x38], 3
lea eax, [esp + 0x30]
jmp 0x4b5955
test ax, ax
movsx edi, ax
mov eax, dword [ebp + 8]
mov ecx, 0xfffffff4
mov edx, 5
cmovs edx, ecx
imul edi, edx
cmp eax, 0x401
jb 0x4b586b
cmp edi, 0x3ec0
jae 0x4b5992
shr edi, 4
add edi, 0x15
cmp edi, eax
cmovae edi, eax
cmp edi, 0x401
jae 0x4b59a3
lea ecx, [esp + 0x9c]
lea edx, [esp + 0x78]
lea eax, [esp + 0x30]
push 0x8000
push edi
push ecx
push edx
push eax
call fcn.004af550
add esp, 0x14
cmp dword [esp + 0x30], 0
je 0x4b590f
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x30]
mov dword [esp + 0x18], eax
movsd qword [esp + 0x10], xmm0
jmp 0x4b5932
dec eax
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x4efef1
mov dword [esp + 0x38], 2
mov word [esp + 0x3c], 0
test dl, dl
mov ecx, str.e0E0assertion_failed:_buf.len_____ndigits__buf.len_____maxlen
mov edx, 3
mov dword [esp + 0x40], eax
mov eax, 0x4eff8e
mov word [esp + 0x48], 2
cmovne ecx, eax
lea eax, [esp + 0x30]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], 2
jmp 0x4b5955
lea eax, [esp + 0x10]
push 0x8000
push edi
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x84]
push ecx
push eax
call fcn.004ade30
add esp, 0x14
movzx eax, byte [ebp + 0xc]
push 6
lea ecx, [esp + 0x34]
push ecx
push eax
push dword [ebp + 8]
push dword [esp + 0x28]
push dword [esp + 0x28]
push dword [esp + 0x28]
call fcn.004afe70
add esp, 0x1c
mov ecx, dword [esp + 4]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
lea edx, [esp + 0x10]
call fcn.004b75c0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x4eff7c
push 0x1d
push 0x4eff5d
call fcn.004b3aa0
mov bl, 2
jmp 0x4b5720
push 0x4effd0
push 0x3d
push 0x4eff90
call fcn.004b3aa0
push 0x4effe0
push 0x400
push edi
call fcn.004b9430
nop word cs:[eax + eax]
nop dword [eax]