Function at 0x4db810
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 0x4dbb6a
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 0x4dbb7b
mov dword [esp + 0xc], ebx
and ebx, 1
or esi, edx
je 0x4db8aa
test dword [esp + 8], 0x7ff00000
jne 0x4db8d0
mov edx, dword [esp + 0xc]
add eax, 0xfffffbcd
xor bl, 1
xor ecx, ecx
mov esi, 1
jmp 0x4db910
mov dword [esp + 0x20], edi
mov edi, dword [esp + 8]
and edi, 0x7fffffff
mov esi, edi
xor esi, 0x7ff00000
or esi, edx
je 0x4db90e
or edx, edi
mov edi, dword [esp + 0x20]
jne 0x4db8d0
mov bl, 4
jmp 0x4db910
mov edx, dword [esp + 0xc]
xor ecx, edi
or ecx, edx
jne 0x4db8f4
movzx eax, ax
xor edx, edx
mov esi, 2
mov edi, 0x400000
mov bl, 1
xor ecx, ecx
add eax, 0xfffffbcb
jmp 0x4db910
movzx eax, ax
shld edi, edx, 1
add edx, edx
xor bl, 1
xor ecx, ecx
mov esi, 1
add eax, 0xfffffbcc
jmp 0x4db910
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 0x4db9e3
movzx edx, bl
cmp bl, 3
mov ecx, 3
mov edi, 1
mov ebx, 0x586e0f
cmovb ecx, edx
mov edx, dword [esp + 8]
mov esi, edx
shr esi, 0x1f
test edx, edx
mov edx, 0x586e0e
cmovs edi, edx
cmovs ebx, edx
cmp byte [esp + 0x24], 0
mov edx, 1
cmove ebx, edi
cmovne esi, edx
cmp cl, 1
je 0x4dba0f
movzx edx, byte [ebp + 0xc]
movzx ecx, cl
cmp ecx, 2
jne 0x4dba2f
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x4dbaaf
test dl, dl
mov eax, 0x586e1a
mov ecx, 0x586e17
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 0x4dbb45
mov ebx, 1
lea eax, [esp + 0x30]
xor esi, esi
mov edx, 1
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x586e10
mov dword [esp + 0x38], 3
jmp 0x4dbb45
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x586e13
mov dword [esp + 0x38], 3
lea eax, [esp + 0x30]
jmp 0x4dbb45
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 0x4dba5b
cmp edi, 0x3ec0
jae 0x4dbb82
shr edi, 4
add edi, 0x15
cmp edi, eax
cmovae edi, eax
cmp edi, 0x401
jae 0x4dbb93
lea ecx, [esp + 0x9c]
lea edx, [esp + 0x78]
lea eax, [esp + 0x30]
push 0x8000
push edi
push ecx
push edx
push eax
call fcn.004d5740
add esp, 0x14
cmp dword [esp + 0x30], 0
je 0x4dbaff
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x30]
mov dword [esp + 0x18], eax
movsd qword [esp + 0x10], xmm0
jmp 0x4dbb22
dec eax
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x586db1
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, 0x586e4e
mov word [esp + 0x48], 2
cmovne ecx, eax
lea eax, [esp + 0x30]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], 2
jmp 0x4dbb45
lea eax, [esp + 0x10]
push 0x8000
push edi
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x84]
push ecx
push eax
call fcn.004d4020
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.004d6060
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.004dd7b0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x586e3c
push 0x1d
push 0x586e1d
call fcn.004d9c90
mov bl, 2
jmp 0x4db910
push 0x586e90
push 0x3d
push 0x586e50
call fcn.004d9c90
push 0x586ea0
push 0x400
push edi
call fcn.004df620
nop word cs:[eax + eax]
nop dword [eax]