Function at 0x40f220
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe4
push esi
xorps xmm0, xmm0
movsd qword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x24], xmm0
xor eax, eax
mov word [0x47a15c], ax
push 0x43cc0c
call fcn.004022d0
add esp, 4
xor ecx, ecx
mov word [ebp - 0x1c], cx
mov edx, 1
mov word [ebp - 4], dx
jmp 0x40f26c
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f314]
cmp ecx, edx
jg 0x40f295
movsx eax, word [ebp - 4]
imul ecx, eax, 0x68
movsx edx, word [ecx + 0x467f7c]
movsx eax, word [ebp - 0x1c]
add eax, edx
mov word [ebp - 0x1c], ax
jmp 0x40f260
movsx ecx, word [0x47f316]
movsx edx, word [ebp - 0x1c]
add edx, ecx
mov word [ebp - 0x1c], dx
mov dword [0x47a3b8], 0x1069
movsx eax, word [ebp - 0x1c]
movsx ecx, word [0x47a15c]
sub eax, ecx
mov word [0x47a3bc], ax
mov byte [0x448278], 0
mov byte [0x448279], 0
mov byte [0x44827a], 0
movsx edx, word [0x47a3bc]
movsx eax, word [0x47f648]
sub eax, 1
cmp edx, eax
jle 0x40f2fe
movsx ecx, word [0x47f648]
sub ecx, 1
mov word [0x47a3bc], cx
mov dx, word [0x47a15c]
mov word [0x467f74], dx
mov eax, 1
mov word [ebp - 4], ax
jmp 0x40f323
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [0x47f638]
cmp edx, eax
jg 0x40f4a1
movsx ecx, word [ebp - 4]
movsx edx, word [ecx*2 + 0x47abec]
cmp edx, dword [0x47a158]
jne 0x40f49c
movsx eax, word [ebp - 4]
movsx ecx, word [eax*2 + 0x47a2f0]
push ecx
push 0x43cc20
push 0x4ccdd8
call fcn.00401f00
add esp, 0xc
push 0x4ccaf0
push 0x4ccdd8
push 0x43cc24
push 0x4ccce0
push 0x43cc28
push 0x4cc900
call fcn.00401f00
add esp, 0x18
push 0x43cc34
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
jne 0x40f3b8
jmp 0x410a18
push 0
movsx edx, word [0x47a15c]
shl edx, 3
push edx
mov eax, dword [0x46ac90]
push eax
call fcn.0042bbe9
add esp, 0xc
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x40f3ea
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40f421
mov edx, dword [0x46ac90]
push edx
push 1
push 8
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 8]
mov edx, dword [eax*4 + 0x449fa8]
lea eax, [edx + ecx*8]
push eax
call fcn.0042b7c5
add esp, 0x10
jmp 0x40f3de
mov ecx, dword [0x46ac90]
push ecx
call fcn.0042b45f
add esp, 4
movsx edx, word [ebp - 4]
movzx eax, byte [edx + 0x448280]
test eax, eax
jne 0x40f49c
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x40f456
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40f49c
movsx edx, word [ebp - 4]
movsx eax, word [ebp - 8]
mov ecx, dword [edx*4 + 0x449fa8]
movsx edx, word [ebp - 4]
cvtss2sd xmm0, dword [edx*4 + 0x47aed4]
mulsd xmm0, qword [ecx + eax*8]
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 8]
mov edx, dword [eax*4 + 0x449fa8]
movsd qword [edx + ecx*8], xmm0
jmp 0x40f44a
jmp 0x40f317
mov eax, 1
mov word [ebp - 4], ax
jmp 0x40f4b8
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [0x47f628]
cmp edx, eax
jg 0x40f614
xor ecx, ecx
mov word [ebp - 0x18], cx
mov edx, 1
mov word [ebp - 0x14], dx
jmp 0x40f4e8
mov ax, word [ebp - 0x14]
add ax, 1
mov word [ebp - 0x14], ax
movsx ecx, word [ebp - 0x14]
movsx edx, word [0x47f638]
cmp ecx, edx
jg 0x40f60f
movsx eax, word [ebp - 0x14]
movsx ecx, word [eax*2 + 0x47abec]
cmp ecx, dword [0x47a158]
jne 0x40f60a
movsx edx, word [ebp - 0x14]
movsx eax, byte [edx + 0x47a4f0]
cmp eax, 0x47
jne 0x40f60a
movsx ecx, word [ebp - 0x14]
movsx edx, word [ecx*2 + 0x47a998]
movsx eax, word [ebp - 4]
cmp edx, eax
jne 0x40f60a
movsx ecx, word [ebp - 0x18]
test ecx, ecx
jne 0x40f58f
mov dx, word [ebp - 0x14]
mov word [ebp - 0x18], dx
movsx eax, word [ebp - 0x14]
movsx ecx, byte [eax + 0x47a3c6]
cmp ecx, 0x41
jne 0x40f577
movsx edx, word [ebp - 0x14]
mov byte [edx + 0x47a4f0], 0x41
movsx eax, word [ebp - 0x14]
mov byte [eax + 0x47a86e], 0x54
jmp 0x40f582
movsx ecx, word [ebp - 0x14]
mov byte [ecx + 0x47a4f0], 0x51
movsx edx, word [ebp - 0x18]
mov byte [edx + 0x47b898], 1
jmp 0x40f59a
movsx eax, word [ebp - 0x14]
mov byte [eax + 0x47b898], 0
movsx ecx, word [ebp - 0x14]
movsx edx, word [ebp - 0x18]
cmp ecx, edx
je 0x40f60a
mov eax, 1
mov word [ebp - 8], ax
jmp 0x40f5bd
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40f60a
movsx ecx, word [ebp - 0x18]
movsx edx, word [ebp - 8]
mov eax, dword [ecx*4 + 0x449fa8]
movsx ecx, word [ebp - 0x14]
movsx esi, word [ebp - 8]
mov ecx, dword [ecx*4 + 0x449fa8]
movsd xmm0, qword [eax + edx*8]
addsd xmm0, qword [ecx + esi*8]
movsx edx, word [ebp - 0x18]
movsx eax, word [ebp - 8]
mov ecx, dword [edx*4 + 0x449fa8]
movsd qword [ecx + eax*8], xmm0
jmp 0x40f5b1
jmp 0x40f4dc
jmp 0x40f4ac
mov edx, 1
mov word [ebp - 4], dx
jmp 0x40f62b
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f638]
cmp ecx, edx
jg 0x40f6f6
movsx eax, word [ebp - 4]
movsx ecx, word [eax*2 + 0x47abec]
cmp ecx, dword [0x47a158]
jne 0x40f6f1
movsx edx, word [ebp - 4]
movsx eax, byte [edx + 0x47a86e]
cmp eax, 0x54
jne 0x40f6f1
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x40f681
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40f6e6
movsx edx, word [ebp - 4]
movsx eax, word [ebp - 8]
mov ecx, dword [edx*4 + 0x449fa8]
movsx edx, word [0x467f74]
movsx esi, word [ebp - 8]
add edx, esi
movsd xmm0, qword [ecx + eax*8]
movsd qword [edx*8 + 0x490978], xmm0
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 8]
mov edx, dword [eax*4 + 0x449fa8]
movsx eax, word [0x467f74]
movsx esi, word [ebp - 8]
add eax, esi
movsd xmm0, qword [edx + ecx*8]
movsd qword [eax*8 + 0x498cc0], xmm0
jmp 0x40f675
mov byte [0x448278], 1
jmp 0x40f6f6
jmp 0x40f61f
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x40f70d
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40f818
movsx edx, word [ebp - 4]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40f813
movsx ecx, word [ebp - 4]
movsx edx, byte [ecx + 0x47a86e]
cmp edx, 0x54
jne 0x40f813
mov eax, 1
mov word [ebp - 8], ax
jmp 0x40f763
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40f813
movsx ecx, word [ebp - 4]
movsx edx, word [ebp - 8]
mov eax, dword [ecx*4 + 0x449fa8]
movsd xmm0, qword [eax + edx*8]
movsd qword [0x449c48], xmm0
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 8]
add ecx, edx
movsd xmm0, qword [0x449c48]
comisd xmm0, xmmword [ecx*8 + 0x498cc0]
jbe 0x40f7d0
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 8]
add eax, ecx
movsd xmm0, qword [0x449c48]
movsd qword [eax*8 + 0x498cc0], xmm0
movsx edx, word [0x467f74]
movsx eax, word [ebp - 8]
add edx, eax
movsd xmm0, qword [edx*8 + 0x490978]
comisd xmm0, xmmword [0x449c48]
jbe 0x40f80e
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 8]
add ecx, edx
movsd xmm0, qword [0x449c48]
movsd qword [ecx*8 + 0x490978], xmm0
jmp 0x40f757
jmp 0x40f701
movzx eax, byte [0x448278]
test eax, eax
je 0x40f987
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x40f83e
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40f987
movsx edx, word [ebp - 4]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40f982
movsx ecx, word [ebp - 4]
movsx edx, byte [ecx + 0x47a4f0]
cmp edx, 0x41
jne 0x40f8f8
movzx eax, byte [0x44827a]
test eax, eax
jne 0x40f8f8
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x40f89b
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40f8d6
movsx edx, word [0x467f74]
movsx eax, word [ebp - 8]
add edx, eax
movsx ecx, word [ebp - 4]
movsx eax, word [ebp - 8]
mov ecx, dword [ecx*4 + 0x449fa8]
movsd xmm0, qword [edx*8 + 0x498cc0]
movsd qword [ecx + eax*8], xmm0
jmp 0x40f88f
mov byte [0x44827a], 1
movsx edx, word [ebp - 4]
mov byte [edx + 0x47a4f0], 0x58
movsx eax, word [ebp - 4]
mov byte [eax + 0x47b898], 1
jmp 0x40f832
movsx ecx, word [ebp - 4]
movsx edx, byte [ecx + 0x47a4f0]
cmp edx, 0x41
jne 0x40f982
movzx eax, byte [0x448279]
test eax, eax
jne 0x40f982
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x40f92a
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40f965
movsx edx, word [0x467f74]
movsx eax, word [ebp - 8]
add edx, eax
movsx ecx, word [ebp - 4]
movsx eax, word [ebp - 8]
mov ecx, dword [ecx*4 + 0x449fa8]
movsd xmm0, qword [edx*8 + 0x490978]
movsd qword [ecx + eax*8], xmm0
jmp 0x40f91e
mov byte [0x448279], 1
movsx edx, word [ebp - 4]
mov byte [edx + 0x47a4f0], 0x4d
movsx eax, word [ebp - 4]
mov byte [eax + 0x47b898], 1
jmp 0x40f832
movsx ecx, word [0x47f638]
push ecx
call fcn.00402400
add esp, 4
mov edx, 1
mov word [ebp - 8], dx
jmp 0x40f9ae
mov ax, word [ebp - 8]
add ax, 1
mov word [ebp - 8], ax
movsx ecx, word [ebp - 8]
movsx edx, word [0x47a3bc]
cmp ecx, edx
jg 0x40f9f1
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 8]
add eax, ecx
xorps xmm0, xmm0
movsd qword [eax*8 + 0x490978], xmm0
movsx edx, word [0x467f74]
movsx eax, word [ebp - 8]
add edx, eax
xorps xmm0, xmm0
movsd qword [edx*8 + 0x498cc0], xmm0
jmp 0x40f9a2
mov dword [ebp - 0x50], 0
call fcn.00401260
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x40fa14
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40fc00
movsx edx, word [ebp - 4]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40fbfb
movsx ecx, word [ebp - 4]
movsx edx, word [ecx*2 + 0x47abec]
cmp edx, 1
je 0x40fa65
movsx eax, word [ebp - 4]
movsx ecx, word [eax*2 + 0x47abec]
cmp ecx, 0xc
jne 0x40fbfb
mov edx, 1
mov word [ebp - 8], dx
jmp 0x40fa7c
mov ax, word [ebp - 8]
add ax, 1
mov word [ebp - 8], ax
movsx ecx, word [ebp - 8]
movsx edx, word [0x47a3bc]
cmp ecx, edx
jg 0x40fbfb
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 8]
mov edx, dword [eax*4 + 0x449fa8]
movsx eax, word [ebp - 4]
cvtss2sd xmm0, dword [eax*4 + 0x47b0c8]
mulsd xmm0, qword [edx + ecx*8]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x30], xmm0
movsx ecx, word [ebp - 4]
movsx edx, word [ebp - 8]
mov eax, dword [ecx*4 + 0x449fa8]
movsx ecx, word [ebp - 4]
cvtss2sd xmm0, dword [ecx*4 + 0x47b258]
mulsd xmm0, qword [eax + edx*8]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x34], xmm0
movss xmm0, dword [ebp - 0x34]
comiss xmm0, dword [ebp - 0x30]
jbe 0x40fafa
movss xmm0, dword [ebp - 0x30]
movss dword [ebp - 0x40], xmm0
jmp 0x40fb04
movss xmm0, dword [ebp - 0x34]
movss dword [ebp - 0x40], xmm0
movss xmm0, dword [ebp - 0x40]
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [ebp - 0x30]
comiss xmm0, dword [ebp - 0x34]
jbe 0x40fb25
movss xmm0, dword [ebp - 0x30]
movss dword [ebp - 0x44], xmm0
jmp 0x40fb2f
movss xmm0, dword [ebp - 0x34]
movss dword [ebp - 0x44], xmm0
movss xmm0, dword [ebp - 0x44]
movss dword [ebp - 0x4c], xmm0
movsx edx, word [ebp - 4]
movsx eax, byte [edx + 0x47a86e]
cmp eax, 0x57
je 0x40fbad
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 8]
add ecx, edx
cvtss2sd xmm0, dword [ebp - 0x48]
addsd xmm0, qword [ecx*8 + 0x490978]
movsx eax, word [ebp - 8]
movsx ecx, word [0x467f74]
add ecx, eax
movsd qword [ecx*8 + 0x490978], xmm0
movsx edx, word [0x467f74]
movsx eax, word [ebp - 8]
add edx, eax
cvtss2sd xmm0, dword [ebp - 0x4c]
addsd xmm0, qword [edx*8 + 0x498cc0]
movsx ecx, word [ebp - 8]
movsx edx, word [0x467f74]
add edx, ecx
movsd qword [edx*8 + 0x498cc0], xmm0
jmp 0x40fbf6
mov dword [ebp - 0x50], 1
mov eax, 0x2c
shl eax, 0
movsx ecx, word [ebp - 4]
movsx edx, word [ebp - 8]
mov eax, dword [eax + ecx*4 + 0x46ac98]
movss xmm0, dword [ebp - 0x48]
movss dword [eax + edx*4], xmm0
mov ecx, 0x2c
shl ecx, 0
movsx edx, word [ebp - 4]
movsx eax, word [ebp - 8]
mov ecx, dword [ecx + edx*4 + 0x46adf8]
movss xmm0, dword [ebp - 0x4c]
movss dword [ecx + eax*4], xmm0
jmp 0x40fa70
jmp 0x40fa08
cmp dword [ebp - 0x50], 1
jne 0x40fcd9
mov edx, 1
mov word [ebp - 8], dx
jmp 0x40fc21
mov ax, word [ebp - 8]
add ax, 1
mov word [ebp - 8], ax
movsx ecx, word [ebp - 8]
movsx edx, word [0x47a3bc]
cmp ecx, edx
jg 0x40fcd9
movsx esi, word [0x467f74]
movsx eax, word [ebp - 8]
add esi, eax
movsx ecx, word [ebp - 8]
push ecx
movsx edx, word [0x47f638]
push edx
push 1
push 1
call section..text
add esp, 0x10
fstp qword [ebp - 0x7c]
movsd xmm0, qword [ebp - 0x7c]
addsd xmm0, qword [esi*8 + 0x490978]
movsx eax, word [ebp - 8]
movsx ecx, word [0x467f74]
add ecx, eax
movsd qword [ecx*8 + 0x490978], xmm0
movsx esi, word [0x467f74]
movsx edx, word [ebp - 8]
add esi, edx
movsx eax, word [ebp - 8]
push eax
movsx ecx, word [0x47f638]
push ecx
push 1
push 1
call fcn.00401130
add esp, 0x10
fstp qword [ebp - 0x84]
movsd xmm0, qword [ebp - 0x84]
addsd xmm0, qword [esi*8 + 0x498cc0]
movsx edx, word [ebp - 8]
movsx eax, word [0x467f74]
add eax, edx
movsd qword [eax*8 + 0x498cc0], xmm0
jmp 0x40fc15
cmp dword [0x47a158], 1
je 0x40fceb
cmp dword [0x47a158], 0xc
jne 0x40fcf5
jmp 0x41002c
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x40fd0c
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x41002c
mov edx, 1
mov word [ebp - 0x10], dx
jmp 0x40fd36
mov ax, word [ebp - 0x10]
add ax, 1
mov word [ebp - 0x10], ax
movsx ecx, word [ebp - 0x10]
movsx edx, word [0x47a3c4]
cmp ecx, edx
jg 0x40ff18
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 8]
add eax, ecx
movsd xmm0, qword [eax*8 + 0x490978]
movsd qword [ebp - 0x2c], xmm0
movsx edx, word [0x467f74]
movsx eax, word [ebp - 8]
add edx, eax
movsd xmm0, qword [edx*8 + 0x498cc0]
movsd qword [ebp - 0x24], xmm0
movsx ecx, word [ebp - 0x10]
movsx edx, word [ecx*2 + 0x47ade0]
cmp edx, 1
je 0x40fda1
movsx eax, word [ebp - 0x10]
movsx ecx, word [eax*2 + 0x47ade0]
cmp ecx, 0xc
jne 0x40fda3
jmp 0x40fd2a
mov edx, 1
mov word [ebp - 4], dx
jmp 0x40fdba
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f638]
cmp ecx, edx
jg 0x40feef
movsx eax, word [ebp - 4]
movzx ecx, byte [eax + 0x47b898]
cmp ecx, 1
jne 0x40feea
movsx edx, word [ebp - 4]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40feea
movsx ecx, word [ebp - 4]
movsx edx, word [ecx*2 + 0x47abec]
movsx eax, word [ebp - 0x10]
movsx ecx, word [eax*2 + 0x47ade0]
cmp edx, ecx
jne 0x40fe40
movsx edx, word [ebp - 4]
movsx eax, word [ebp - 8]
mov ecx, dword [edx*4 + 0x449fa8]
movsx edx, word [ebp - 4]
cvtss2sd xmm0, dword [edx*4 + 0x47b0c8]
mulsd xmm0, qword [ecx + eax*8]
movsd qword [0x449c48], xmm0
jmp 0x40fe7a
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 8]
mov edx, dword [eax*4 + 0x449fa8]
movsx eax, word [ebp - 4]
cvtss2sd xmm0, dword [eax*4 + 0x47b0c8]
mulsd xmm0, qword [edx + ecx*8]
movsx ecx, word [ebp - 4]
cvtss2sd xmm1, dword [ecx*4 + 0x47b3e8]
mulsd xmm0, xmm1
movsd qword [0x449c48], xmm0
movsx edx, word [ebp - 4]
movsx eax, byte [edx + 0x47a4f0]
cmp eax, 0x4d
je 0x40feb0
movsd xmm0, qword [ebp - 0x24]
addsd xmm0, qword [0x449c48]
comisd xmm0, xmmword [ebp - 0x24]
jbe 0x40feb0
movsd xmm0, qword [ebp - 0x24]
addsd xmm0, qword [0x449c48]
movsd qword [ebp - 0x24], xmm0
movsx ecx, word [ebp - 4]
movsx edx, byte [ecx + 0x47a4f0]
cmp edx, 0x58
je 0x40feea
movsd xmm0, qword [ebp - 0x2c]
addsd xmm0, qword [0x449c48]
movsd xmm1, qword [ebp - 0x2c]
comisd xmm1, xmm0
jbe 0x40feea
movsd xmm0, qword [ebp - 0x2c]
addsd xmm0, qword [0x449c48]
movsd qword [ebp - 0x2c], xmm0
jmp 0x40fdae
movsx eax, word [ebp - 0x10]
movsd xmm0, qword [ebp - 0x2c]
movsd qword [eax*8 + 0x449c68], xmm0
movsx ecx, word [ebp - 0x10]
movsd xmm0, qword [ebp - 0x24]
movsd qword [ecx*8 + 0x449d10], xmm0
jmp 0x40fd2a
mov dword [ebp - 0x54], 0
mov edx, 1
mov word [ebp - 0x10], dx
jmp 0x40ff36
mov ax, word [ebp - 0x10]
add ax, 1
mov word [ebp - 0x10], ax
movsx ecx, word [ebp - 0x10]
movsx edx, word [0x47a3c4]
cmp ecx, edx
jg 0x40fff1
movsx eax, word [ebp - 0x10]
movsx ecx, word [eax*2 + 0x47ade0]
cmp ecx, 1
je 0x40ff6b
movsx edx, word [ebp - 0x10]
movsx eax, word [edx*2 + 0x47ade0]
cmp eax, 0xc
jne 0x40ff6d
jmp 0x40ff2a
cmp dword [ebp - 0x54], 0
jne 0x40ffa0
movsx ecx, word [ebp - 0x10]
movsd xmm0, qword [ecx*8 + 0x449c68]
movsd qword [ebp - 0x2c], xmm0
movsx edx, word [ebp - 0x10]
movsd xmm0, qword [edx*8 + 0x449d10]
movsd qword [ebp - 0x24], xmm0
mov dword [ebp - 0x54], 1
jmp 0x40ff2a
movsx eax, word [ebp - 0x10]
movsd xmm0, qword [ebp - 0x2c]
comisd xmm0, xmmword [eax*8 + 0x449c68]
jbe 0x40ffc6
movsx ecx, word [ebp - 0x10]
movsd xmm0, qword [ecx*8 + 0x449c68]
movsd qword [ebp - 0x2c], xmm0
movsx edx, word [ebp - 0x10]
movsd xmm0, qword [edx*8 + 0x449d10]
comisd xmm0, xmmword [ebp - 0x24]
jbe 0x40ffec
movsx eax, word [ebp - 0x10]
movsd xmm0, qword [eax*8 + 0x449d10]
movsd qword [ebp - 0x24], xmm0
jmp 0x40ff2a
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 8]
add ecx, edx
movsd xmm0, qword [ebp - 0x24]
movsd qword [ecx*8 + 0x498cc0], xmm0
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 8]
add eax, ecx
movsd xmm0, qword [ebp - 0x2c]
movsd qword [eax*8 + 0x490978], xmm0
jmp 0x40fd00
movsx edx, word [0x47a3bc]
movsx eax, word [0x47a15c]
add eax, edx
mov word [0x47a15c], ax
movsx ecx, word [ebp - 0x1c]
movsx edx, word [0x47a15c]
cmp ecx, edx
jle 0x41006d
push 0x1a70
push 0x47be30
push 0x47a3c0
call fcn.00425eb0
add esp, 0xc
jmp 0x40f2b0
push 0x4ccaf0
mov eax, dword [0x47a158]
push eax
push 0x4ccce0
push str._sKOMBI_SSSX__i_12__s
push 0x4cc900
call fcn.00401f00
add esp, 0x14
push 0x43cc50
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x410278
xor ecx, ecx
mov word [ebp - 0xc], cx
mov edx, 1
mov word [ebp - 4], dx
jmp 0x4100d0
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f314]
cmp ecx, edx
jg 0x41013b
mov eax, 1
mov word [ebp - 8], ax
jmp 0x4100f6
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
imul ecx, eax, 0x68
movsx eax, word [ecx + 0x467f7c]
cmp edx, eax
jg 0x410139
mov cx, word [ebp - 0xc]
add cx, 1
mov word [ebp - 0xc], cx
mov edx, dword [0x46ac90]
push edx
push 1
push 8
movsx eax, word [ebp - 0xc]
lea ecx, [eax*8 + 0x498cc0]
push ecx
call fcn.0042bee8
add esp, 0x10
jmp 0x4100ea
jmp 0x4100c4
mov edx, 1
mov word [ebp - 4], dx
jmp 0x410152
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f316]
cmp ecx, edx
jg 0x41018e
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
mov ecx, dword [0x46ac90]
push ecx
push 1
push 8
movsx edx, word [ebp - 0xc]
lea eax, [edx*8 + 0x498cc0]
push eax
call fcn.0042bee8
add esp, 0x10
jmp 0x410146
xor ecx, ecx
mov word [ebp - 0xc], cx
mov edx, 1
mov word [ebp - 4], dx
jmp 0x4101ab
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f314]
cmp ecx, edx
jg 0x410216
mov eax, 1
mov word [ebp - 8], ax
jmp 0x4101d1
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
imul ecx, eax, 0x68
movsx eax, word [ecx + 0x467f7c]
cmp edx, eax
jg 0x410214
mov cx, word [ebp - 0xc]
add cx, 1
mov word [ebp - 0xc], cx
mov edx, dword [0x46ac90]
push edx
push 1
push 8
movsx eax, word [ebp - 0xc]
lea ecx, [eax*8 + 0x490978]
push ecx
call fcn.0042bee8
add esp, 0x10
jmp 0x4101c5
jmp 0x41019f
mov edx, 1
mov word [ebp - 4], dx
jmp 0x41022d
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f316]
cmp ecx, edx
jg 0x410269
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
mov ecx, dword [0x46ac90]
push ecx
push 1
push 8
movsx edx, word [ebp - 0xc]
lea eax, [edx*8 + 0x490978]
push eax
call fcn.0042bee8
add esp, 0x10
jmp 0x410221
mov ecx, dword [0x46ac90]
push ecx
call fcn.0042b45f
add esp, 4
push 0x4ccaf0
mov edx, dword [0x47a158]
push edx
push 0x4ccce0
push str._sKOMBI_SSSX__i_1__s
push 0x4cc900
call fcn.00401f00
add esp, 0x14
push 0x43cc6c
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x410399
xor eax, eax
mov word [ebp - 0xc], ax
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x4102dc
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f314]
cmp eax, ecx
jg 0x410347
mov edx, 1
mov word [ebp - 8], dx
jmp 0x410302
mov ax, word [ebp - 8]
add ax, 1
mov word [ebp - 8], ax
movsx ecx, word [ebp - 8]
movsx edx, word [ebp - 4]
imul eax, edx, 0x68
movsx edx, word [eax + 0x467f7c]
cmp ecx, edx
jg 0x410345
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
mov ecx, dword [0x46ac90]
push ecx
push 1
push 8
movsx edx, word [ebp - 0xc]
lea eax, [edx*8 + 0x498cc0]
push eax
call fcn.0042bee8
add esp, 0x10
jmp 0x4102f6
jmp 0x4102d0
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x41035e
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f316]
cmp eax, ecx
jg 0x410399
mov dx, word [ebp - 0xc]
add dx, 1
mov word [ebp - 0xc], dx
mov eax, dword [0x46ac90]
push eax
push 1
push 8
movsx ecx, word [ebp - 0xc]
lea edx, [ecx*8 + 0x498cc0]
push edx
call fcn.0042bee8
add esp, 0x10
jmp 0x410352
push 0x4ccaf0
mov eax, dword [0x47a158]
push eax
push 0x4ccce0
push str._sKOMBI_SSSX__i_2__s
push 0x4cc900
call fcn.00401f00
add esp, 0x14
push 0x43cc88
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x4104c9
xor ecx, ecx
mov word [ebp - 0xc], cx
mov edx, 1
mov word [ebp - 4], dx
jmp 0x4103fc
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f314]
cmp ecx, edx
jg 0x410467
mov eax, 1
mov word [ebp - 8], ax
jmp 0x410422
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
imul ecx, eax, 0x68
movsx eax, word [ecx + 0x467f7c]
cmp edx, eax
jg 0x410465
mov cx, word [ebp - 0xc]
add cx, 1
mov word [ebp - 0xc], cx
mov edx, dword [0x46ac90]
push edx
push 1
push 8
movsx eax, word [ebp - 0xc]
lea ecx, [eax*8 + 0x490978]
push ecx
call fcn.0042bee8
add esp, 0x10
jmp 0x410416
jmp 0x4103f0
mov edx, 1
mov word [ebp - 4], dx
jmp 0x41047e
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f316]
cmp ecx, edx
jg 0x4104ba
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
mov ecx, dword [0x46ac90]
push ecx
push 1
push 8
movsx edx, word [ebp - 0xc]
lea eax, [edx*8 + 0x490978]
push eax
call fcn.0042bee8
add esp, 0x10
jmp 0x410472
mov ecx, dword [0x46ac90]
push ecx
call fcn.0042b45f
add esp, 4
push 0x4ccaf0
mov edx, dword [0x47a158]
push edx
push 0x4ccce0
push str._sKOMBI_SSSX__i_3__s
push 0x4cc900
call fcn.00401f00
add esp, 0x14
push 0x43cca4
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x41076e
xor eax, eax
mov word [ebp - 0xc], ax
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x41052d
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f314]
cmp eax, ecx
jg 0x41065d
mov edx, 1
mov word [ebp - 8], dx
jmp 0x410557
mov ax, word [ebp - 8]
add ax, 1
mov word [ebp - 8], ax
movsx ecx, word [ebp - 8]
movsx edx, word [ebp - 4]
imul eax, edx, 0x68
movsx edx, word [eax + 0x467f7c]
cmp ecx, edx
jg 0x410658
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
movsx ecx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [ecx*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x8c]
movsd xmm0, qword [ebp - 0x8c]
movsx edx, word [ebp - 0xc]
sub esp, 8
movsd xmm1, qword [edx*8 + 0x490978]
movsd qword [esp], xmm1
movsd qword [ebp - 0x9c], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x94]
movsd xmm0, qword [ebp - 0x94]
movsd xmm1, qword [ebp - 0x9c]
comisd xmm0, xmm1
jbe 0x41060b
movsx eax, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [eax*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x5c]
jmp 0x41062b
movsx ecx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [ecx*8 + 0x490978]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x5c]
movsd xmm0, qword [ebp - 0x5c]
xorps xmm0, xmmword [0x43d430]
movsd qword [ebp - 0x3c], xmm0
mov edx, dword [0x46ac90]
push edx
push 1
push 8
lea eax, [ebp - 0x3c]
push eax
call fcn.0042bee8
add esp, 0x10
jmp 0x41054b
jmp 0x410521
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x410674
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47f316]
cmp eax, ecx
jg 0x41076e
mov dx, word [ebp - 0xc]
add dx, 1
mov word [ebp - 0xc], dx
movsx eax, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [eax*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0xa4]
movsd xmm0, qword [ebp - 0xa4]
movsx ecx, word [ebp - 0xc]
sub esp, 8
movsd xmm1, qword [ecx*8 + 0x490978]
movsd qword [esp], xmm1
movsd qword [ebp - 0xb4], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0xac]
movsd xmm0, qword [ebp - 0xac]
movsd xmm1, qword [ebp - 0xb4]
comisd xmm0, xmm1
jbe 0x410721
movsx edx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [edx*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x64]
jmp 0x410741
movsx eax, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [eax*8 + 0x490978]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x64]
movsd xmm0, qword [ebp - 0x64]
xorps xmm0, xmmword [0x43d430]
movsd qword [ebp - 0x3c], xmm0
mov ecx, dword [0x46ac90]
push ecx
push 1
push 8
lea edx, [ebp - 0x3c]
push edx
call fcn.0042bee8
add esp, 0x10
jmp 0x410668
push 0x4ccaf0
mov eax, dword [0x47a158]
push eax
push 0x4ccce0
push str._sKOMBI_SSSX__i_4__s
push 0x4cc900
call fcn.00401f00
add esp, 0x14
push 0x43ccc0
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x410a18
xor ecx, ecx
mov word [ebp - 0xc], cx
mov edx, 1
mov word [ebp - 4], dx
jmp 0x4107d1
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f314]
cmp ecx, edx
jg 0x4108fc
mov eax, 1
mov word [ebp - 8], ax
jmp 0x4107fb
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
imul ecx, eax, 0x68
movsx eax, word [ecx + 0x467f7c]
cmp edx, eax
jg 0x4108f7
mov cx, word [ebp - 0xc]
add cx, 1
mov word [ebp - 0xc], cx
movsx edx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [edx*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0xbc]
movsd xmm0, qword [ebp - 0xbc]
movsx eax, word [ebp - 0xc]
sub esp, 8
movsd xmm1, qword [eax*8 + 0x490978]
movsd qword [esp], xmm1
movsd qword [ebp - 0xc4], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0xcc]
movsd xmm0, qword [ebp - 0xc4]
comisd xmm0, xmmword [ebp - 0xcc]
jbe 0x4108ab
movsx ecx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [ecx*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x6c]
jmp 0x4108cb
movsx edx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [edx*8 + 0x490978]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x6c]
movsd xmm0, qword [ebp - 0x6c]
xorps xmm0, xmmword [0x43d430]
movsd qword [ebp - 0x3c], xmm0
mov eax, dword [0x46ac90]
push eax
push 1
push 8
lea ecx, [ebp - 0x3c]
push ecx
call fcn.0042bee8
add esp, 0x10
jmp 0x4107ef
jmp 0x4107c5
mov edx, 1
mov word [ebp - 4], dx
jmp 0x410913
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47f316]
cmp ecx, edx
jg 0x410a09
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
movsx ecx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [ecx*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0xd4]
movsd xmm0, qword [ebp - 0xd4]
movsx edx, word [ebp - 0xc]
sub esp, 8
movsd xmm1, qword [edx*8 + 0x490978]
movsd qword [esp], xmm1
movsd qword [ebp - 0xdc], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0xe4]
movsd xmm0, qword [ebp - 0xdc]
comisd xmm0, xmmword [ebp - 0xe4]
jbe 0x4109bc
movsx eax, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [eax*8 + 0x498cc0]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x74]
jmp 0x4109dc
movsx ecx, word [ebp - 0xc]
sub esp, 8
movsd xmm0, qword [ecx*8 + 0x490978]
movsd qword [esp], xmm0
call fcn.0042c1e3
add esp, 8
fstp qword [ebp - 0x74]
movsd xmm0, qword [ebp - 0x74]
xorps xmm0, xmmword [0x43d430]
movsd qword [ebp - 0x3c], xmm0
mov edx, dword [0x46ac90]
push edx
push 1
push 8
lea eax, [ebp - 0x3c]
push eax
call fcn.0042bee8
add esp, 0x10
jmp 0x410907
mov ecx, dword [0x46ac90]
push ecx
call fcn.0042b45f
add esp, 4
pop esi
mov esp, ebp
pop ebp
ret