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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x7c
mov ebp, dword [esp + 0x90]
call fcn.647cc874
mov dword [esp + 0x54], eax
mov dword [esp], 0xc00
call fcn.647cc88c
mov ecx, dword [esp + 0x98]
test ecx, ecx
jle 0x646a0ecc
lea edi, [ebp + 0x74]
mov dword [esp + 0x48], edi
mov esi, dword [esp + 0x98]
cmp esi, 0x1000
jle 0x646a09ed
mov esi, 0x1000
lea ecx, [esi + esi*8]
shl ecx, 2
mov edi, dword [esp + 0x48]
xor eax, eax
rep stosb byte es:[edi], al
mov dword [esp], 0
call sym.allegro_5.0.10_monolith_mt.dll_SuspendContext
mov edx, dword [ebp + 0x28a4c]
mov eax, dword [ebp + 0x28a50]
lea eax, [edx + eax*4]
mov dword [esp + 0x34], eax
cmp edx, eax
je 0x646a0b4c
mov dword [esp + 0x30], ebp
mov ebp, edx
mov eax, dword [ebp]
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_SuspendContext
mov eax, dword [ebp]
mov ebx, dword [eax + 0x74]
mov ecx, dword [eax + 0x78]
lea edi, [ebx + ecx*4]
cmp ebx, edi
jne 0x646a0a57
jmp 0x646a0a8d
mov eax, dword [ebp]
dec dword [eax + 0x78]
mov eax, dword [edi - 4]
mov dword [ebx], eax
sub edi, 4
cmp ebx, edi
je 0x646a0a8a
mov eax, dword [ebx]
cmp dword [eax + 0x58], 0x1012
jne 0x646a0a45
cmp byte [eax + 0xf4], 0
jne 0x646a0d32
mov dword [esp + 8], esi
mov edx, dword [esp + 0x30]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_MixSource
add ebx, 4
cmp ebx, edi
jne 0x646a0a57
mov eax, dword [ebp]
mov edx, dword [eax + 0x48]
test edx, edx
jle 0x646a0b33
xor edi, edi
mov ebx, edi
mov edi, esi
nop
mov eax, dword [eax + 0x44]
mov esi, dword [eax + ebx*8 + 4]
fld dword [esi + 0x40a4]
xor eax, eax
fld dword [0x64802dc0]
lea esi, [esi]
fld st(1)
fmul st(1)
fsubp st(2)
fld dword [esi + eax*4 + 0xa4]
fadd st(2)
fstp dword [esi + eax*4 + 0xa4]
inc eax
cmp edi, eax
ja 0x646a0ab8
fstp st(0)
fadd dword [esi + 0x40a8]
fstp dword [esi + 0x40a4]
mov dword [esi + 0x40a8], 0
mov eax, dword [esi + 0xa0]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
lea ecx, [esi + 0xa4]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [eax + 0xc]
xor eax, eax
nop
mov dword [esi + eax*4 + 0xa4], 0
inc eax
cmp edi, eax
ja 0x646a0b14
inc ebx
mov eax, dword [ebp]
cmp dword [eax + 0x48], ebx
jg 0x646a0aa0
mov esi, edi
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_ProcessContext
add ebp, 4
cmp dword [esp + 0x34], ebp
jne 0x646a0a28
mov ebp, dword [esp + 0x30]
mov dword [esp], 0
call sym.allegro_5.0.10_monolith_mt.dll_ProcessContext
fld dword [ebp + 0x28a04]
fld dword [ebp + 0x28a08]
fstp dword [esp + 0x38]
fld dword [ebp + 0x28a0c]
fstp dword [esp + 0x34]
fld dword [ebp + 0x28a10]
fstp dword [esp + 0x30]
fld dword [ebp + 0x28a14]
fld dword [ebp + 0x28a18]
fld dword [ebp + 0x28a1c]
fld dword [ebp + 0x28a20]
fld dword [ebp + 0x28a24]
mov eax, dword [esp + 0x48]
xor edx, edx
fld dword [0x64802dc0]
fld st(6)
fmul st(1)
fsubp st(7)
fld dword [eax]
fadd st(7)
fstp dword [eax]
fld dword [esp + 0x38]
fmul st(1)
fsubr dword [esp + 0x38]
fst dword [esp + 0x38]
fadd dword [eax + 4]
fstp dword [eax + 4]
fld dword [esp + 0x34]
fmul st(1)
fsubr dword [esp + 0x34]
fst dword [esp + 0x34]
fadd dword [eax + 8]
fstp dword [eax + 8]
fld dword [esp + 0x30]
fmul st(1)
fsubr dword [esp + 0x30]
fst dword [esp + 0x30]
fadd dword [eax + 0xc]
fstp dword [eax + 0xc]
fld st(5)
fmul st(1)
fsubp st(6)
fld dword [eax + 0x10]
fadd st(6)
fstp dword [eax + 0x10]
fld st(4)
fmul st(1)
fsubp st(5)
fld dword [eax + 0x14]
fadd st(5)
fstp dword [eax + 0x14]
fld st(3)
fmul st(1)
fsubp st(4)
fld dword [eax + 0x18]
fadd st(4)
fstp dword [eax + 0x18]
fld st(2)
fmul st(1)
fsubp st(3)
fld dword [eax + 0x1c]
fadd st(3)
fstp dword [eax + 0x1c]
fld st(1)
fmul st(1)
fsubp st(2)
fld dword [eax + 0x20]
fadd st(2)
fstp dword [eax + 0x20]
inc edx
add eax, 0x24
cmp esi, edx
ja 0x646a0ba6
fstp st(0)
fxch st(5)
fadd dword [ebp + 0x28a28]
fstp dword [ebp + 0x28a04]
mov dword [ebp + 0x28a28], 0
fld dword [esp + 0x38]
fadd dword [ebp + 0x28a2c]
fstp dword [ebp + 0x28a08]
mov dword [ebp + 0x28a2c], 0
fld dword [esp + 0x34]
fadd dword [ebp + 0x28a30]
fstp dword [ebp + 0x28a0c]
mov dword [ebp + 0x28a30], 0
fld dword [esp + 0x30]
fadd dword [ebp + 0x28a34]
fstp dword [ebp + 0x28a10]
fxch st(3)
mov dword [ebp + 0x28a34], 0
fadd dword [ebp + 0x28a38]
fstp dword [ebp + 0x28a14]
fxch st(1)
mov dword [ebp + 0x28a38], 0
fadd dword [ebp + 0x28a3c]
fstp dword [ebp + 0x28a18]
mov dword [ebp + 0x28a3c], 0
fadd dword [ebp + 0x28a40]
fstp dword [ebp + 0x28a1c]
mov dword [ebp + 0x28a40], 0
fadd dword [ebp + 0x28a44]
fstp dword [ebp + 0x28a20]
mov dword [ebp + 0x28a44], 0
fadd dword [ebp + 0x28a48]
fstp dword [ebp + 0x28a24]
mov dword [ebp + 0x28a48], 0
mov eax, dword [ebp + 0x14]
sub eax, 0x1400
cmp eax, 6
ja case.0x646a1b7c.5378
jmp dword [eax*4 + 0x64802cd0]
mov edx, dword [ebp]
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [eax + 0x33c]
mov eax, dword [ebx]
mov byte [eax + 0xf4], 0
mov eax, dword [ebx]
jmp 0x646a0a6f
mov edi, dword [ebp + 0x24074]
shl edi, 1
mov dword [esp + 0x44], edi
mov eax, dword [ebp + 0x2407c]
shl eax, 1
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x24080]
shl edx, 1
mov dword [esp + 0x40], edx
mov ecx, dword [ebp + 0x24090]
shl ecx, 1
mov dword [esp + 0x34], ecx
mov ebx, dword [ebp + 0x24094]
shl ebx, 1
mov dword [esp + 0x30], ebx
mov edi, dword [ebp + 0x2408c]
shl edi, 1
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x94]
add edi, ebx
xor ebx, ebx
fld1
mov dword [esp + 0x4c], esi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a13a1
fstp st(0)
jmp 0x646a0dcb
fstp st(0)
mov eax, 0xffffffff
mov ecx, edi
sub ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x44]
mov word [ecx + esi], ax
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1364
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x38]
mov word [ecx + esi], ax
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1315
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x40]
mov word [ecx + esi], ax
fld dword [edx + 0x18]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a12d8
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x3c]
mov word [ecx + esi], ax
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1289
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x34]
mov word [ecx + esi], ax
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a124c
fstp st(0)
mov eax, 0xffffffff
mov word [edi], ax
inc ebx
add edi, 0xe
cmp dword [esp + 0x4c], ebx
ja 0x646a0dab
fstp st(0)
mov esi, dword [esp + 0x4c]
jmp case.0x646a1b7c.5378
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
sub dword [esp + 0x98], esi
mov eax, dword [esp + 0x98]
test eax, eax
jg 0x646a09d9
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.647cc88c
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 0x10]
sub eax, 0x1500
cmp eax, 6
ja case.0x646a1b7c.5378
jmp dword [eax*4 + 0x64802cec]
mov eax, dword [ebp + 0x10]
sub eax, 0x1500
cmp eax, 6
ja case.0x646a1b7c.5378
jmp dword [eax*4 + 0x64802d08]
mov edi, dword [ebp + 0x24074]
shl edi, 2
mov ebx, dword [ebp + 0x24078]
shl ebx, 2
mov dword [esp + 0x3c], ebx
mov eax, dword [ebp + 0x2407c]
shl eax, 2
mov dword [esp + 0x4c], eax
mov edx, dword [ebp + 0x24080]
shl edx, 2
mov dword [esp + 0x38], edx
mov ecx, dword [ebp + 0x24084]
shl ecx, 2
mov dword [esp + 0x34], ecx
mov ebx, dword [ebp + 0x24088]
shl ebx, 2
mov dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x24090]
shl eax, 2
mov dword [esp + 0x40], eax
mov edx, dword [ebp + 0x24094]
shl edx, 2
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x94]
add ebx, edi
xor ecx, ecx
mov dword [esp + 0x50], edi
lea eax, [ecx + ecx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fstp dword [ebx]
fld dword [eax + 8]
mov eax, ebx
sub eax, dword [esp + 0x50]
mov edi, dword [esp + 0x3c]
fstp dword [eax + edi]
fld dword [edx + 8]
mov edi, dword [esp + 0x4c]
fstp dword [eax + edi]
fld dword [edx + 0xc]
mov edi, dword [esp + 0x38]
fstp dword [eax + edi]
fld dword [edx + 0x10]
mov edi, dword [esp + 0x34]
fstp dword [eax + edi]
fld dword [edx + 0x14]
mov edi, dword [esp + 0x30]
fstp dword [eax + edi]
fld dword [edx + 0x1c]
mov edi, dword [esp + 0x40]
fstp dword [eax + edi]
fld dword [edx + 0x20]
mov edx, dword [esp + 0x44]
fstp dword [eax + edx]
inc ecx
add ebx, 0x20
cmp esi, ecx
ja 0x646a0f7b
jmp case.0x646a1b7c.5378
mov edi, dword [ebp + 0x24074]
shl edi, 2
mov ebx, dword [ebp + 0x2407c]
shl ebx, 2
mov dword [esp + 0x34], ebx
mov eax, dword [ebp + 0x24080]
shl eax, 2
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x24090]
shl edx, 2
mov dword [esp + 0x30], edx
mov ecx, dword [ebp + 0x24094]
shl ecx, 2
mov dword [esp + 0x40], ecx
mov ebx, dword [ebp + 0x2408c]
shl ebx, 2
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x94]
add eax, edi
xor ebx, ebx
mov dword [esp + 0x44], edi
lea edx, [ebx + ebx*8]
lea edx, [ebp + edx*4 + 0x70]
lea ecx, [edx + 4]
fld dword [edx + 4]
fstp dword [eax]
fld dword [edx + 4]
fstp dword [eax]
fld dword [edx + 0xc]
mov edx, eax
sub edx, dword [esp + 0x44]
mov edi, dword [esp + 0x34]
fstp dword [edx + edi]
fld dword [ecx + 0xc]
mov edi, dword [esp + 0x38]
fstp dword [edx + edi]
fld dword [ecx + 0x18]
mov edi, dword [esp + 0x3c]
fstp dword [edx + edi]
fld dword [ecx + 0x1c]
mov edi, dword [esp + 0x30]
fstp dword [edx + edi]
fld dword [ecx + 0x20]
mov ecx, dword [esp + 0x40]
fstp dword [edx + ecx]
inc ebx
add eax, 0x1c
cmp esi, ebx
ja 0x646a103c
jmp case.0x646a1b7c.5378
mov edi, dword [ebp + 0x24074]
shl edi, 1
mov dword [esp + 0x3c], edi
mov eax, dword [ebp + 0x24078]
shl eax, 1
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x2407c]
shl edx, 1
mov dword [esp + 0x50], edx
mov ecx, dword [ebp + 0x24080]
shl ecx, 1
mov dword [esp + 0x34], ecx
mov ebx, dword [ebp + 0x24084]
shl ebx, 1
mov dword [esp + 0x4c], ebx
mov edi, dword [ebp + 0x24088]
shl edi, 1
mov dword [esp + 0x44], edi
mov eax, dword [ebp + 0x24090]
shl eax, 1
mov dword [esp + 0x40], eax
mov edx, dword [ebp + 0x24094]
shl edx, 1
mov dword [esp + 0x30], edx
mov edi, dword [esp + 0x94]
add edi, edx
xor ebx, ebx
fld1
mov dword [esp + 0x2c], esi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a15e3
fstp st(0)
mov eax, 0xffffffff
mov ecx, edi
sub ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x3c]
mov word [ecx + esi], ax
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a15a6
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x38]
mov word [ecx + esi], ax
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1557
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x50]
mov word [ecx + esi], ax
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a151a
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x34]
mov word [ecx + esi], ax
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a14b0
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x4c]
mov word [ecx + esi], ax
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1432
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x44]
mov word [ecx + esi], ax
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1473
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x40]
mov word [ecx + esi], ax
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a13f1
fstp st(0)
mov eax, 0xffffffff
mov word [edi], ax
inc ebx
add edi, 0x10
cmp dword [esp + 0x2c], ebx
ja 0x646a1106
fstp st(0)
mov esi, dword [esp + 0x2c]
jmp case.0x646a1b7c.5378
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a12c6
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a0e8f
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a12cf
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a0e6a
fstp st(0)
xor eax, eax
jmp 0x646a0e8f
fstp st(0)
xor eax, eax
jmp 0x646a0e6a
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1352
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a0e45
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a135b
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a0e20
fstp st(0)
xor eax, eax
jmp 0x646a0e45
fstp st(0)
xor eax, eax
jmp 0x646a0e20
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a13e8
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a0dfb
je 0x646a0dc9
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a14ed
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a0dd0
fstp st(0)
xor eax, eax
jmp 0x646a0dfb
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a14f6
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1230
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1508
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a11e6
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a14ff
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a120b
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1511
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a11c1
fstp st(0)
xor eax, eax
jmp 0x646a0dd0
fstp st(0)
xor eax, eax
jmp 0x646a1230
fstp st(0)
xor eax, eax
jmp 0x646a120b
fstp st(0)
xor eax, eax
jmp 0x646a11e6
fstp st(0)
xor eax, eax
jmp 0x646a11c1
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1594
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a119c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a159d
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1177
fstp st(0)
xor eax, eax
jmp 0x646a119c
fstp st(0)
xor eax, eax
jmp 0x646a1177
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1620
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1152
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1629
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1127
fstp st(0)
xor eax, eax
jmp 0x646a1152
fstp st(0)
xor eax, eax
jmp 0x646a1127
mov ebx, dword [ebp + 0x24074]
shl ebx, 1
mov dword [esp + 0x40], ebx
mov edi, dword [ebp + 0x24078]
shl edi, 1
mov dword [esp + 0x3c], edi
mov eax, dword [ebp + 0x2407c]
shl eax, 1
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x24080]
shl edx, 1
mov dword [esp + 0x34], edx
mov ecx, dword [ebp + 0x24084]
shl ecx, 1
mov dword [esp + 0x44], ecx
mov ebx, dword [ebp + 0x24088]
shl ebx, 1
mov dword [esp + 0x30], ebx
mov edi, dword [esp + 0x94]
add edi, ebx
xor ebx, ebx
fld1
mov dword [esp + 0x4c], esi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a3ae2
fstp st(0)
mov eax, 0xffffffff
mov ecx, edi
sub ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x40]
mov word [ecx + esi], ax
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3aa5
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x3c]
mov word [ecx + esi], ax
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1932
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x38]
mov word [ecx + esi], ax
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a18f5
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x34]
mov word [ecx + esi], ax
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a18a6
fstp st(0)
mov eax, 0xffffffff
mov esi, dword [esp + 0x44]
mov word [ecx + esi], ax
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1869
fstp st(0)
mov eax, 0xffffffff
mov word [edi], ax
inc ebx
add edi, 0xc
cmp dword [esp + 0x4c], ebx
ja 0x646a168b
fstp st(0)
jmp 0x646a0ea2
mov ecx, dword [ebp + 0x24074]
mov eax, dword [ebp + 0x24078]
xor edx, edx
mov edi, dword [esp + 0x94]
lea ebx, [edi + ecx*2]
lea edi, [edi + eax*2]
mov eax, dword [ebp + 0x24084]
mov ecx, dword [esp + 0x94]
lea eax, [ecx + eax*2]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x24088]
lea eax, [ecx + eax*2]
mov dword [esp + 0x30], eax
fld1
mov dword [esp + 0x34], ebx
lea eax, [edx + edx*8]
lea eax, [ebp + eax*4 + 0x70]
lea ecx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a3e98
fstp st(0)
mov eax, 0xffffffff
mov ebx, dword [esp + 0x34]
mov word [ebx + edx*8], ax
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3e5b
fstp st(0)
mov eax, 0xffffffff
mov word [edi + edx*8], ax
fld dword [ecx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3e0c
fstp st(0)
mov eax, 0xffffffff
mov ebx, dword [esp + 0x38]
mov word [ebx + edx*8], ax
fld dword [ecx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3dcf
fstp st(0)
mov eax, 0xffffffff
mov ecx, dword [esp + 0x30]
mov word [ecx + edx*8], ax
inc edx
cmp esi, edx
ja 0x646a17c5
fstp st(0)
jmp case.0x646a1b7c.5378
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a18e3
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a176b
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a18ec
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1746
fstp st(0)
xor eax, eax
jmp 0x646a176b
fstp st(0)
xor eax, eax
jmp 0x646a1746
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a196f
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1721
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1978
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a16fc
fstp st(0)
xor eax, eax
jmp 0x646a1721
fstp st(0)
xor eax, eax
jmp 0x646a16fc
mov edi, dword [ebp + 0x24074]
shl edi, 2
mov ebx, dword [ebp + 0x24078]
shl ebx, 2
mov dword [esp + 0x40], ebx
mov eax, dword [ebp + 0x2407c]
shl eax, 2
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x24080]
shl edx, 2
mov dword [esp + 0x3c], edx
mov ecx, dword [ebp + 0x24084]
shl ecx, 2
mov dword [esp + 0x30], ecx
mov ebx, dword [ebp + 0x24088]
shl ebx, 2
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x94]
add ebx, edi
xor eax, eax
mov dword [esp + 0x44], edi
lea edx, [eax + eax*8]
lea edx, [ebp + edx*4 + 0x70]
lea ecx, [edx + 4]
fld dword [edx + 4]
fstp dword [ebx]
fld dword [edx + 8]
mov edx, ebx
sub edx, dword [esp + 0x44]
mov edi, dword [esp + 0x40]
fstp dword [edx + edi]
fld dword [ecx + 8]
mov edi, dword [esp + 0x38]
fstp dword [edx + edi]
fld dword [ecx + 0xc]
mov edi, dword [esp + 0x3c]
fstp dword [edx + edi]
fld dword [ecx + 0x10]
mov edi, dword [esp + 0x30]
fstp dword [edx + edi]
fld dword [ecx + 0x14]
mov ecx, dword [esp + 0x34]
fstp dword [edx + ecx]
inc eax
add ebx, 0x18
cmp esi, eax
ja 0x646a19da
jmp case.0x646a1b7c.5378
mov edi, dword [ebp + 0x24074]
shl edi, 2
mov eax, dword [ebp + 0x24078]
shl eax, 2
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x24084]
shl edx, 2
mov dword [esp + 0x34], edx
mov ecx, dword [ebp + 0x24088]
shl ecx, 2
mov dword [esp + 0x30], ecx
mov ebx, dword [esp + 0x94]
add ebx, edi
xor eax, eax
mov dword [esp + 0x3c], edi
lea edx, [eax + eax*8]
lea edx, [ebp + edx*4 + 0x70]
lea ecx, [edx + 4]
fld dword [edx + 4]
fstp dword [ebx]
fld dword [edx + 8]
mov edx, ebx
sub edx, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
fstp dword [edx + edi]
fld dword [ecx + 0x10]
mov edi, dword [esp + 0x34]
fstp dword [edx + edi]
fld dword [ecx + 0x14]
mov ecx, dword [esp + 0x30]
fstp dword [edx + ecx]
inc eax
add ebx, 0x10
cmp esi, eax
ja 0x646a1a6d
jmp case.0x646a1b7c.5378
mov eax, dword [ebp + 0x64]
test eax, eax
je 0x646a1b33
mov edi, dword [esp + 0x94]
xor ebx, ebx
lea edx, [ebx + ebx*8]
lea edx, [ebp + edx*4 + 0x70]
fld dword [edx + 4]
fstp dword [esp + 0x68]
fld dword [edx + 8]
fstp dword [esp + 0x6c]
lea edx, [esp + 0x68]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_bs2b_cross_feed
mov eax, dword [ebp + 0x24074]
fld dword [esp + 0x68]
fstp dword [edi + eax*4]
mov eax, dword [ebp + 0x24078]
fld dword [esp + 0x6c]
fstp dword [edi + eax*4]
add edi, 8
inc ebx
cmp esi, ebx
jbe case.0x646a1b7c.5378
mov eax, dword [ebp + 0x64]
jmp 0x646a1abd
mov edx, dword [ebp + 0x2407c]
xor eax, eax
mov ebx, dword [esp + 0x94]
lea edx, [ebx + edx*4]
lea ecx, [eax + eax*8]
fld dword [ebp + ecx*4 + 0x7c]
fstp dword [edx + eax*4]
inc eax
cmp esi, eax
ja 0x646a1b1f
jmp case.0x646a1b7c.5378
mov ecx, dword [ebp + 0x24074]
mov edx, dword [ebp + 0x24078]
xor eax, eax
mov ebx, dword [esp + 0x94]
lea ecx, [ebx + ecx*4]
lea ebx, [ebx + edx*4]
lea edx, [eax + eax*8]
lea edx, [ebp + edx*4 + 0x70]
fld dword [edx + 4]
fstp dword [ecx + eax*8]
fld dword [edx + 8]
fstp dword [ebx + eax*8]
inc eax
cmp esi, eax
ja 0x646a1b4e
jmp case.0x646a1b7c.5378
mov eax, dword [ebp + 0x10]
sub eax, 0x1500
cmp eax, 6
ja case.0x646a1b7c.5378
jmp dword [eax*4 + 0x64802d24]
mov eax, dword [ebp + 0x10]
sub eax, 0x1500
cmp eax, 6
ja case.0x646a1b7c.5378
jmp dword [eax*4 + 0x64802d40]
mov eax, dword [ebp + 0x10]
sub eax, 0x1500
cmp eax, 6
ja case.0x646a1b7c.5378
jmp dword [eax*4 + 0x64802d5c]
mov edi, dword [ebp + 0x24074]
shl edi, 1
mov dword [esp + 0x38], edi
mov eax, dword [ebp + 0x24078]
shl eax, 1
mov dword [esp + 0x34], eax
mov edx, dword [ebp + 0x2407c]
shl edx, 1
mov dword [esp + 0x40], edx
mov ecx, dword [ebp + 0x24080]
shl ecx, 1
mov dword [esp + 0x3c], ecx
mov ebx, dword [ebp + 0x24084]
shl ebx, 1
mov dword [esp + 0x4c], ebx
mov edi, dword [ebp + 0x24088]
shl edi, 1
mov dword [esp + 0x44], edi
mov eax, dword [ebp + 0x24090]
shl eax, 1
mov dword [esp + 0x50], eax
mov edx, dword [ebp + 0x24094]
shl edx, 1
mov dword [esp + 0x30], edx
mov edi, dword [esp + 0x94]
add edi, edx
xor ebx, ebx
fld1
mov dword [esp + 0x2c], esi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a2003
fstp st(0)
mov eax, 0x7fff
mov ecx, edi
sub ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x38]
mov word [ecx + esi], ax
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1fcb
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x34]
mov word [ecx + esi], ax
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1f7b
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x40]
mov word [ecx + esi], ax
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1f43
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x3c]
mov word [ecx + esi], ax
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4332
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x4c]
mov word [ecx + esi], ax
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a42fa
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x44]
mov word [ecx + esi], ax
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1ef3
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x50]
mov word [ecx + esi], ax
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a1ebb
fstp st(0)
mov eax, 0x7fff
mov word [edi], ax
inc ebx
add edi, 0x10
cmp dword [esp + 0x2c], ebx
ja 0x646a1c24
fstp st(0)
jmp 0x646a1243
mov edi, dword [ebp + 0x24074]
shl edi, 1
mov dword [esp + 0x38], edi
mov eax, dword [ebp + 0x2407c]
shl eax, 1
mov dword [esp + 0x44], eax
mov edx, dword [ebp + 0x24080]
shl edx, 1
mov dword [esp + 0x40], edx
mov ecx, dword [ebp + 0x24090]
shl ecx, 1
mov dword [esp + 0x34], ecx
mov ebx, dword [ebp + 0x24094]
shl ebx, 1
mov dword [esp + 0x30], ebx
mov edi, dword [ebp + 0x2408c]
shl edi, 1
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x94]
add edi, ebx
xor ebx, ebx
fld1
mov dword [esp + 0x4c], esi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a44ca
fstp st(0)
jmp 0x646a1ddf
fstp st(0)
mov eax, 0x7fff
mov ecx, edi
sub ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x38]
mov word [ecx + esi], ax
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4492
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x44]
mov word [ecx + esi], ax
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4442
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x40]
mov word [ecx + esi], ax
fld dword [edx + 0x18]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a440a
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x3c]
mov word [ecx + esi], ax
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a43ba
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x34]
mov word [ecx + esi], ax
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4382
fstp st(0)
mov eax, 0x7fff
mov word [edi], ax
inc ebx
add edi, 0xe
cmp dword [esp + 0x4c], ebx
ja 0x646a1dbf
fstp st(0)
jmp 0x646a0ea2
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1f2b
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1d4e
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1f37
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1d29
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1d4e
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1d29
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1fb3
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1cba
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a1fbf
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1c95
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1cba
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1c95
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a203b
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1c70
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2047
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1c45
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1c70
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1c45
mov eax, dword [ebp + 0x64]
test eax, eax
je 0x646a21f1
mov edi, dword [esp + 0x94]
xor ebx, ebx
lea edx, [ebx + ebx*8]
lea edx, [ebp + edx*4 + 0x70]
fld dword [edx + 4]
fstp dword [esp + 0x68]
fld dword [edx + 8]
fstp dword [esp + 0x6c]
lea edx, [esp + 0x68]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_bs2b_cross_feed
mov eax, dword [ebp + 0x24074]
lea edx, [edi + eax*2]
fld dword [esp + 0x68]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a21b5
fstp st(0)
mov eax, 0x7fff
mov word [edx], ax
mov eax, dword [ebp + 0x24078]
lea edx, [edi + eax*2]
fld dword [esp + 0x6c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2165
fstp st(0)
mov eax, 0x7fff
mov word [edx], ax
add edi, 4
inc ebx
cmp esi, ebx
jbe case.0x646a1b7c.5378
mov eax, dword [ebp + 0x64]
jmp 0x646a2067
mov eax, dword [ebp + 0x2407c]
xor edx, edx
mov ebx, dword [esp + 0x94]
lea ecx, [ebx + eax*2]
fld1
jmp 0x646a2120
fstp st(0)
mov eax, 0x7fff
mov word [ecx + edx*2], ax
inc edx
cmp esi, edx
jbe 0x646a0ea8
lea eax, [edx + edx*8]
fld dword [ebp + eax*4 + 0x7c]
fucom st(1)
fnstsw ax
test ah, 0x45
je 0x646a210c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a21a9
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2113
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a219d
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a20dd
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a20dd
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2113
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2258
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a20b3
mov ecx, dword [ebp + 0x24074]
mov eax, dword [ebp + 0x24078]
xor edx, edx
mov edi, dword [esp + 0x94]
lea ebx, [edi + ecx*2]
lea edi, [edi + eax*2]
fld1
lea eax, [edx + edx*8]
lea eax, [ebp + eax*4 + 0x70]
lea ecx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a2299
fstp st(0)
mov eax, 0x7fff
mov word [ebx + edx*4], ax
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2264
fstp st(0)
mov eax, 0x7fff
mov word [edi + edx*4], ax
inc edx
cmp esi, edx
ja 0x646a220e
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a20b3
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a22d1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2248
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a22dd
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a222b
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2248
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a222b
mov ebx, dword [esp + 0x94]
xor edi, edi
fld1
mov ecx, dword [ebp + 0x24074]
add ecx, ebx
lea eax, [edi + edi*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a291c
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24078]
add ecx, ebx
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a28e0
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x2407c]
add ecx, ebx
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2892
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24080]
add ecx, ebx
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2856
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24084]
add ecx, ebx
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2621
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24088]
add ecx, ebx
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a25e5
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24090]
add ecx, ebx
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2597
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24094]
add ecx, ebx
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a255b
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
add ebx, 8
inc edi
cmp esi, edi
ja 0x646a22f4
fstp st(0)
jmp case.0x646a1b7c.5378
mov edi, dword [esp + 0x94]
xor ebx, ebx
fld1
mov dword [esp + 0x34], esi
mov ecx, dword [ebp + 0x24074]
add ecx, edi
mov dword [esp + 0x30], ecx
lea eax, [ebx + ebx*8]
lea ecx, [ebp + eax*4 + 0x70]
lea edx, [ecx + 4]
fld dword [ecx + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a2808
fstp st(0)
mov al, 0x7f
mov esi, dword [esp + 0x30]
mov byte [esi], al
mov esi, dword [ebp + 0x24074]
add esi, edi
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a27cc
fstp st(0)
mov al, 0x7f
mov byte [esi], al
mov ecx, dword [ebp + 0x2407c]
add ecx, edi
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a277e
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24080]
add ecx, edi
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2742
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x2408c]
add ecx, edi
fld dword [edx + 0x18]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a26eb
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24090]
add ecx, edi
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a26af
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24094]
add ecx, edi
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a266f
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
add edi, 7
inc ebx
cmp dword [esp + 0x34], ebx
ja 0x646a243a
fstp st(0)
mov esi, dword [esp + 0x34]
jmp case.0x646a1b7c.5378
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a25d3
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2416
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a25dc
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a23f2
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2416
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a23f2
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a265d
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a23ce
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2666
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a23aa
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a23ce
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a23aa
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2727
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2540
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2730
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a251c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2739
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a24f8
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2540
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a251c
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a24f8
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a27ba
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a24d4
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a27c3
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a24b0
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a24d4
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a24b0
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2844
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a248c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a284d
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2464
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a248c
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2464
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a28ce
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2386
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a28d7
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2362
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2386
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2362
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2958
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a233e
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2961
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a231a
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a233e
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a231a
mov ebx, dword [esp + 0x94]
xor edi, edi
fld1
mov ecx, dword [ebp + 0x24074]
add ecx, ebx
lea eax, [edi + edi*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a3f23
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24078]
add ecx, ebx
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3ee7
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x2407c]
add ecx, ebx
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2bdc
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24080]
add ecx, ebx
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2ba0
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24084]
add ecx, ebx
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2b52
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24088]
add ecx, ebx
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2b16
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
add ebx, 6
inc edi
cmp esi, edi
ja 0x646a2975
fstp st(0)
jmp case.0x646a1b7c.5378
mov edi, dword [esp + 0x94]
xor ebx, ebx
fld1
mov ecx, dword [ebp + 0x24074]
add ecx, edi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a42ac
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24078]
add ecx, edi
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4270
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24084]
add ecx, edi
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4222
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
mov ecx, dword [ebp + 0x24088]
add ecx, edi
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a41e6
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
add edi, 4
inc ebx
cmp esi, ebx
ja 0x646a2a6f
fstp st(0)
jmp case.0x646a1b7c.5378
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2b8e
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2a4f
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2b97
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2a2b
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2a4f
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2a2b
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2c18
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2a07
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2c21
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a29e3
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2a07
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a29e3
mov ebx, dword [ebp + 0x24074]
shl ebx, 1
mov dword [esp + 0x44], ebx
mov edi, dword [ebp + 0x24078]
shl edi, 1
mov dword [esp + 0x34], edi
mov eax, dword [ebp + 0x2407c]
shl eax, 1
mov dword [esp + 0x38], eax
mov edx, dword [ebp + 0x24080]
shl edx, 1
mov dword [esp + 0x3c], edx
mov ecx, dword [ebp + 0x24084]
shl ecx, 1
mov dword [esp + 0x40], ecx
mov ebx, dword [ebp + 0x24088]
shl ebx, 1
mov dword [esp + 0x30], ebx
mov edi, dword [esp + 0x94]
add edi, ebx
xor ebx, ebx
fld1
mov dword [esp + 0x4c], esi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a30b9
fstp st(0)
mov eax, 0x7fff
mov ecx, edi
sub ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x44]
mov word [ecx + esi], ax
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3081
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x34]
mov word [ecx + esi], ax
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2f21
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x38]
mov word [ecx + esi], ax
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2ee9
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x3c]
mov word [ecx + esi], ax
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2e99
fstp st(0)
mov eax, 0x7fff
mov esi, dword [esp + 0x40]
mov word [ecx + esi], ax
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2e61
fstp st(0)
mov eax, 0x7fff
mov word [edi], ax
inc ebx
add edi, 0xc
cmp dword [esp + 0x4c], ebx
ja 0x646a2c83
fstp st(0)
jmp 0x646a0ea2
mov ecx, dword [ebp + 0x24074]
mov eax, dword [ebp + 0x24078]
xor edx, edx
mov edi, dword [esp + 0x94]
lea ebx, [edi + ecx*2]
lea edi, [edi + eax*2]
mov eax, dword [ebp + 0x24084]
mov ecx, dword [esp + 0x94]
lea eax, [ecx + eax*2]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x24088]
lea eax, [ecx + eax*2]
mov dword [esp + 0x30], eax
fld1
mov dword [esp + 0x34], ebx
lea eax, [edx + edx*8]
lea eax, [ebp + eax*4 + 0x70]
lea ecx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a3031
fstp st(0)
mov eax, 0x7fff
mov ebx, dword [esp + 0x34]
mov word [ebx + edx*8], ax
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2ff9
fstp st(0)
mov eax, 0x7fff
mov word [edi + edx*8], ax
fld dword [ecx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2fa9
fstp st(0)
mov eax, 0x7fff
mov ebx, dword [esp + 0x38]
mov word [ebx + edx*8], ax
fld dword [ecx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a2f71
fstp st(0)
mov eax, 0x7fff
mov ecx, dword [esp + 0x30]
mov word [ecx + edx*8], ax
inc edx
cmp esi, edx
ja 0x646a2dbd
fstp st(0)
jmp case.0x646a1b7c.5378
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2ed1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2d63
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2edd
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2d3e
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2d63
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2d3e
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2f59
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2d19
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2f65
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2cf4
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2d19
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2cf4
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2fe1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2e49
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a2fed
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2e24
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2e49
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2e24
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3069
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2e03
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3075
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2dde
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2e03
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2dde
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a30f1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2ccf
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a30fd
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a2ca4
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2ccf
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a2ca4
mov ebx, dword [esp + 0x94]
xor edi, edi
fld1
mov ecx, dword [ebp + 0x24074]
add ecx, ebx
lea eax, [edi + edi*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a377e
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24078]
add ecx, ebx
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a373d
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x2407c]
add ecx, ebx
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a36ea
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24080]
add ecx, ebx
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a36a9
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24084]
add ecx, ebx
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a33fd
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24088]
add ecx, ebx
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a33bc
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24090]
add ecx, ebx
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3459
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24094]
add ecx, ebx
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3377
fstp st(0)
mov al, 0xff
mov byte [ecx], al
add ebx, 8
inc edi
cmp esi, edi
ja 0x646a3114
fstp st(0)
jmp case.0x646a1b7c.5378
mov edi, dword [esp + 0x94]
xor ebx, ebx
fld1
mov dword [esp + 0x34], esi
mov ecx, dword [ebp + 0x24074]
add ecx, edi
mov dword [esp + 0x30], ecx
lea eax, [ebx + ebx*8]
lea ecx, [ebp + eax*4 + 0x70]
lea edx, [ecx + 4]
fld dword [ecx + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a3656
fstp st(0)
mov al, 0xff
mov esi, dword [esp + 0x30]
mov byte [esi], al
mov esi, dword [ebp + 0x24074]
add esi, edi
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3615
fstp st(0)
mov al, 0xff
mov byte [esi], al
mov ecx, dword [ebp + 0x2407c]
add ecx, edi
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a35c2
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24080]
add ecx, edi
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3581
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x2408c]
add ecx, edi
fld dword [edx + 0x18]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a352e
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24090]
add ecx, edi
fld dword [edx + 0x1c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a34ed
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24094]
add ecx, edi
fld dword [edx + 0x20]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a349a
fstp st(0)
mov al, 0xff
mov byte [ecx], al
add edi, 7
inc ebx
cmp dword [esp + 0x34], ebx
ja 0x646a325a
fstp st(0)
jmp 0x646a2552
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a343e
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3236
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3447
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a31ee
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3450
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a31ca
fstp st(0)
xor eax, eax
jmp 0x646a3236
fstp st(0)
xor eax, eax
jmp 0x646a31ee
fstp st(0)
xor eax, eax
jmp 0x646a31ca
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a34db
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3212
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a34e4
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3360
fstp st(0)
xor eax, eax
jmp 0x646a3212
fstp st(0)
xor eax, eax
jmp 0x646a3360
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a356f
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a333c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3578
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3318
fstp st(0)
xor eax, eax
jmp 0x646a333c
fstp st(0)
xor eax, eax
jmp 0x646a3318
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3603
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a32f4
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a360c
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a32d0
fstp st(0)
xor eax, eax
jmp 0x646a32f4
fstp st(0)
xor eax, eax
jmp 0x646a32d0
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3697
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a32ac
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a36a0
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3284
fstp st(0)
xor eax, eax
jmp 0x646a32ac
fstp st(0)
xor eax, eax
jmp 0x646a3284
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a372b
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a31a6
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3734
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3182
fstp st(0)
xor eax, eax
jmp 0x646a31a6
fstp st(0)
xor eax, eax
jmp 0x646a3182
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a37bf
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a315e
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a37c8
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a313a
fstp st(0)
xor eax, eax
jmp 0x646a315e
fstp st(0)
xor eax, eax
jmp 0x646a313a
mov ebx, dword [esp + 0x94]
xor edi, edi
fld1
mov ecx, dword [ebp + 0x24074]
add ecx, ebx
lea eax, [edi + edi*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a46d3
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24078]
add ecx, ebx
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4518
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x2407c]
add ecx, ebx
fld dword [edx + 8]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3a52
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24080]
add ecx, ebx
fld dword [edx + 0xc]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3a11
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24084]
add ecx, ebx
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a39be
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24088]
add ecx, ebx
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a397d
fstp st(0)
mov al, 0xff
mov byte [ecx], al
add ebx, 6
inc edi
cmp esi, edi
ja 0x646a37dc
fstp st(0)
jmp case.0x646a1b7c.5378
mov edi, dword [esp + 0x94]
xor ebx, ebx
fld1
mov ecx, dword [ebp + 0x24074]
add ecx, edi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea edx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a47a9
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24078]
add ecx, edi
fld dword [edx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4636
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24084]
add ecx, edi
fld dword [edx + 0x10]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4677
fstp st(0)
mov al, 0xff
mov byte [ecx], al
mov ecx, dword [ebp + 0x24088]
add ecx, edi
fld dword [edx + 0x14]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a455d
fstp st(0)
mov al, 0xff
mov byte [ecx], al
add edi, 4
inc ebx
cmp esi, ebx
ja 0x646a38d6
fstp st(0)
jmp case.0x646a1b7c.5378
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a39ff
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a38b6
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3a08
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3892
fstp st(0)
xor eax, eax
jmp 0x646a38b6
fstp st(0)
xor eax, eax
jmp 0x646a3892
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3a93
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a386e
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3a9c
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a384a
fstp st(0)
xor eax, eax
jmp 0x646a386e
fstp st(0)
xor eax, eax
jmp 0x646a384a
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3b1f
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a16d7
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3b28
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a16ac
fstp st(0)
xor eax, eax
jmp 0x646a16d7
fstp st(0)
xor eax, eax
jmp 0x646a16ac
mov eax, dword [ebp + 0x64]
test eax, eax
je 0x646a3cd6
mov edi, dword [esp + 0x94]
xor ebx, ebx
lea edx, [ebx + ebx*8]
lea edx, [ebp + edx*4 + 0x70]
fld dword [edx + 4]
fstp dword [esp + 0x68]
fld dword [edx + 8]
fstp dword [esp + 0x6c]
lea edx, [esp + 0x68]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_bs2b_cross_feed
mov eax, dword [ebp + 0x24074]
lea edx, [edi + eax*2]
fld dword [esp + 0x68]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3c95
fstp st(0)
mov eax, 0xffffffff
mov word [edx], ax
mov eax, dword [ebp + 0x24078]
lea edx, [edi + eax*2]
fld dword [esp + 0x6c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3c46
fstp st(0)
mov eax, 0xffffffff
mov word [edx], ax
add edi, 4
inc ebx
cmp esi, ebx
jbe case.0x646a1b7c.5378
mov eax, dword [ebp + 0x64]
jmp 0x646a3b45
mov eax, dword [ebp + 0x2407c]
xor edx, edx
mov ebx, dword [esp + 0x94]
lea ecx, [ebx + eax*2]
fld1
jmp 0x646a3bfc
fstp st(0)
mov eax, 0xffffffff
mov word [ecx + edx*2], ax
inc edx
cmp esi, edx
jbe 0x646a0eac
lea eax, [edx + edx*8]
fld dword [ebp + eax*4 + 0x7c]
fucom st(1)
fnstsw ax
test ah, 0x45
je 0x646a3be8
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3c8c
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a3bef
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3c83
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a3bbb
fstp st(0)
xor eax, eax
jmp 0x646a3bbb
fstp st(0)
xor eax, eax
jmp 0x646a3bef
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3d3d
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a3b91
mov ecx, dword [ebp + 0x24074]
mov eax, dword [ebp + 0x24078]
xor edx, edx
mov edi, dword [esp + 0x94]
lea ebx, [edi + ecx*2]
lea edi, [edi + eax*2]
fld1
lea eax, [edx + edx*8]
lea eax, [ebp + eax*4 + 0x70]
lea ecx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a3d80
fstp st(0)
mov eax, 0xffffffff
mov word [ebx + edx*4], ax
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a3d46
fstp st(0)
mov eax, 0xffffffff
mov word [edi + edx*4], ax
inc edx
cmp esi, edx
ja 0x646a3cf3
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
xor eax, eax
jmp 0x646a3b91
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3dbd
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a3d2d
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3dc6
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a3d10
fstp st(0)
xor eax, eax
jmp 0x646a3d2d
fstp st(0)
xor eax, eax
jmp 0x646a3d10
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3e49
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a1851
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3e52
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a182c
fstp st(0)
xor eax, eax
jmp 0x646a1851
fstp st(0)
xor eax, eax
jmp 0x646a182c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3ed5
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a180b
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3ede
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
jmp 0x646a17e6
fstp st(0)
xor eax, eax
jmp 0x646a180b
fstp st(0)
xor eax, eax
jmp 0x646a17e6
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3f5f
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a29bf
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a3f68
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a299b
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a29bf
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a299b
mov eax, dword [ebp + 0x64]
mov edi, dword [esp + 0x94]
xor ebx, ebx
test eax, eax
je 0x646a4101
lea edx, [ebx + ebx*8]
lea edx, [ebp + edx*4 + 0x70]
fld dword [edx + 4]
fstp dword [esp + 0x68]
fld dword [edx + 8]
fstp dword [esp + 0x6c]
lea edx, [esp + 0x68]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_bs2b_cross_feed
mov edx, dword [ebp + 0x24074]
add edx, edi
fld dword [esp + 0x68]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a40c1
fstp st(0)
mov al, 0x7f
mov byte [edx], al
mov edx, dword [ebp + 0x24078]
add edx, edi
fld dword [esp + 0x6c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4073
fstp st(0)
mov al, 0x7f
mov byte [edx], al
add edi, 2
inc ebx
cmp esi, ebx
jbe case.0x646a1b7c.5378
mov eax, dword [ebp + 0x64]
jmp 0x646a3f85
xor edx, edx
fld1
jmp 0x646a401b
fstp st(0)
mov al, 0x7f
mov byte [ecx], al
inc edx
cmp esi, edx
jbe 0x646a0eb0
mov ecx, dword [esp + 0x94]
add ecx, edx
add ecx, dword [ebp + 0x2407c]
lea eax, [edx + edx*8]
fld dword [ebp + eax*4 + 0x7c]
fucom st(1)
fnstsw ax
test ah, 0x45
je 0x646a400c
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a40b8
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a4010
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a40af
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a3ff2
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a3ff2
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a4010
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4156
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a3fcd
fld1
mov edx, dword [ebp + 0x24074]
add edx, edi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea ecx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a4198
fstp st(0)
mov al, 0x7f
mov byte [edx], al
mov edx, dword [ebp + 0x24078]
add edx, edi
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a415f
fstp st(0)
mov al, 0x7f
mov byte [edx], al
add edi, 2
inc ebx
cmp esi, ebx
ja 0x646a4103
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a3fcd
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a41d4
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a4145
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a41dd
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a4125
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a4145
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a4125
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a425e
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2b01
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4267
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2add
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2b01
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2add
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a42e8
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2ab9
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a42f1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
shr ax, 8
jmp 0x646a2a95
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2ab9
fstp st(0)
mov al, pe_nt_image_headers32
jmp 0x646a2a95
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a436a
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1d04
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4376
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1cdf
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1d04
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1cdf
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a43f2
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1ea3
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a43fe
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1e7e
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1ea3
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1e7e
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a447a
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1e59
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4486
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1e34
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1e59
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1e34
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a450c
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1e0f
je 0x646a1ddd
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4714
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
jmp 0x646a1de4
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1e0f
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a46b8
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3826
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a47a0
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3968
mov eax, dword [ebp + 0x64]
mov edi, dword [esp + 0x94]
xor ebx, ebx
test eax, eax
je 0x646a4878
lea edx, [ebx + ebx*8]
lea edx, [ebp + edx*4 + 0x70]
fld dword [edx + 4]
fstp dword [esp + 0x68]
fld dword [edx + 8]
fstp dword [esp + 0x6c]
lea edx, [esp + 0x68]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.allegro_5.0.10_monolith_mt.dll_bs2b_cross_feed
mov edx, dword [ebp + 0x24074]
add edx, edi
fld dword [esp + 0x68]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a47ee
fstp st(0)
mov al, 0xff
mov byte [edx], al
mov edx, dword [ebp + 0x24078]
add edx, edi
fld dword [esp + 0x6c]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a4833
fstp st(0)
mov al, 0xff
mov byte [edx], al
add edi, 2
inc ebx
cmp esi, ebx
jbe case.0x646a1b7c.5378
mov eax, dword [ebp + 0x64]
jmp 0x646a45b6
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a46c1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3920
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a46ca
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3944
fstp st(0)
xor eax, eax
jmp 0x646a3826
fstp st(0)
xor eax, eax
jmp 0x646a3920
fstp st(0)
xor eax, eax
jmp 0x646a3944
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4720
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a3802
fstp st(0)
mov eax, 0xffff8000
jmp 0x646a1de4
fstp st(0)
xor eax, eax
jmp 0x646a3802
xor edx, edx
fld1
jmp 0x646a473f
fstp st(0)
mov al, 0xff
mov byte [ecx], al
inc edx
cmp esi, edx
jbe 0x646a0eb4
mov ecx, dword [esp + 0x94]
add ecx, edx
add ecx, dword [ebp + 0x2407c]
lea eax, [edx + edx*8]
fld dword [ebp + eax*4 + 0x7c]
fucom st(1)
fnstsw ax
test ah, 0x45
je 0x646a4730
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a48d1
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a4734
fstp st(0)
xor eax, eax
jmp 0x646a3968
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a48e3
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a38fc
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a48da
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a45fe
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a48ec
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a4623
fld1
mov edx, dword [ebp + 0x24074]
add edx, edi
lea eax, [ebx + ebx*8]
lea eax, [ebp + eax*4 + 0x70]
lea ecx, [eax + 4]
fld dword [eax + 4]
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x646a4933
fstp st(0)
mov al, 0xff
mov byte [edx], al
mov edx, dword [ebp + 0x24078]
add edx, edi
fld dword [ecx + 4]
fld1
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
jne 0x646a48f5
fstp st(0)
mov al, 0xff
mov byte [edx], al
add edi, 2
inc ebx
cmp esi, ebx
ja 0x646a487a
fstp st(0)
jmp case.0x646a1b7c.5378
fstp st(0)
xor eax, eax
jmp 0x646a4734
fstp st(0)
xor eax, eax
jmp 0x646a45fe
fstp st(0)
xor eax, eax
jmp 0x646a38fc
fstp st(0)
xor eax, eax
jmp 0x646a4623
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a4974
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a48c0
fld1
fchs
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x646a497d
fmul dword [0x64802dc4]
fnstcw word [esp + 0x5e]
mov ax, word [esp + 0x5e]
mov ah, 0xc
mov word [esp + 0x5c], ax
fldcw word [esp + 0x5c]
fistp dword [esp + 0x58]
fldcw word [esp + 0x5e]
mov eax, dword [esp + 0x58]
sub eax, 0x8000
shr ax, 8
jmp 0x646a48a0
fstp st(0)
xor eax, eax
jmp 0x646a48c0
fstp st(0)
xor eax, eax
jmp 0x646a48a0