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

Disassembly:
sub esp, 0x8c
cmp dword [esp + 0x90], 0
jne 0x1000d23c
or eax, 0xffffffff
add esp, 0x8c
ret 0x1c
cmp dword [esp + 0x94], 0
jne 0x1000d254
mov eax, 0xfffffffe
add esp, 0x8c
ret 0x1c
mov eax, dword [esp + 0x98]
dec eax
cmp eax, 0x1f
ja 0x1000dfb3
push ebp
mov ebp, dword [esp + 0xa0]
test ebp, ebp
jne 0x1000d27e
lea eax, [ebp - 4]
pop ebp
add esp, 0x8c
ret 0x1c
mov edx, dword [esp + 0xa4]
lea eax, [edx - 2]
cmp eax, 0x18e
ja 0x1000dfa4
push esi
mov esi, dword [esp + 0xac]
test esi, esi
jne 0x1000d2ad
lea eax, [esi - 6]
pop esi
pop ebp
add esp, 0x8c
ret 0x1c
xor eax, eax
push ebx
push edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
test edx, edx
jle 0x1000d36d
lea eax, [ebp + 4]
lea ecx, [ecx]
movzx ecx, word [eax]
test cx, cx
jge 0x1000d365
movzx edi, word [eax - 2]
movsx ecx, cx
neg ecx
mov dword [esp + edi*4 + 0x1c], ecx
add eax, 0x37
sub edx, 1
jne 0x1000d350
mov eax, dword [esp + 0xb0]
xor edi, edi
xor ebx, ebx
cmp eax, 4
mov dword [esp + 0x18], edi
jl 0x1000d465
lea ecx, [ebp + 0x14]
lea ebp, [eax - 4]
shr ebp, 2
inc ebp
lea edx, [ebp*4]
mov dword [esp + 0x18], edx
lea ebx, [ebx]
movzx edx, word [ecx]
test dx, dx
je 0x1000d3c8
fld dword [esi + 6]
fcomp dword [ecx + 6]
fnstsw ax
test ah, 0x41
jp 0x1000d3c8
cmp word [ecx - 0x10], 0
jle 0x1000d3c8
movzx eax, word [ecx - 4]
movzx edx, dx
sub edx, eax
add ebx, edx
inc edi
movzx edx, word [ecx + 0x37]
test dx, dx
je 0x1000d3f1
fld dword [esi + 6]
fcomp dword [ecx + 0x3d]
fnstsw ax
test ah, 0x41
jp 0x1000d3f1
cmp word [ecx + 0x27], 0
jle 0x1000d3f1
movzx eax, word [ecx + 0x33]
movzx edx, dx
sub edx, eax
add ebx, edx
inc edi
movzx edx, word [ecx + 0x6e]
test dx, dx
je 0x1000d41a
fld dword [esi + 6]
fcomp dword [ecx + 0x74]
fnstsw ax
test ah, 0x41
jp 0x1000d41a
cmp word [ecx + 0x5e], 0
jle 0x1000d41a
movzx eax, word [ecx + 0x6a]
movzx edx, dx
sub edx, eax
add ebx, edx
inc edi
movzx edx, word [ecx + 0xa5]
test dx, dx
je 0x1000d44f
fld dword [esi + 6]
fcomp dword [ecx + 0xab]
fnstsw ax
test ah, 0x41
jp 0x1000d44f
cmp word [ecx + 0x95], 0
jle 0x1000d44f
movzx eax, word [ecx + 0xa1]
movzx edx, dx
sub edx, eax
add ebx, edx
inc edi
add ecx, 0xdc
sub ebp, 1
jne 0x1000d3a0
mov eax, dword [esp + 0xb0]
cmp dword [esp + 0x18], eax
jge 0x1000d4b8
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0xac]
mov ebp, dword [esp + 0xb0]
mov ecx, eax
imul ecx, ecx, 0x37
lea ecx, [ecx + edx + 0x14]
sub ebp, eax
movzx edx, word [ecx]
test dx, dx
je 0x1000d4b0
fld dword [esi + 6]
fcomp dword [ecx + 6]
fnstsw ax
test ah, 0x41
jp 0x1000d4b0
cmp word [ecx - 0x10], 0
jle 0x1000d4b0
movzx eax, word [ecx - 4]
movzx edx, dx
sub edx, eax
add ebx, edx
inc edi
add ecx, 0x37
sub ebp, 1
jne 0x1000d488
cmp edi, 2
fldz
fld dword [0x10018228]
mov ebp, dword [esp + 0xb0]
jl 0x1000d5ea
mov eax, ebx
cdq
idiv edi
mov edi, eax
lea eax, [ebp - 1]
test eax, eax
jle 0x1000d5ea
mov ecx, dword [esp + 0xac]
fld dword [0x10018354]
mov edx, dword [esp + 0xa0]
add ecx, 0x10
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
cmp word [ecx - 0xc], 0
jle 0x1000d5cf
movzx eax, word [ecx]
fld st(2)
movzx ebx, word [ecx + 0x37]
fld st(3)
fld st(4)
fld st(5)
cmp eax, ebx
jge 0x1000d6c7
mov ecx, ebx
sub ecx, eax
cmp ecx, 2
jl 0x1000d562
xor ecx, ecx
cmp ecx, edi
fxch st(3)
fadd dword [edx + eax*4]
jg 0x1000d53e
fxch st(3)
fadd dword [edx + eax*4]
fxch st(3)
lea ebp, [ecx + 1]
fxch st(2)
cmp ebp, edi
fadd dword [edx + eax*4 + 4]
jg 0x1000d551
fld dword [edx + eax*4 + 4]
faddp st(4)
add eax, 2
fxch st(2)
lea ebp, [ebx - 1]
fxch st(3)
add ecx, 2
cmp eax, ebp
jl 0x1000d52e
cmp eax, ebx
mov ecx, dword [esp + 0x18]
jge 0x1000d57f
movzx ebx, word [ecx]
fstp st(1)
fld dword [edx + eax*4]
mov ebp, eax
sub ebp, ebx
cmp ebp, edi
jg 0x1000d581
fxch st(1)
fadd dword [edx + eax*4]
fxch st(1)
fxch st(2)
faddp st(3)
fxch st(2)
faddp st(1)
fld st(4)
fucomp st(1)
fnstsw ax
test ah, 0x44
jnp 0x1000d6cb
fld st(4)
fucomp st(2)
fnstsw ax
test ah, 0x44
jnp 0x1000d6cb
fdivp st(1)
fmul st(1)
fst dword [ecx + 0x22]
fcom st(2)
fnstsw ax
test ah, 5
jnp 0x1000d5c6
fcomp dword [0x10018348]
fnstsw ax
test ah, 0x41
jne 0x1000d5cf
jmp 0x1000d5c8
fstp st(0)
fxch st(2)
fst dword [ecx + 0x22]
fxch st(2)
add ecx, 0x37
sub dword [esp + 0x14], 1
mov dword [esp + 0x18], ecx
jne 0x1000d501
mov ebp, dword [esp + 0xb0]
fstp st(0)
cmp word [esp + 0xb8], 0
fxch st(1)
fst dword [esi + 0x2a]
je 0x1000d6d7
xor edx, edx
xor ebx, ebx
cmp ebp, 4
mov dword [esp + 0x10], edx
jl 0x1000d680
mov ecx, dword [esp + 0xac]
lea edi, [ebp - 4]
shr edi, 2
add ecx, 0x59
inc edi
lea ebx, [edi*4]
fcom dword [ecx - 0x37]
fnstsw ax
test ah, 0x44
jnp 0x1000d637
fld dword [ecx - 0x37]
inc edx
fadd dword [esi + 0x2a]
fstp dword [esi + 0x2a]
fcom dword [ecx]
fnstsw ax
test ah, 0x44
jnp 0x1000d649
fld dword [ecx]
inc edx
fadd dword [esi + 0x2a]
fstp dword [esi + 0x2a]
fcom dword [ecx + 0x37]
fnstsw ax
test ah, 0x44
jnp 0x1000d65d
fld dword [ecx + 0x37]
inc edx
fadd dword [esi + 0x2a]
fstp dword [esi + 0x2a]
fcom dword [ecx + 0x6e]
fnstsw ax
test ah, 0x44
jnp 0x1000d671
fld dword [ecx + 0x6e]
inc edx
fadd dword [esi + 0x2a]
fstp dword [esi + 0x2a]
add ecx, 0xdc
sub edi, 1
jne 0x1000d623
mov dword [esp + 0x10], edx
cmp ebx, ebp
jge 0x1000d6b6
mov ecx, dword [esp + 0xac]
mov eax, ebx
imul eax, eax, 0x37
mov edi, ebp
lea ecx, [eax + ecx + 0x22]
sub edi, ebx
fcom dword [ecx]
fnstsw ax
test ah, 0x44
jnp 0x1000d6aa
fld dword [ecx]
inc edx
fadd dword [esi + 0x2a]
fstp dword [esi + 0x2a]
add ecx, 0x37
sub edi, 1
jne 0x1000d698
mov dword [esp + 0x10], edx
cmp edx, 4
jl 0x1000d6d4
fild dword [esp + 0x10]
fdivr dword [esi + 0x2a]
fstp dword [esi + 0x2a]
jmp 0x1000d6d7
fstp st(0)
fstp st(1)
fstp st(1)
fstp st(0)
jmp 0x1000d5cf
fst dword [esi + 0x2a]
mov edx, dword [esp + 0xb0]
fst dword [esi + 0x3c]
mov edi, dword [esp + 0xa4]
xor ebx, ebx
xor ebp, ebp
cmp edx, 4
mov dword [esp + 0x10], ebx
jl 0x1000d8a7
mov ecx, dword [esp + 0xac]
add edx, 0xfffffffc
shr edx, 2
add ecx, 2
inc edx
lea ebp, [edx*4]
fcom dword [ecx + 0x28]
fnstsw ax
test ah, 0x44
jnp 0x1000d767
fld dword [esi + 6]
fcomp dword [ecx + 0x18]
fnstsw ax
test ah, 0x41
jp 0x1000d73c
movzx eax, word [ecx]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
je 0x1000d75d
fld dword [esi + 6]
fcomp dword [ecx + 0x18]
fnstsw ax
test ah, 5
jp 0x1000d767
movzx eax, word [ecx]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x1c]
fnstsw ax
test ah, 1
jne 0x1000d767
fld dword [ecx + 0x28]
inc ebx
fadd dword [esi + 0x3c]
fstp dword [esi + 0x3c]
fcom dword [ecx + 0x5f]
fnstsw ax
test ah, 0x44
jnp 0x1000d7bf
fld dword [esi + 6]
fcomp dword [ecx + 0x4f]
fnstsw ax
test ah, 0x41
jp 0x1000d793
movzx eax, word [ecx + 0x37]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
je 0x1000d7b5
fld dword [esi + 6]
fcomp dword [ecx + 0x4f]
fnstsw ax
test ah, 5
jp 0x1000d7bf
movzx eax, word [ecx + 0x37]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x1c]
fnstsw ax
test ah, 1
jne 0x1000d7bf
fld dword [ecx + 0x5f]
inc ebx
fadd dword [esi + 0x3c]
fstp dword [esi + 0x3c]
fcom dword [ecx + 0x96]
fnstsw ax
test ah, 0x44
jnp 0x1000d823
fld dword [esi + 6]
fcomp dword [ecx + 0x86]
fnstsw ax
test ah, 0x41
jp 0x1000d7f1
movzx eax, word [ecx + 0x6e]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
je 0x1000d816
fld dword [esi + 6]
fcomp dword [ecx + 0x86]
fnstsw ax
test ah, 5
jp 0x1000d823
movzx eax, word [ecx + 0x6e]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x1c]
fnstsw ax
test ah, 1
jne 0x1000d823
fld dword [ecx + 0x96]
inc ebx
fadd dword [esi + 0x3c]
fstp dword [esi + 0x3c]
fcom dword [ecx + 0xcd]
fnstsw ax
test ah, 0x44
jnp 0x1000d88d
fld dword [esi + 6]
fcomp dword [ecx + 0xbd]
fnstsw ax
test ah, 0x41
jp 0x1000d858
movzx eax, word [ecx + 0xa5]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
je 0x1000d880
fld dword [esi + 6]
fcomp dword [ecx + 0xbd]
fnstsw ax
test ah, 5
jp 0x1000d88d
movzx eax, word [ecx + 0xa5]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x1c]
fnstsw ax
test ah, 1
jne 0x1000d88d
fld dword [ecx + 0xcd]
inc ebx
fadd dword [esi + 0x3c]
fstp dword [esi + 0x3c]
add ecx, 0xdc
sub edx, 1
jne 0x1000d711
mov edx, dword [esp + 0xb0]
mov dword [esp + 0x10], ebx
cmp ebp, edx
jge 0x1000d926
mov edx, dword [esp + 0xac]
mov ecx, ebp
imul ecx, ecx, 0x37
lea ecx, [ecx + edx + 2]
mov edx, dword [esp + 0xb0]
sub edx, ebp
fcom dword [ecx + 0x28]
fnstsw ax
test ah, 0x44
jnp 0x1000d91a
fld dword [esi + 6]
fcomp dword [ecx + 0x18]
fnstsw ax
test ah, 0x41
jp 0x1000d8ef
movzx eax, word [ecx]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
je 0x1000d910
fld dword [esi + 6]
fcomp dword [ecx + 0x18]
fnstsw ax
test ah, 5
jp 0x1000d91a
movzx eax, word [ecx]
fld dword [esi + 6]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x1c]
fnstsw ax
test ah, 1
jne 0x1000d91a
fld dword [esi + 0x3c]
inc ebx
fadd dword [ecx + 0x28]
fstp dword [esi + 0x3c]
add ecx, 0x37
sub edx, 1
jne 0x1000d8c4
mov dword [esp + 0x10], ebx
cmp ebx, 2
jl 0x1000d937
fild dword [esp + 0x10]
fdivr dword [esi + 0x3c]
fstp dword [esi + 0x3c]
jmp 0x1000d93a
fst dword [esi + 0x3c]
mov ebx, dword [esp + 0xb0]
fst dword [esi + 0x4e]
xor ebp, ebp
cmp ebx, 4
mov dword [esp + 0x10], ebp
mov dword [esp + 0x18], ebp
jl 0x1000da75
mov ecx, dword [esp + 0xac]
add ebx, 0xfffffffc
shr ebx, 2
add ecx, 0x10
inc ebx
lea edx, [ebx*4]
mov dword [esp + 0x18], edx
movzx edx, word [ecx]
test dx, dx
jbe 0x1000d9aa
movzx edi, word [ecx + 4]
cmp di, dx
jbe 0x1000d9aa
fld dword [esi + 6]
fcomp dword [ecx + 0xa]
fnstsw ax
test ah, 0x41
jp 0x1000d9aa
movzx eax, di
movzx edx, dx
sub eax, edx
mov dword [esp + 0x14], eax
inc ebp
fild dword [esp + 0x14]
fmul st(2)
fadd dword [esi + 0x4e]
fstp dword [esi + 0x4e]
movzx edx, word [ecx + 0x37]
test dx, dx
jbe 0x1000d9e2
movzx edi, word [ecx + 0x3b]
cmp di, dx
jbe 0x1000d9e2
fld dword [esi + 6]
fcomp dword [ecx + 0x41]
fnstsw ax
test ah, 0x41
jp 0x1000d9e2
movzx eax, dx
movzx edx, di
sub edx, eax
mov dword [esp + 0x14], edx
inc ebp
fild dword [esp + 0x14]
fmul st(2)
fadd dword [esi + 0x4e]
fstp dword [esi + 0x4e]
movzx edx, word [ecx + 0x6e]
test dx, dx
jbe 0x1000da1a
movzx edi, word [ecx + 0x72]
cmp di, dx
jbe 0x1000da1a
fld dword [esi + 6]
fcomp dword [ecx + 0x78]
fnstsw ax
test ah, 0x41
jp 0x1000da1a
movzx eax, dx
movzx edx, di
sub edx, eax
mov dword [esp + 0x14], edx
inc ebp
fild dword [esp + 0x14]
fmul st(2)
fadd dword [esi + 0x4e]
fstp dword [esi + 0x4e]
movzx edx, word [ecx + 0xa5]
test dx, dx
jbe 0x1000da5b
movzx edi, word [ecx + 0xa9]
cmp di, dx
jbe 0x1000da5b
fld dword [esi + 6]
fcomp dword [ecx + 0xaf]
fnstsw ax
test ah, 0x41
jp 0x1000da5b
movzx eax, dx
movzx edx, di
sub edx, eax
mov dword [esp + 0x14], edx
inc ebp
fild dword [esp + 0x14]
fmul st(2)
fadd dword [esi + 0x4e]
fstp dword [esi + 0x4e]
add ecx, 0xdc
sub ebx, 1
jne 0x1000d973
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x10], ebp
cmp dword [esp + 0x18], ebx
jge 0x1000dadb
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0xac]
mov ebx, dword [esp + 0xb0]
mov ecx, eax
imul ecx, ecx, 0x37
lea edx, [ecx + edx + 0x10]
sub ebx, eax
movzx ecx, word [edx]
test cx, cx
jbe 0x1000dacf
movzx edi, word [edx + 4]
cmp di, cx
jbe 0x1000dacf
fld dword [esi + 6]
fcomp dword [edx + 0xa]
fnstsw ax
test ah, 0x41
jp 0x1000dacf
movzx eax, di
movzx ecx, cx
sub eax, ecx
mov dword [esp + 0x14], eax
inc ebp
fild dword [esp + 0x14]
fmul st(2)
fadd dword [esi + 0x4e]
fstp dword [esi + 0x4e]
add edx, 0x37
sub ebx, 1
jne 0x1000da98
mov dword [esp + 0x10], ebp
cmp ebp, 2
fstp st(1)
jl 0x1000daee
fild dword [esp + 0x10]
fdivr dword [esi + 0x4e]
fstp dword [esi + 0x4e]
jmp 0x1000daf1
fst dword [esi + 0x4e]
fst dword [esi + 0x36]
xor edi, edi
fst dword [esi + 0x30]
xor ebx, ebx
cmp dword [esp + 0xb0], 4
fld dword [0x1001834c]
fld dword [0x10018198]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
jl 0x1000dc89
mov edx, dword [esp + 0xb0]
mov ecx, dword [esp + 0xac]
add edx, 0xfffffffc
shr edx, 2
add ecx, 0x1a
inc edx
lea eax, [edx*4]
mov dword [esp + 0x18], eax
fld dword [esi + 6]
fcomp dword [ecx]
fnstsw ax
test ah, 5
jp 0x1000db68
fxch st(1)
fcom dword [ecx + 0x14]
fnstsw ax
test ah, 0x41
jp 0x1000db66
fld dword [ecx + 0x14]
inc ebx
fadd dword [esi + 0x36]
fstp dword [esi + 0x36]
fxch st(1)
fld dword [esi + 6]
fcomp dword [ecx]
fnstsw ax
test ah, 5
jp 0x1000db88
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jp 0x1000db88
fld dword [esi + 0x30]
inc edi
fadd dword [ecx + 0xc]
fstp dword [esi + 0x30]
fld dword [esi + 6]
fcomp dword [ecx + 0x37]
fnstsw ax
test ah, 5
jp 0x1000dbad
fxch st(1)
fcom dword [ecx + 0x4b]
fnstsw ax
test ah, 0x41
jp 0x1000dbab
fld dword [ecx + 0x4b]
inc ebx
fadd dword [esi + 0x36]
fstp dword [esi + 0x36]
fxch st(1)
fld dword [esi + 6]
fcomp dword [ecx + 0x37]
fnstsw ax
test ah, 5
jp 0x1000dbce
fcom dword [ecx + 0x43]
fnstsw ax
test ah, 0x41
jp 0x1000dbce
fld dword [esi + 0x30]
inc edi
fadd dword [ecx + 0x43]
fstp dword [esi + 0x30]
fld dword [esi + 6]
fcomp dword [ecx + 0x6e]
fnstsw ax
test ah, 5
jp 0x1000dbf9
fxch st(1)
fcom dword [ecx + 0x82]
fnstsw ax
test ah, 0x41
jp 0x1000dbf7
fld dword [ecx + 0x82]
inc ebx
fadd dword [esi + 0x36]
fstp dword [esi + 0x36]
fxch st(1)
fld dword [esi + 6]
fcomp dword [ecx + 0x6e]
fnstsw ax
test ah, 5
jp 0x1000dc1a
fcom dword [ecx + 0x7a]
fnstsw ax
test ah, 0x41
jp 0x1000dc1a
fld dword [esi + 0x30]
inc edi
fadd dword [ecx + 0x7a]
fstp dword [esi + 0x30]
fld dword [esi + 6]
fcomp dword [ecx + 0xa5]
fnstsw ax
test ah, 5
jp 0x1000dc48
fxch st(1)
fcom dword [ecx + 0xb9]
fnstsw ax
test ah, 0x41
jp 0x1000dc46
fld dword [ecx + 0xb9]
inc ebx
fadd dword [esi + 0x36]
fstp dword [esi + 0x36]
fxch st(1)
fld dword [esi + 6]
fcomp dword [ecx + 0xa5]
fnstsw ax
test ah, 5
jp 0x1000dc72
fcom dword [ecx + 0xb1]
fnstsw ax
test ah, 0x41
jp 0x1000dc72
fld dword [esi + 0x30]
inc edi
fadd dword [ecx + 0xb1]
fstp dword [esi + 0x30]
add ecx, 0xdc
sub edx, 1
jne 0x1000db44
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0xb0]
mov eax, dword [esp + 0x18]
cmp eax, ebp
jge 0x1000dd00
mov edx, dword [esp + 0xac]
mov ecx, eax
imul ecx, ecx, 0x37
lea ecx, [ecx + edx + 0x1a]
mov edx, ebp
sub edx, eax
fld dword [esi + 6]
fcomp dword [ecx]
fnstsw ax
test ah, 5
jp 0x1000dcd0
fxch st(1)
fcom dword [ecx + 0x14]
fnstsw ax
test ah, 0x41
jp 0x1000dcce
fld dword [ecx + 0x14]
inc ebx
fadd dword [esi + 0x36]
fstp dword [esi + 0x36]
fxch st(1)
fld dword [esi + 6]
fcomp dword [ecx]
fnstsw ax
test ah, 5
jp 0x1000dcf0
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jp 0x1000dcf0
fld dword [ecx + 0xc]
inc edi
fadd dword [esi + 0x30]
fstp dword [esi + 0x30]
add ecx, 0x37
sub edx, 1
jne 0x1000dcac
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
cmp edi, 2
fstp st(1)
fstp st(0)
jl 0x1000dd15
fild dword [esp + 0x14]
fdivr dword [esi + 0x30]
fstp dword [esi + 0x30]
jmp 0x1000dd18
fst dword [esi + 0x30]
cmp ebx, 2
jl 0x1000dd26
fild dword [esp + 0x10]
fdivr dword [esi + 0x36]
jmp 0x1000dd2c
fld dword [0x100181cc]
mov eax, dword [esp + 0x1c]
fstp dword [esi + 0x36]
xor ebx, ebx
cmp eax, ebp
fst dword [esi + 0x48]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x18], eax
jge 0x1000df3e
mov ecx, ebp
sub ecx, eax
cmp ecx, 4
jl 0x1000deb7
mov ecx, dword [esp + 0xac]
mov edx, eax
imul edx, edx, 0x37
lea ecx, [edx + ecx + 2]
mov edx, ebp
mov ebp, dword [esp + 0xa8]
sub edx, eax
sub edx, 4
shr edx, 2
inc edx
lea eax, [eax + edx*4]
mov dword [esp + 0x18], eax
fcom dword [ecx + 0x30]
fnstsw ax
test ah, 0x44
jnp 0x1000ddc1
fld dword [esi + 0xc]
fcomp dword [ecx + 0x18]
fnstsw ax
test ah, 1
je 0x1000ddb7
movzx eax, word [ecx]
lea edi, [ebp - 1]
cmp eax, edi
jge 0x1000ddc1
fld dword [esi + 0xc]
mov edi, dword [esp + 0xa4]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
jne 0x1000ddc1
fld dword [ecx + 0x30]
inc ebx
fadd dword [esi + 0x48]
fstp dword [esi + 0x48]
fcom dword [ecx + 0x67]
fnstsw ax
test ah, 0x44
jnp 0x1000de05
fld dword [esi + 0xc]
fcomp dword [ecx + 0x4f]
fnstsw ax
test ah, 1
je 0x1000ddfb
movzx eax, word [ecx + 0x37]
lea edi, [ebp - 1]
cmp eax, edi
jge 0x1000de05
fld dword [esi + 0xc]
mov edi, dword [esp + 0xa4]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
jne 0x1000de05
fld dword [ecx + 0x67]
inc ebx
fadd dword [esi + 0x48]
fstp dword [esi + 0x48]
fcom dword [ecx + 0x9e]
fnstsw ax
test ah, 0x44
jnp 0x1000de52
fld dword [esi + 0xc]
fcomp dword [ecx + 0x86]
fnstsw ax
test ah, 1
je 0x1000de45
movzx eax, word [ecx + 0x6e]
lea edi, [ebp - 1]
cmp eax, edi
jge 0x1000de52
fld dword [esi + 0xc]
mov edi, dword [esp + 0xa4]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
jne 0x1000de52
fld dword [ecx + 0x9e]
inc ebx
fadd dword [esi + 0x48]
fstp dword [esi + 0x48]
fcom dword [ecx + 0xd5]
fnstsw ax
test ah, 0x44
jnp 0x1000dea2
fld dword [esi + 0xc]
fcomp dword [ecx + 0xbd]
fnstsw ax
test ah, 1
je 0x1000de95
movzx eax, word [ecx + 0xa5]
lea edi, [ebp - 1]
cmp eax, edi
jge 0x1000dea2
fld dword [esi + 0xc]
mov edi, dword [esp + 0xa4]
lea eax, [eax + eax*2]
fcomp dword [edi + eax*4 + 0x10]
fnstsw ax
test ah, 1
jne 0x1000dea2
fld dword [ecx + 0xd5]
inc ebx
fadd dword [esi + 0x48]
fstp dword [esi + 0x48]
add ecx, 0xdc
sub edx, 1
jne 0x1000dd7e
mov dword [esp + 0x10], ebx
jmp 0x1000debe
mov ebp, dword [esp + 0xa8]
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0xb0]
cmp eax, edi
jge 0x1000df2e
mov edx, dword [esp + 0xac]
mov ecx, eax
imul ecx, ecx, 0x37
lea ecx, [ecx + edx + 2]
sub edi, eax
fcom dword [ecx + 0x30]
fnstsw ax
test ah, 0x44
jnp 0x1000df22
fld dword [esi + 0xc]
fcomp dword [ecx + 0x18]
fnstsw ax
test ah, 1
je 0x1000df18
movzx eax, word [ecx]
lea edx, [ebp - 1]
cmp eax, edx
jge 0x1000df22
fld dword [esi + 0xc]
mov edx, dword [esp + 0xa4]
lea eax, [eax + eax*2]
fcomp dword [edx + eax*4 + 0x10]
fnstsw ax
test ah, 1
jne 0x1000df22
fld dword [ecx + 0x30]
inc ebx
fadd dword [esi + 0x48]
fstp dword [esi + 0x48]
add ecx, 0x37
sub edi, 1
jne 0x1000dedf
mov dword [esp + 0x10], ebx
cmp ebx, 2
jl 0x1000df45
fstp st(0)
fild dword [esp + 0x10]
fdivr dword [esi + 0x48]
jmp 0x1000df45
mov ebp, dword [esp + 0xa8]
mov ecx, dword [esp + 0xb0]
fstp dword [esi + 0x48]
mov edx, dword [esp + 0xac]
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0xa8]
push ecx
push edx
push ebp
push eax
call fcn.1000bb40
pop edi
pop ebx
test eax, eax
jne 0x1000df84
fldz
fld dword [esp + 0xc]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x1000df86
fstp st(0)
fldz
mov ecx, dword [esp + 0xb0]
fstp dword [esi + 0x42]
push ecx
push esi
call fcn.10007b70
pop esi
xor eax, eax
pop ebp
add esp, 0x8c
ret 0x1c
mov eax, 0xfffffffb
pop ebp
add esp, 0x8c
ret 0x1c
mov eax, 0xfffffffd
add esp, 0x8c
ret 0x1c