Function at 0x40a5e0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x25f0
call fcn.004251a0
mov eax, dword [0x447040]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
xorps xmm0, xmm0
movsd qword [ebp - 0x25c0], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x25b8], xmm0
push 0x43c94c
call fcn.004022d0
add esp, 4
mov eax, 1
mov word [ebp - 0x25a8], ax
jmp 0x40a63b
mov cx, word [ebp - 0x25a8]
add cx, 1
mov word [ebp - 0x25a8], cx
movsx edx, word [ebp - 0x25a8]
movsx eax, word [0x47f352]
cmp edx, eax
jg 0x40b8c9
movsx ecx, word [ebp - 0x25a8]
shl ecx, 9
mov dx, word [ecx + 0x46b12e]
mov word [ebp - 0x25b0], dx
xor eax, eax
mov word [0x47a15c], ax
mov byte [0x448278], 0
mov byte [0x448279], 0
mov byte [0x44827a], 0
movsx ecx, word [ebp - 0x25b0]
movsx edx, word [0x47a15c]
sub ecx, edx
mov word [0x47a3bc], cx
movsx eax, word [0x47a3bc]
movsx ecx, word [0x47f648]
sub ecx, 1
cmp eax, ecx
jle 0x40a6c3
movsx edx, word [0x47f648]
sub edx, 1
mov word [0x47a3bc], dx
mov ax, word [0x47a15c]
mov word [0x467f74], ax
mov ecx, 1
mov word [ebp - 0x259c], cx
jmp 0x40a6ef
mov dx, word [ebp - 0x259c]
add dx, 1
mov word [ebp - 0x259c], dx
movsx eax, word [ebp - 0x259c]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40a8b7
movsx edx, word [ebp - 0x259c]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40a8b2
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ecx*2 + 0x47a2f0]
push edx
push 0x43c95c
push 0x4ccdd8
call fcn.00401f00
add esp, 0xc
push 0x4ccaf0
push 0x4ccdd8
movsx eax, word [ebp - 0x25a8]
push eax
push 0x43c960
push 0x4ccce0
push 0x43c964
push 0x4cc900
call fcn.00401f00
add esp, 0x1c
push 0x43c970
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
jne 0x40a795
jmp 0x40b8c9
push 0
movsx ecx, word [0x47a15c]
shl ecx, 3
push ecx
mov edx, dword [0x46ac90]
push edx
call fcn.0042bbe9
add esp, 0xc
mov eax, 1
mov word [ebp - 0x2598], ax
jmp 0x40a7d1
mov cx, word [ebp - 0x2598]
add cx, 1
mov word [ebp - 0x2598], cx
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40a811
mov ecx, dword [0x46ac90]
push ecx
push 1
push 8
movsx edx, word [ebp - 0x259c]
movsx eax, word [ebp - 0x2598]
mov ecx, dword [edx*4 + 0x449e18]
lea edx, [ecx + eax*8]
push edx
call fcn.0042b7c5
add esp, 0x10
jmp 0x40a7bf
cmp dword [0x46ac90], 0
je 0x40a828
mov eax, dword [0x46ac90]
push eax
call fcn.0042b45f
add esp, 4
movsx ecx, word [ebp - 0x259c]
movzx edx, byte [ecx + 0x448280]
test edx, edx
jne 0x40a8b2
mov eax, 1
mov word [ebp - 0x2598], ax
jmp 0x40a85a
mov cx, word [ebp - 0x2598]
add cx, 1
mov word [ebp - 0x2598], cx
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40a8b2
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ebp - 0x2598]
mov eax, dword [ecx*4 + 0x449e18]
movsx ecx, word [ebp - 0x259c]
cvtss2sd xmm0, dword [ecx*4 + 0x47aed4]
mulsd xmm0, qword [eax + edx*8]
movsx edx, word [ebp - 0x259c]
movsx eax, word [ebp - 0x2598]
mov ecx, dword [edx*4 + 0x449e18]
movsd qword [ecx + eax*8], xmm0
jmp 0x40a848
jmp 0x40a6dd
mov edx, 1
mov word [ebp - 0x259c], dx
jmp 0x40a8d7
mov ax, word [ebp - 0x259c]
add ax, 1
mov word [ebp - 0x259c], ax
movsx ecx, word [ebp - 0x259c]
movsx edx, word [0x47f628]
cmp ecx, edx
jg 0x40aa94
xor eax, eax
mov word [ebp - 0x25ac], ax
mov ecx, 1
mov word [ebp - 0x25a4], cx
jmp 0x40a916
mov dx, word [ebp - 0x25a4]
add dx, 1
mov word [ebp - 0x25a4], dx
movsx eax, word [ebp - 0x25a4]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40aa8f
movsx edx, word [ebp - 0x25a4]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40aa8a
movsx ecx, word [ebp - 0x25a4]
movsx edx, byte [ecx + 0x47a4f0]
cmp edx, 0x47
jne 0x40aa8a
movsx eax, word [ebp - 0x25a4]
movsx ecx, word [eax*2 + 0x47a998]
movsx edx, word [ebp - 0x259c]
cmp ecx, edx
jne 0x40aa8a
movsx eax, word [ebp - 0x25ac]
test eax, eax
jne 0x40a9e4
mov cx, word [ebp - 0x25a4]
mov word [ebp - 0x25ac], cx
movsx edx, word [ebp - 0x25a4]
movsx eax, byte [edx + 0x47a3c6]
cmp eax, 0x41
jne 0x40a9c6
movsx ecx, word [ebp - 0x25a4]
mov byte [ecx + 0x47a4f0], 0x41
movsx edx, word [ebp - 0x25a4]
mov byte [edx + 0x47a86e], 0x54
jmp 0x40a9d4
movsx eax, word [ebp - 0x25a4]
mov byte [eax + 0x47a4f0], 0x51
movsx ecx, word [ebp - 0x25ac]
mov byte [ecx + 0x47b898], 1
jmp 0x40a9f2
movsx edx, word [ebp - 0x25a4]
mov byte [edx + 0x47b898], 0
movsx eax, word [ebp - 0x25a4]
movsx ecx, word [ebp - 0x25ac]
cmp eax, ecx
je 0x40aa8a
mov edx, 1
mov word [ebp - 0x2598], dx
jmp 0x40aa28
mov ax, word [ebp - 0x2598]
add ax, 1
mov word [ebp - 0x2598], ax
movsx ecx, word [ebp - 0x2598]
movsx edx, word [0x47a3bc]
cmp ecx, edx
jg 0x40aa8a
movsx eax, word [ebp - 0x25ac]
movsx ecx, word [ebp - 0x2598]
mov edx, dword [eax*4 + 0x449e18]
movsx eax, word [ebp - 0x25a4]
movsx esi, word [ebp - 0x2598]
mov eax, dword [eax*4 + 0x449e18]
movsd xmm0, qword [edx + ecx*8]
addsd xmm0, qword [eax + esi*8]
movsx ecx, word [ebp - 0x25ac]
movsx edx, word [ebp - 0x2598]
mov eax, dword [ecx*4 + 0x449e18]
movsd qword [eax + edx*8], xmm0
jmp 0x40aa16
jmp 0x40a904
jmp 0x40a8c5
mov ecx, 1
mov word [ebp - 0x259c], cx
jmp 0x40aab4
mov dx, word [ebp - 0x259c]
add dx, 1
mov word [ebp - 0x259c], dx
movsx eax, word [ebp - 0x259c]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40aba9
movsx edx, word [ebp - 0x259c]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, dword [0x47a158]
jne 0x40aba4
movsx ecx, word [ebp - 0x259c]
movsx edx, byte [ecx + 0x47a86e]
cmp edx, 0x54
jne 0x40aba4
mov eax, 1
mov word [ebp - 0x2598], ax
jmp 0x40ab1c
mov cx, word [ebp - 0x2598]
add cx, 1
mov word [ebp - 0x2598], cx
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40ab99
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ebp - 0x2598]
mov eax, dword [ecx*4 + 0x449e18]
movsx ecx, word [0x467f74]
movsx esi, word [ebp - 0x2598]
add ecx, esi
movsd xmm0, qword [eax + edx*8]
movsd qword [ebp + ecx*8 - 0x2594], xmm0
movsx edx, word [ebp - 0x259c]
movsx eax, word [ebp - 0x2598]
mov ecx, dword [edx*4 + 0x449e18]
movsx edx, word [0x467f74]
movsx esi, word [ebp - 0x2598]
add edx, esi
movsd xmm0, qword [ecx + eax*8]
movsd qword [ebp + edx*8 - 0x12cc], xmm0
jmp 0x40ab0a
mov byte [0x448278], 1
jmp 0x40aba9
jmp 0x40aaa2
mov eax, 1
mov word [ebp - 0x259c], ax
jmp 0x40abc9
mov cx, word [ebp - 0x259c]
add cx, 1
mov word [ebp - 0x259c], cx
movsx edx, word [ebp - 0x259c]
movsx eax, word [0x47f638]
cmp edx, eax
jg 0x40acfb
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ecx*2 + 0x47abec]
cmp edx, dword [0x47a158]
jne 0x40acf6
movsx eax, word [ebp - 0x259c]
movsx ecx, byte [eax + 0x47a86e]
cmp ecx, 0x54
jne 0x40acf6
mov edx, 1
mov word [ebp - 0x2598], dx
jmp 0x40ac31
mov ax, word [ebp - 0x2598]
add ax, 1
mov word [ebp - 0x2598], ax
movsx ecx, word [ebp - 0x2598]
movsx edx, word [0x47a3bc]
cmp ecx, edx
jg 0x40acf6
movsx eax, word [ebp - 0x259c]
movsx ecx, word [ebp - 0x2598]
mov edx, dword [eax*4 + 0x449e18]
movsd xmm0, qword [edx + ecx*8]
movsd qword [0x449c48], xmm0
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 0x2598]
add eax, ecx
movsd xmm0, qword [0x449c48]
comisd xmm0, xmmword [ebp + eax*8 - 0x12cc]
jbe 0x40acad
movsx edx, word [0x467f74]
movsx eax, word [ebp - 0x2598]
add edx, eax
movsd xmm0, qword [0x449c48]
movsd qword [ebp + edx*8 - 0x12cc], xmm0
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add ecx, edx
movsd xmm0, qword [ebp + ecx*8 - 0x2594]
comisd xmm0, xmmword [0x449c48]
jbe 0x40acf1
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 0x2598]
add eax, ecx
movsd xmm0, qword [0x449c48]
movsd qword [ebp + eax*8 - 0x2594], xmm0
jmp 0x40ac1f
jmp 0x40abb7
movzx edx, byte [0x448278]
test edx, edx
je 0x40aec5
mov eax, 1
mov word [ebp - 0x259c], ax
jmp 0x40ad2a
mov cx, word [ebp - 0x259c]
add cx, 1
mov word [ebp - 0x259c], cx
movsx edx, word [ebp - 0x259c]
movsx eax, word [0x47f638]
cmp edx, eax
jg 0x40aec5
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ecx*2 + 0x47abec]
cmp edx, dword [0x47a158]
jne 0x40aec0
movsx eax, word [ebp - 0x259c]
movsx ecx, byte [eax + 0x47a4f0]
cmp ecx, 0x41
jne 0x40ae10
movzx edx, byte [0x44827a]
test edx, edx
jne 0x40ae10
mov eax, 1
mov word [ebp - 0x2598], ax
jmp 0x40ada1
mov cx, word [ebp - 0x2598]
add cx, 1
mov word [ebp - 0x2598], cx
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40ade8
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add ecx, edx
movsx eax, word [ebp - 0x259c]
movsx edx, word [ebp - 0x2598]
mov eax, dword [eax*4 + 0x449e18]
movsd xmm0, qword [ebp + ecx*8 - 0x12cc]
movsd qword [eax + edx*8], xmm0
jmp 0x40ad8f
mov byte [0x44827a], 1
movsx ecx, word [ebp - 0x259c]
mov byte [ecx + 0x47a4f0], 0x58
movsx edx, word [ebp - 0x259c]
mov byte [edx + 0x47b898], 1
jmp 0x40ad18
movsx eax, word [ebp - 0x259c]
movsx ecx, byte [eax + 0x47a4f0]
cmp ecx, 0x41
jne 0x40aec0
movzx edx, byte [0x448279]
test edx, edx
jne 0x40aec0
mov eax, 1
mov word [ebp - 0x2598], ax
jmp 0x40ae56
mov cx, word [ebp - 0x2598]
add cx, 1
mov word [ebp - 0x2598], cx
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40ae9d
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add ecx, edx
movsx eax, word [ebp - 0x259c]
movsx edx, word [ebp - 0x2598]
mov eax, dword [eax*4 + 0x449e18]
movsd xmm0, qword [ebp + ecx*8 - 0x2594]
movsd qword [eax + edx*8], xmm0
jmp 0x40ae44
mov byte [0x448279], 1
movsx ecx, word [ebp - 0x259c]
mov byte [ecx + 0x47a4f0], 0x4d
movsx edx, word [ebp - 0x259c]
mov byte [edx + 0x47b898], 1
jmp 0x40ad18
movsx eax, word [0x47f638]
push eax
call fcn.00402400
add esp, 4
mov ecx, 1
mov word [ebp - 0x2598], cx
jmp 0x40aef5
mov dx, word [ebp - 0x2598]
add dx, 1
mov word [ebp - 0x2598], dx
movsx eax, word [ebp - 0x2598]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40af41
movsx edx, word [0x467f74]
movsx eax, word [ebp - 0x2598]
add edx, eax
xorps xmm0, xmm0
movsd qword [ebp + edx*8 - 0x2594], xmm0
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add ecx, edx
xorps xmm0, xmm0
movsd qword [ebp + ecx*8 - 0x12cc], xmm0
jmp 0x40aee3
mov dword [ebp - 0x25dc], 0
call fcn.00401260
mov eax, 1
mov word [ebp - 0x259c], ax
jmp 0x40af70
mov cx, word [ebp - 0x259c]
add cx, 1
mov word [ebp - 0x259c], cx
movsx edx, word [ebp - 0x259c]
movsx eax, word [0x47f638]
cmp edx, eax
jg 0x40b1e6
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ecx*2 + 0x47abec]
cmp edx, dword [0x47a158]
jne 0x40b1e1
movsx eax, word [ebp - 0x259c]
movsx ecx, word [eax*2 + 0x47abec]
cmp ecx, 1
je 0x40afcd
movsx edx, word [ebp - 0x259c]
movsx eax, word [edx*2 + 0x47abec]
cmp eax, 0xc
jne 0x40b1e1
mov ecx, 1
mov word [ebp - 0x2598], cx
jmp 0x40afed
mov dx, word [ebp - 0x2598]
add dx, 1
mov word [ebp - 0x2598], dx
movsx eax, word [ebp - 0x2598]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40b1e1
movsx edx, word [ebp - 0x259c]
movsx eax, word [ebp - 0x2598]
mov ecx, dword [edx*4 + 0x449e18]
movsx edx, word [ebp - 0x259c]
cvtss2sd xmm0, dword [edx*4 + 0x47b0c8]
mulsd xmm0, qword [ecx + eax*8]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x25c4], xmm0
movsx eax, word [ebp - 0x259c]
movsx ecx, word [ebp - 0x2598]
mov edx, dword [eax*4 + 0x449e18]
movsx eax, word [ebp - 0x259c]
cvtss2sd xmm0, dword [eax*4 + 0x47b258]
mulsd xmm0, qword [edx + ecx*8]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x25c8], xmm0
movss xmm0, dword [ebp - 0x25c8]
comiss xmm0, dword [ebp - 0x25c4]
jbe 0x40b092
movss xmm0, dword [ebp - 0x25c4]
movss dword [ebp - 0x25cc], xmm0
jmp 0x40b0a2
movss xmm0, dword [ebp - 0x25c8]
movss dword [ebp - 0x25cc], xmm0
movss xmm0, dword [ebp - 0x25cc]
movss dword [ebp - 0x25d4], xmm0
movss xmm0, dword [ebp - 0x25c4]
comiss xmm0, dword [ebp - 0x25c8]
jbe 0x40b0d5
movss xmm0, dword [ebp - 0x25c4]
movss dword [ebp - 0x25d0], xmm0
jmp 0x40b0e5
movss xmm0, dword [ebp - 0x25c8]
movss dword [ebp - 0x25d0], xmm0
movss xmm0, dword [ebp - 0x25d0]
movss dword [ebp - 0x25d8], xmm0
movsx ecx, word [ebp - 0x259c]
movsx edx, byte [ecx + 0x47a86e]
cmp edx, 0x57
je 0x40b17e
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 0x2598]
add eax, ecx
cvtss2sd xmm0, dword [ebp - 0x25d4]
addsd xmm0, qword [ebp + eax*8 - 0x2594]
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x467f74]
add eax, edx
movsd qword [ebp + eax*8 - 0x2594], xmm0
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add ecx, edx
cvtss2sd xmm0, dword [ebp - 0x25d8]
addsd xmm0, qword [ebp + ecx*8 - 0x12cc]
movsx eax, word [ebp - 0x2598]
movsx ecx, word [0x467f74]
add ecx, eax
movsd qword [ebp + ecx*8 - 0x12cc], xmm0
jmp 0x40b1dc
mov dword [ebp - 0x25dc], 1
mov edx, 0x2c
shl edx, 0
movsx eax, word [ebp - 0x259c]
movsx ecx, word [ebp - 0x2598]
mov edx, dword [edx + eax*4 + 0x46ac98]
movss xmm0, dword [ebp - 0x25d4]
movss dword [edx + ecx*4], xmm0
mov eax, 0x2c
shl eax, 0
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ebp - 0x2598]
mov eax, dword [eax + ecx*4 + 0x46adf8]
movss xmm0, dword [ebp - 0x25d8]
movss dword [eax + edx*4], xmm0
jmp 0x40afdb
jmp 0x40af5e
cmp dword [ebp - 0x25dc], 1
jne 0x40b2e6
mov ecx, 1
mov word [ebp - 0x2598], cx
jmp 0x40b213
mov dx, word [ebp - 0x2598]
add dx, 1
mov word [ebp - 0x2598], dx
movsx eax, word [ebp - 0x2598]
movsx ecx, word [0x47a3bc]
cmp eax, ecx
jg 0x40b2e6
movsx esi, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add esi, edx
movsx eax, word [ebp - 0x2598]
push eax
movsx ecx, word [0x47f638]
push ecx
push 1
push 1
call section..text
add esp, 0x10
fstp qword [ebp - 0x25e8]
movsd xmm0, qword [ebp - 0x25e8]
addsd xmm0, qword [ebp + esi*8 - 0x2594]
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x467f74]
add eax, edx
movsd qword [ebp + eax*8 - 0x2594], xmm0
movsx esi, word [0x467f74]
movsx ecx, word [ebp - 0x2598]
add esi, ecx
movsx edx, word [ebp - 0x2598]
push edx
movsx eax, word [0x47f638]
push eax
push 1
push 1
call fcn.00401130
add esp, 0x10
fstp qword [ebp - 0x25f0]
movsd xmm0, qword [ebp - 0x25f0]
addsd xmm0, qword [ebp + esi*8 - 0x12cc]
movsx ecx, word [ebp - 0x2598]
movsx edx, word [0x467f74]
add edx, ecx
movsd qword [ebp + edx*8 - 0x12cc], xmm0
jmp 0x40b201
cmp dword [0x47a158], 1
je 0x40b2f8
cmp dword [0x47a158], 0xc
jne 0x40b302
jmp 0x40b70b
mov eax, 1
mov word [ebp - 0x2598], ax
jmp 0x40b322
mov cx, word [ebp - 0x2598]
add cx, 1
mov word [ebp - 0x2598], cx
movsx edx, word [ebp - 0x2598]
movsx eax, word [0x47a3bc]
cmp edx, eax
jg 0x40b70b
mov ecx, 1
mov word [ebp - 0x25a0], cx
jmp 0x40b358
mov dx, word [ebp - 0x25a0]
add dx, 1
mov word [ebp - 0x25a0], dx
movsx eax, word [ebp - 0x25a0]
movsx ecx, word [0x47a3c4]
cmp eax, ecx
jg 0x40b5a9
movsx edx, word [0x467f74]
movsx eax, word [ebp - 0x2598]
add edx, eax
movsd xmm0, qword [ebp + edx*8 - 0x2594]
movsd qword [ebp - 0x25c0], xmm0
movsx ecx, word [0x467f74]
movsx edx, word [ebp - 0x2598]
add ecx, edx
movsd xmm0, qword [ebp + ecx*8 - 0x12cc]
movsd qword [ebp - 0x25b8], xmm0
movsx eax, word [ebp - 0x25a0]
movsx ecx, word [eax*2 + 0x47ade0]
cmp ecx, 1
je 0x40b3d8
movsx edx, word [ebp - 0x25a0]
movsx eax, word [edx*2 + 0x47ade0]
cmp eax, 0xc
jne 0x40b3dd
jmp 0x40b346
mov ecx, 1
mov word [ebp - 0x259c], cx
jmp 0x40b3fd
mov dx, word [ebp - 0x259c]
add dx, 1
mov word [ebp - 0x259c], dx
movsx eax, word [ebp - 0x259c]
movsx ecx, word [0x47f638]
cmp eax, ecx
jg 0x40b574
movsx edx, word [ebp - 0x259c]
movzx eax, byte [edx + 0x47b898]
cmp eax, 1
jne 0x40b56f
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ecx*2 + 0x47abec]
cmp edx, dword [0x47a158]
jne 0x40b56f
movsx eax, word [ebp - 0x259c]
movsx ecx, word [eax*2 + 0x47abec]
movsx edx, word [ebp - 0x25a0]
movsx eax, word [edx*2 + 0x47ade0]
cmp ecx, eax
jne 0x40b49b
movsx ecx, word [ebp - 0x259c]
movsx edx, word [ebp - 0x2598]
mov eax, dword [ecx*4 + 0x449e18]
movsx ecx, word [ebp - 0x259c]
cvtss2sd xmm0, dword [ecx*4 + 0x47b0c8]
mulsd xmm0, qword [eax + edx*8]
movsd qword [0x449c48], xmm0
jmp 0x40b4e1
movsx edx, word [ebp - 0x259c]
movsx eax, word [ebp - 0x2598]
mov ecx, dword [edx*4 + 0x449e18]
movsx edx, word [ebp - 0x259c]
cvtss2sd xmm0, dword [edx*4 + 0x47b0c8]
mulsd xmm0, qword [ecx + eax*8]
movsx eax, word [ebp - 0x259c]
cvtss2sd xmm1, dword [eax*4 + 0x47b3e8]
mulsd xmm0, xmm1
movsd qword [0x449c48], xmm0
movsx ecx, word [ebp - 0x259c]
movsx edx, byte [ecx + 0x47a4f0]
cmp edx, 0x4d
je 0x40b526
movsd xmm0, qword [ebp - 0x25b8]
addsd xmm0, qword [0x449c48]
comisd xmm0, xmmword [ebp - 0x25b8]
jbe 0x40b526
movsd xmm0, qword [ebp - 0x25b8]
addsd xmm0, qword [0x449c48]
movsd qword [ebp - 0x25b8], xmm0
movsx eax, word [ebp - 0x259c]
movsx ecx, byte [eax + 0x47a4f0]
cmp ecx, 0x58
je 0x40b56f
movsd xmm0, qword [ebp - 0x25c0]
addsd xmm0, qword [0x449c48]
movsd xmm1, qword [ebp - 0x25c0]
comisd xmm1, xmm0
jbe 0x40b56f
movsd xmm0, qword [ebp - 0x25c0]
addsd xmm0, qword [0x449c48]
movsd qword [ebp - 0x25c0], xmm0
jmp 0x40b3eb
movsx edx, word [ebp - 0x25a0]
movsd xmm0, qword [ebp - 0x25c0]
movsd qword [edx*8 + 0x449c68], xmm0
movsx eax, word [ebp - 0x25a0]
movsd xmm0, qword [ebp - 0x25b8]
movsd qword [eax*8 + 0x449d10], xmm0
jmp 0x40b346
mov dword [ebp - 0x25e0], 0
mov ecx, 1
mov word [ebp - 0x25a0], cx
jmp 0x40b5d3
mov dx, word [ebp - 0x25a0]
add dx, 1
mov word [ebp - 0x25a0], dx
movsx eax, word [ebp - 0x25a0]
movsx ecx, word [0x47a3c4]
cmp eax, ecx
jg 0x40b6c4
movsx edx, word [ebp - 0x25a0]
movsx eax, word [edx*2 + 0x47ade0]
cmp eax, 1
je 0x40b611
movsx ecx, word [ebp - 0x25a0]
movsx edx, word [ecx*2 + 0x47ade0]
cmp edx, 0xc
jne 0x40b613
jmp 0x40b5c1
cmp dword [ebp - 0x25e0], 0
jne 0x40b65b
movsx eax, word [ebp - 0x25a0]
movsd xmm0, qword [eax*8 + 0x449c68]
movsd qword [ebp - 0x25c0], xmm0
movsx ecx, word [ebp - 0x25a0]
movsd xmm0, qword [ecx*8 + 0x449d10]
movsd qword [ebp - 0x25b8], xmm0
mov dword [ebp - 0x25e0], 1
jmp 0x40b5c1
movsx edx, word [ebp - 0x25a0]
movsd xmm0, qword [ebp - 0x25c0]
comisd xmm0, xmmword [edx*8 + 0x449c68]
jbe 0x40b68d
movsx eax, word [ebp - 0x25a0]
movsd xmm0, qword [eax*8 + 0x449c68]
movsd qword [ebp - 0x25c0], xmm0
movsx ecx, word [ebp - 0x25a0]
movsd xmm0, qword [ecx*8 + 0x449d10]
comisd xmm0, xmmword [ebp - 0x25b8]
jbe 0x40b6bf
movsx edx, word [ebp - 0x25a0]
movsd xmm0, qword [edx*8 + 0x449d10]
movsd qword [ebp - 0x25b8], xmm0
jmp 0x40b5c1
movsx eax, word [0x467f74]
movsx ecx, word [ebp - 0x2598]
add eax, ecx
movsd xmm0, qword [ebp - 0x25b8]
movsd qword [ebp + eax*8 - 0x12cc], xmm0
movsx edx, word [0x467f74]
movsx eax, word [ebp - 0x2598]
add edx, eax
movsd xmm0, qword [ebp - 0x25c0]
movsd qword [ebp + edx*8 - 0x2594], xmm0
jmp 0x40b310
movsx ecx, word [0x47a3bc]
movsx edx, word [0x47a15c]
add edx, ecx
mov word [0x47a15c], dx
movsx eax, word [ebp - 0x25b0]
movsx ecx, word [0x47a15c]
cmp eax, ecx
jle 0x40b750
push 0x1a70
push 0x47be30
push 0x47a3c0
call fcn.00425eb0
add esp, 0xc
jmp 0x40a671
push 0x4ccaf0
mov edx, dword [0x47a158]
push edx
movsx eax, word [ebp - 0x25a8]
push eax
push 0x4ccce0
push str._sKOMBI_UZFS_i__i_1__s
push 0x4cc900
call fcn.00401f00
add esp, 0x18
push 0x43c98c
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x40b800
mov ecx, 1
mov word [ebp - 0x2598], cx
jmp 0x40b7bb
mov dx, word [ebp - 0x2598]
add dx, 1
mov word [ebp - 0x2598], dx
movsx eax, word [ebp - 0x2598]
movsx ecx, word [ebp - 0x25b0]
cmp eax, ecx
jg 0x40b7f1
mov edx, dword [0x46ac90]
push edx
push 1
push 8
movsx eax, word [ebp - 0x2598]
lea ecx, [ebp + eax*8 - 0x12cc]
push ecx
call fcn.0042bee8
add esp, 0x10
jmp 0x40b7a9
mov edx, dword [0x46ac90]
push edx
call fcn.0042b45f
add esp, 4
push 0x4ccaf0
mov eax, dword [0x47a158]
push eax
movsx ecx, word [ebp - 0x25a8]
push ecx
push 0x4ccce0
push str._sKOMBI_UZFS_i__i_2__s
push 0x4cc900
call fcn.00401f00
add esp, 0x18
push 0x43c9a8
push 0x4cc900
call fcn.0042b546
add esp, 8
mov dword [0x46ac90], eax
cmp dword [0x46ac90], 0
je 0x40b8ad
mov edx, 1
mov word [ebp - 0x2598], dx
jmp 0x40b86a
mov ax, word [ebp - 0x2598]
add ax, 1
mov word [ebp - 0x2598], ax
movsx ecx, word [ebp - 0x2598]
movsx edx, word [ebp - 0x25b0]
cmp ecx, edx
jg 0x40b89f
mov eax, dword [0x46ac90]
push eax
push 1
push 8
movsx ecx, word [ebp - 0x2598]
lea edx, [ebp + ecx*8 - 0x2594]
push edx
call fcn.0042bee8
add esp, 0x10
jmp 0x40b858
mov eax, dword [0x46ac90]
push eax
call fcn.0042b45f
add esp, 4
push 0x1a70
push 0x47be30
push 0x47a3c0
call fcn.00425eb0
add esp, 0xc
jmp 0x40a629
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00424f84
mov esp, ebp
pop ebp
ret