Function at 0x1008b9e0
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 0x1008bd3a
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 0x1008bd4b
mov dword [esp + 0xc], ebx
and ebx, 1
or esi, edx
je 0x1008ba7a
test dword [esp + 8], 0x7ff00000
jne 0x1008baa0
mov edx, dword [esp + 0xc]
add eax, 0xfffffbcd
xor bl, 1
xor ecx, ecx
mov esi, 1
jmp 0x1008bae0
mov dword [esp + 0x20], edi
mov edi, dword [esp + 8]
and edi, 0x7fffffff
mov esi, edi
xor esi, 0x7ff00000
or esi, edx
je 0x1008bade
or edx, edi
mov edi, dword [esp + 0x20]
jne 0x1008baa0
mov bl, 4
jmp 0x1008bae0
mov edx, dword [esp + 0xc]
xor ecx, edi
or ecx, edx
jne 0x1008bac4
movzx eax, ax
xor edx, edx
mov esi, 2
mov edi, 0x400000
mov bl, 1
xor ecx, ecx
add eax, 0xfffffbcb
jmp 0x1008bae0
movzx eax, ax
shld edi, edx, 1
add edx, edx
xor bl, 1
xor ecx, ecx
mov esi, 1
add eax, 0xfffffbcc
jmp 0x1008bae0
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 0x1008bbb3
movzx edx, bl
cmp bl, 3
mov ecx, 3
mov edi, 1
mov ebx, 0x100d3d5f
cmovb ecx, edx
mov edx, dword [esp + 8]
mov esi, edx
shr esi, 0x1f
test edx, edx
mov edx, 0x100d3d5e
cmovs edi, edx
cmovs ebx, edx
cmp byte [esp + 0x24], 0
mov edx, 1
cmove ebx, edi
cmovne esi, edx
cmp cl, 1
je 0x1008bbdf
movzx edx, byte [ebp + 0xc]
movzx ecx, cl
cmp ecx, 2
jne 0x1008bbff
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x1008bc7f
test dl, dl
mov eax, 0x100d3d6a
mov ecx, 0x100d3d67
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 0x1008bd15
mov ebx, 1
lea eax, [esp + 0x30]
xor esi, esi
mov edx, 1
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x100d3d60
mov dword [esp + 0x38], 3
jmp 0x1008bd15
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x100d3d63
mov dword [esp + 0x38], 3
lea eax, [esp + 0x30]
jmp 0x1008bd15
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 0x1008bc2b
cmp edi, 0x3ec0
jae 0x1008bd52
shr edi, 4
add edi, 0x15
cmp edi, eax
cmovae edi, eax
cmp edi, 0x401
jae 0x1008bd63
lea ecx, [esp + 0x9c]
lea edx, [esp + 0x78]
lea eax, [esp + 0x30]
push 0x8000
push edi
push ecx
push edx
push eax
call fcn.10085910
add esp, 0x14
cmp dword [esp + 0x30], 0
je 0x1008bccf
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x30]
mov dword [esp + 0x18], eax
movsd qword [esp + 0x10], xmm0
jmp 0x1008bcf2
dec eax
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x100d3d01
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, 0x100d3d9e
mov word [esp + 0x48], 2
cmovne ecx, eax
lea eax, [esp + 0x30]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], 2
jmp 0x1008bd15
lea eax, [esp + 0x10]
push 0x8000
push edi
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x84]
push ecx
push eax
call fcn.100841f0
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.10086230
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.1008d980
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x100d3d8c
push 0x1d
push 0x100d3d6d
call fcn.10089e60
mov bl, 2
jmp 0x1008bae0
push 0x100d3de0
push 0x3d
push 0x100d3da0
call fcn.10089e60
push 0x100d3df0
push 0x400
push edi
call fcn.1008f7f0
nop word cs:[eax + eax]
nop dword [eax]