Function at 0x408660
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x90
push esi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x28], xmm0
push str.MinMaxOf_BeamL
call fcn.004022d0
add esp, 4
mov eax, 1
mov word [ebp - 0x14], ax
jmp 0x40869e
mov cx, word [ebp - 0x14]
add cx, 1
mov word [ebp - 0x14], cx
movsx edx, word [ebp - 0x14]
movsx eax, word [0x47b35a]
cmp edx, eax
jg 0x40976c
movsx ecx, word [ebp - 0x14]
shl ecx, 9
movsx edx, word [ecx + 0x467136]
add edx, 1
mov word [ebp - 0x1c], dx
xor eax, eax
mov word [0x47b628], ax
mov byte [0x444278], 0
mov byte [0x44427a], 0
mov byte [0x44427b], 0
movsx ecx, word [ebp - 0x1c]
movsx edx, word [0x47b628]
sub ecx, edx
mov word [0x47b62c], cx
movsx eax, word [0x47b62c]
movsx ecx, word [0x47b65c]
sub ecx, 1
cmp eax, ecx
jle 0x40871d
movsx edx, word [0x47b65c]
sub edx, 1
mov word [0x47b62c], dx
mov ax, word [0x47b628]
mov word [0x47b624], ax
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x408740
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47b64c]
cmp eax, ecx
jg 0x4088b3
movsx edx, word [ebp - 8]
movsx eax, word [edx*2 + 0x4762f8]
push eax
push 0x438854
push 0x4c8de8
call fcn.00401f00
add esp, 0xc
push 0x4c8b00
push 0x4c8de8
movsx ecx, word [ebp - 0x14]
push ecx
push 0x438858
push 0x4c8cf0
push 0x43885c
push 0x4c8910
call fcn.00401f00
add esp, 0x1c
push 0x4c8910
call fcn.00402370
add esp, 4
push 0x438868
push 0x4c8910
call fcn.00426e66
add esp, 8
mov dword [0x466c98], eax
push 0
movsx edx, word [0x47b628]
shl edx, 3
push edx
mov eax, dword [0x466c98]
push eax
call fcn.0042747a
add esp, 0xc
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x4087f3
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47b62c]
cmp eax, ecx
jg 0x40882a
mov edx, dword [0x466c98]
push edx
push 1
push 8
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [eax*4 + 0x445e20]
lea eax, [edx + ecx*8]
push eax
call fcn.00427056
add esp, 0x10
jmp 0x4087e7
cmp dword [0x466c98], 0
je 0x408842
mov ecx, dword [0x466c98]
push ecx
call fcn.00426d7f
add esp, 4
movsx edx, word [ebp - 8]
movzx eax, byte [edx + 0x444280]
test eax, eax
jne 0x4088ae
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x408868
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47b62c]
cmp eax, ecx
jg 0x4088ae
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
mov ecx, dword [edx*4 + 0x445e20]
movsx edx, word [ebp - 8]
cvtss2sd xmm0, dword [edx*4 + 0x476edc]
mulsd xmm0, qword [ecx + eax*8]
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [eax*4 + 0x445e20]
movsd qword [edx + ecx*8], xmm0
jmp 0x40885c
jmp 0x408734
mov eax, 1
mov word [ebp - 8], ax
jmp 0x4088ca
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [0x47b63c]
cmp edx, eax
jg 0x408a0e
xor ecx, ecx
mov word [ebp - 0x18], cx
mov edx, 1
mov word [ebp - 0x10], dx
jmp 0x4088fa
mov ax, word [ebp - 0x10]
add ax, 1
mov word [ebp - 0x10], ax
movsx ecx, word [ebp - 0x10]
movsx edx, word [0x47b64c]
cmp ecx, edx
jg 0x408a09
movsx eax, word [ebp - 0x10]
movsx ecx, byte [eax + 0x4764f8]
cmp ecx, 0x47
jne 0x408a04
movsx edx, word [ebp - 0x10]
movsx eax, word [edx*2 + 0x4769a0]
movsx ecx, word [ebp - 8]
cmp eax, ecx
jne 0x408a04
movsx edx, word [ebp - 0x18]
test edx, edx
jne 0x408989
mov ax, word [ebp - 0x10]
mov word [ebp - 0x18], ax
movsx ecx, word [ebp - 0x10]
movsx edx, byte [ecx + 0x4763ce]
cmp edx, 0x41
jne 0x408971
movsx eax, word [ebp - 0x10]
mov byte [eax + 0x4764f8], 0x41
movsx ecx, word [ebp - 0x10]
mov byte [ecx + 0x476876], 0x54
jmp 0x40897c
movsx edx, word [ebp - 0x10]
mov byte [edx + 0x4764f8], 0x51
movsx eax, word [ebp - 0x18]
mov byte [eax + 0x4778a0], 1
jmp 0x408994
movsx ecx, word [ebp - 0x10]
mov byte [ecx + 0x4778a0], 0
movsx edx, word [ebp - 0x10]
movsx eax, word [ebp - 0x18]
cmp edx, eax
je 0x408a04
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x4089b7
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47b62c]
cmp eax, ecx
jg 0x408a04
movsx edx, word [ebp - 0x18]
movsx eax, word [ebp - 4]
mov ecx, dword [edx*4 + 0x445e20]
movsx edx, word [ebp - 0x10]
movsx esi, word [ebp - 4]
mov edx, dword [edx*4 + 0x445e20]
movsd xmm0, qword [ecx + eax*8]
addsd xmm0, qword [edx + esi*8]
movsx eax, word [ebp - 0x18]
movsx ecx, word [ebp - 4]
mov edx, dword [eax*4 + 0x445e20]
movsd qword [edx + ecx*8], xmm0
jmp 0x4089ab
jmp 0x4088ee
jmp 0x4088be
mov eax, 1
mov word [ebp - 8], ax
jmp 0x408a25
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [0x47b64c]
cmp edx, eax
jg 0x408ad8
movsx ecx, word [ebp - 8]
movsx edx, byte [ecx + 0x476876]
cmp edx, 0x54
jne 0x408ad3
mov eax, 1
mov word [ebp - 4], ax
jmp 0x408a63
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [0x47b62c]
cmp edx, eax
jg 0x408ac8
movsx ecx, word [ebp - 8]
movsx edx, word [ebp - 4]
mov eax, dword [ecx*4 + 0x445e20]
movsx ecx, word [0x47b624]
movsx esi, word [ebp - 4]
add ecx, esi
movsd xmm0, qword [eax + edx*8]
movsd qword [ecx*8 + 0x47c2f8], xmm0
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
mov ecx, dword [edx*4 + 0x445e20]
movsx edx, word [0x47b624]
movsx esi, word [ebp - 4]
add edx, esi
movsd xmm0, qword [ecx + eax*8]
movsd qword [edx*8 + 0x484640], xmm0
jmp 0x408a57
mov byte [0x444278], 1
jmp 0x408ad8
jmp 0x408a19
mov eax, 1
mov word [ebp - 8], ax
jmp 0x408aef
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
movsx edx, word [ebp - 8]
movsx eax, word [0x47b64c]
cmp edx, eax
jg 0x408be2
movsx ecx, word [ebp - 8]
movsx edx, byte [ecx + 0x476876]
cmp edx, 0x54
jne 0x408bdd
mov eax, 1
mov word [ebp - 4], ax
jmp 0x408b2d
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [0x47b62c]
cmp edx, eax
jg 0x408bdd
movsx ecx, word [ebp - 8]
movsx edx, word [ebp - 4]
mov eax, dword [ecx*4 + 0x445e20]
movsd xmm0, qword [eax + edx*8]
movsd qword [0x445c50], xmm0
movsx ecx, word [0x47b624]
movsx edx, word [ebp - 4]
add ecx, edx
movsd xmm0, qword [0x445c50]
comisd xmm0, xmmword [ecx*8 + 0x484640]
jbe 0x408b9a
movsx eax, word [0x47b624]
movsx ecx, word [ebp - 4]
add eax, ecx
movsd xmm0, qword [0x445c50]
movsd qword [eax*8 + 0x484640], xmm0
movsx edx, word [0x47b624]
movsx eax, word [ebp - 4]
add edx, eax
movsd xmm0, qword [edx*8 + 0x47c2f8]
comisd xmm0, xmmword [0x445c50]
jbe 0x408bd8
movsx ecx, word [0x47b624]
movsx edx, word [ebp - 4]
add ecx, edx
movsd xmm0, qword [0x445c50]
movsd qword [ecx*8 + 0x47c2f8], xmm0
jmp 0x408b21
jmp 0x408ae3
movzx eax, byte [0x444278]
test eax, eax
je 0x408d39
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x408c08
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47b64c]
cmp eax, ecx
jg 0x408d39
movsx edx, word [ebp - 8]
movsx eax, byte [edx + 0x476876]
cmp eax, 0x54
jne 0x408caa
movzx ecx, byte [0x44427b]
test ecx, ecx
jne 0x408caa
mov edx, 1
mov word [ebp - 4], dx
jmp 0x408c4d
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47b62c]
cmp ecx, edx
jg 0x408c88
movsx eax, word [0x47b624]
movsx ecx, word [ebp - 4]
add eax, ecx
movsx edx, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [edx*4 + 0x445e20]
movsd xmm0, qword [eax*8 + 0x484640]
movsd qword [edx + ecx*8], xmm0
jmp 0x408c41
mov byte [0x44427b], 1
movsx eax, word [ebp - 8]
mov byte [eax + 0x4764f8], 0x58
movsx ecx, word [ebp - 8]
mov byte [ecx + 0x4778a0], 1
jmp 0x408bfc
movsx edx, word [ebp - 8]
movsx eax, byte [edx + 0x476876]
cmp eax, 0x54
jne 0x408d34
movzx ecx, byte [0x44427a]
test ecx, ecx
jne 0x408d34
mov edx, 1
mov word [ebp - 4], dx
jmp 0x408cdc
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [0x47b62c]
cmp ecx, edx
jg 0x408d17
movsx eax, word [0x47b624]
movsx ecx, word [ebp - 4]
add eax, ecx
movsx edx, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [edx*4 + 0x445e20]
movsd xmm0, qword [eax*8 + 0x47c2f8]
movsd qword [edx + ecx*8], xmm0
jmp 0x408cd0
mov byte [0x44427a], 1
movsx eax, word [ebp - 8]
mov byte [eax + 0x4764f8], 0x4d
movsx ecx, word [ebp - 8]
mov byte [ecx + 0x4778a0], 1
jmp 0x408bfc
movsx edx, word [0x47b64c]
push edx
call fcn.00402400
add esp, 4
mov eax, 1
mov word [ebp - 4], ax
jmp 0x408d60
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [0x47b62c]
cmp edx, eax
jg 0x408da3
movsx ecx, word [0x47b624]
movsx edx, word [ebp - 4]
add ecx, edx
xorps xmm0, xmm0
movsd qword [ecx*8 + 0x47c2f8], xmm0
movsx eax, word [0x47b624]
movsx ecx, word [ebp - 4]
add eax, ecx
xorps xmm0, xmm0
movsd qword [eax*8 + 0x484640], xmm0
jmp 0x408d54
mov dword [ebp - 0x4c], 0
call fcn.00401260
mov edx, 1
mov word [ebp - 8], dx
jmp 0x408dc6
mov ax, word [ebp - 8]
add ax, 1
mov word [ebp - 8], ax
movsx ecx, word [ebp - 8]
movsx edx, word [0x47b64c]
cmp ecx, edx
jg 0x408f9a
movsx eax, word [ebp - 8]
movsx ecx, word [eax*2 + 0x476bf4]
cmp ecx, 1
je 0x408dff
movsx edx, word [ebp - 8]
movsx eax, word [edx*2 + 0x476bf4]
cmp eax, 0xc
jne 0x408f95
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x408e16
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47b62c]
cmp eax, ecx
jg 0x408f95
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
mov ecx, dword [edx*4 + 0x445e20]
movsx edx, word [ebp - 8]
cvtss2sd xmm0, dword [edx*4 + 0x4770d0]
mulsd xmm0, qword [ecx + eax*8]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x34], xmm0
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [eax*4 + 0x445e20]
movsx eax, word [ebp - 8]
cvtss2sd xmm0, dword [eax*4 + 0x477260]
mulsd xmm0, qword [edx + ecx*8]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x38], xmm0
movss xmm0, dword [ebp - 0x38]
comiss xmm0, dword [ebp - 0x34]
jbe 0x408e94
movss xmm0, dword [ebp - 0x34]
movss dword [ebp - 0x3c], xmm0
jmp 0x408e9e
movss xmm0, dword [ebp - 0x38]
movss dword [ebp - 0x3c], xmm0
movss xmm0, dword [ebp - 0x3c]
movss dword [ebp - 0x44], xmm0
movss xmm0, dword [ebp - 0x34]
comiss xmm0, dword [ebp - 0x38]
jbe 0x408ebf
movss xmm0, dword [ebp - 0x34]
movss dword [ebp - 0x40], xmm0
jmp 0x408ec9
movss xmm0, dword [ebp - 0x38]
movss dword [ebp - 0x40], xmm0
movss xmm0, dword [ebp - 0x40]
movss dword [ebp - 0x48], xmm0
movsx ecx, word [ebp - 8]
movsx edx, byte [ecx + 0x476876]
cmp edx, 0x57
je 0x408f47
movsx eax, word [0x47b624]
movsx ecx, word [ebp - 4]
add eax, ecx
cvtss2sd xmm0, dword [ebp - 0x44]
addsd xmm0, qword [eax*8 + 0x47c2f8]
movsx edx, word [ebp - 4]
movsx eax, word [0x47b624]
add eax, edx
movsd qword [eax*8 + 0x47c2f8], xmm0
movsx ecx, word [0x47b624]
movsx edx, word [ebp - 4]
add ecx, edx
cvtss2sd xmm0, dword [ebp - 0x48]
addsd xmm0, qword [ecx*8 + 0x484640]
movsx eax, word [ebp - 4]
movsx ecx, word [0x47b624]
add ecx, eax
movsd qword [ecx*8 + 0x484640], xmm0
jmp 0x408f90
mov dword [ebp - 0x4c], 1
mov edx, 0x2c
shl edx, 0
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [edx + eax*4 + 0x466ca0]
movss xmm0, dword [ebp - 0x44]
movss dword [edx + ecx*4], xmm0
mov eax, 0x2c
shl eax, 0
movsx ecx, word [ebp - 8]
movsx edx, word [ebp - 4]
mov eax, dword [eax + ecx*4 + 0x466e00]
movss xmm0, dword [ebp - 0x48]
movss dword [eax + edx*4], xmm0
jmp 0x408e0a
jmp 0x408dba
cmp dword [ebp - 0x4c], 1
jne 0x40906d
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x408fbb
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [0x47b62c]
cmp eax, ecx
jg 0x40906d
movsx esi, word [0x47b624]
movsx edx, word [ebp - 4]
add esi, edx
movsx eax, word [ebp - 4]
push eax
movsx ecx, word [0x47b64c]
push ecx
push 1
push 1
call section..text
add esp, 0x10
fstp qword [ebp - 0x58]
movsd xmm0, qword [ebp - 0x58]
addsd xmm0, qword [esi*8 + 0x47c2f8]
movsx edx, word [ebp - 4]
movsx eax, word [0x47b624]
add eax, edx
movsd qword [eax*8 + 0x47c2f8], xmm0
movsx esi, word [0x47b624]
movsx ecx, word [ebp - 4]
add esi, ecx
movsx edx, word [ebp - 4]
push edx
movsx eax, word [0x47b64c]
push eax
push 1
push 1
call fcn.00401130
add esp, 0x10
fstp qword [ebp - 0x60]
movsd xmm0, qword [ebp - 0x60]
addsd xmm0, qword [esi*8 + 0x484640]
movsx ecx, word [ebp - 4]
movsx edx, word [0x47b624]
add edx, ecx
movsd qword [edx*8 + 0x484640], xmm0
jmp 0x408faf
mov eax, 1
mov word [ebp - 4], ax
jmp 0x409084
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [0x47b62c]
cmp edx, eax
jg 0x40938c
mov ecx, 1
mov word [ebp - 0xc], cx
jmp 0x4090ae
mov dx, word [ebp - 0xc]
add dx, 1
mov word [ebp - 0xc], dx
movsx eax, word [ebp - 0xc]
movsx ecx, word [0x4763cc]
cmp eax, ecx
jg 0x409278
movsx edx, word [0x47b624]
movsx eax, word [ebp - 4]
add edx, eax
movsd xmm0, qword [edx*8 + 0x47c2f8]
movsd qword [ebp - 0x30], xmm0
movsx ecx, word [0x47b624]
movsx edx, word [ebp - 4]
add ecx, edx
movsd xmm0, qword [ecx*8 + 0x484640]
movsd qword [ebp - 0x28], xmm0
movsx eax, word [ebp - 0xc]
movsx ecx, word [eax*2 + 0x476de8]
cmp ecx, 1
je 0x409119
movsx edx, word [ebp - 0xc]
movsx eax, word [edx*2 + 0x476de8]
cmp eax, 0xc
jne 0x40911b
jmp 0x4090a2
mov ecx, 1
mov word [ebp - 8], cx
jmp 0x409132
mov dx, word [ebp - 8]
add dx, 1
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [0x47b64c]
cmp eax, ecx
jg 0x40924f
movsx edx, word [ebp - 8]
movzx eax, byte [edx + 0x4778a0]
cmp eax, 1
jne 0x40924a
movsx ecx, word [ebp - 8]
movsx edx, word [ecx*2 + 0x476bf4]
movsx eax, word [ebp - 0xc]
movsx ecx, word [eax*2 + 0x476de8]
cmp edx, ecx
jne 0x4091a0
movsx edx, word [ebp - 8]
movsx eax, word [ebp - 4]
mov ecx, dword [edx*4 + 0x445e20]
movsx edx, word [ebp - 8]
cvtss2sd xmm0, dword [edx*4 + 0x4770d0]
mulsd xmm0, qword [ecx + eax*8]
movsd qword [0x445c50], xmm0
jmp 0x4091da
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 4]
mov edx, dword [eax*4 + 0x445e20]
movsx eax, word [ebp - 8]
cvtss2sd xmm0, dword [eax*4 + 0x4770d0]
mulsd xmm0, qword [edx + ecx*8]
movsx ecx, word [ebp - 8]
cvtss2sd xmm1, dword [ecx*4 + 0x4773f0]
mulsd xmm0, xmm1
movsd qword [0x445c50], xmm0
movsx edx, word [ebp - 8]
movsx eax, byte [edx + 0x4764f8]
cmp eax, 0x4d
je 0x409210
movsd xmm0, qword [ebp - 0x28]
addsd xmm0, qword [0x445c50]
comisd xmm0, xmmword [ebp - 0x28]
jbe 0x409210
movsd xmm0, qword [ebp - 0x28]
addsd xmm0, qword [0x445c50]
movsd qword [ebp - 0x28], xmm0
movsx ecx, word [ebp - 8]
movsx edx, byte [ecx + 0x4764f8]
cmp edx, 0x58
je 0x40924a
movsd xmm0, qword [ebp - 0x30]
addsd xmm0, qword [0x445c50]
movsd xmm1, qword [ebp - 0x30]
comisd xmm1, xmm0
jbe 0x40924a
movsd xmm0, qword [ebp - 0x30]
addsd xmm0, qword [0x445c50]
movsd qword [ebp - 0x30], xmm0
jmp 0x409126
movsx eax, word [ebp - 0xc]
movsd xmm0, qword [ebp - 0x30]
movsd qword [eax*8 + 0x445c70], xmm0
movsx ecx, word [ebp - 0xc]
movsd xmm0, qword [ebp - 0x28]
movsd qword [ecx*8 + 0x445d18], xmm0
jmp 0x4090a2
mov dword [ebp - 0x50], 0
mov edx, 1
mov word [ebp - 0xc], dx
jmp 0x409296
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
movsx ecx, word [ebp - 0xc]
movsx edx, word [0x4763cc]
cmp ecx, edx
jg 0x409351
movsx eax, word [ebp - 0xc]
movsx ecx, word [eax*2 + 0x476de8]
cmp ecx, 1
je 0x4092cb
movsx edx, word [ebp - 0xc]
movsx eax, word [edx*2 + 0x476de8]
cmp eax, 0xc
jne 0x4092cd
jmp 0x40928a
cmp dword [ebp - 0x50], 0
jne 0x409300
movsx ecx, word [ebp - 0xc]
movsd xmm0, qword [ecx*8 + 0x445c70]
movsd qword [ebp - 0x30], xmm0
movsx edx, word [ebp - 0xc]
movsd xmm0, qword [edx*8 + 0x445d18]
movsd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x50], 1
jmp 0x40928a
movsx eax, word [ebp - 0xc]
movsd xmm0, qword [ebp - 0x30]
comisd xmm0, xmmword [eax*8 + 0x445c70]
jbe 0x409326
movsx ecx, word [ebp - 0xc]
movsd xmm0, qword [ecx*8 + 0x445c70]
movsd qword [ebp - 0x30], xmm0
movsx edx, word [ebp - 0xc]
movsd xmm0, qword [edx*8 + 0x445d18]
comisd xmm0, xmmword [ebp - 0x28]
jbe 0x40934c
movsx eax, word [ebp - 0xc]
movsd xmm0, qword [eax*8 + 0x445d18]
movsd qword [ebp - 0x28], xmm0
jmp 0x40928a
movsx ecx, word [0x47b624]
movsx edx, word [ebp - 4]
add ecx, edx
movsd xmm0, qword [ebp - 0x28]
movsd qword [ecx*8 + 0x484640], xmm0
movsx eax, word [0x47b624]
movsx ecx, word [ebp - 4]
add eax, ecx
movsd xmm0, qword [ebp - 0x30]
movsd qword [eax*8 + 0x47c2f8], xmm0
jmp 0x409078
movsx edx, word [0x47b62c]
movsx eax, word [0x47b628]
add eax, edx
mov word [0x47b628], ax
movsx ecx, word [ebp - 0x1c]
movsx edx, word [0x47b628]
cmp ecx, edx
jle 0x4093cd
push 0x1a70
push 0x477e38
push 0x4763c8
call fcn.004217d0
add esp, 0xc
jmp 0x4086ce
push 0x4c8b00
mov eax, dword [0x476160]
push eax
movsx ecx, word [ebp - 0x14]
push ecx
push 0x4c8cf0
push str._sKOMBI_BF_i__i_1__s
push 0x4c8910
call fcn.00401f00
add esp, 0x18
push 0x438884
push 0x4c8910
call fcn.00426e66
add esp, 8
mov dword [0x466c98], eax
cmp dword [0x466c98], 0
je 0x409467
mov edx, 1
mov word [ebp - 4], dx
jmp 0x40942b
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [ebp - 0x1c]
cmp ecx, edx
jg 0x409457
mov eax, dword [0x466c98]
push eax
push 1
push 8
movsx ecx, word [ebp - 4]
lea edx, [ecx*8 + 0x47c2f8]
push edx
call fcn.00427779
add esp, 0x10
jmp 0x40941f
mov eax, dword [0x466c98]
push eax
call fcn.00426d7f
add esp, 4
jmp 0x409474
push 0x4c8910
call fcn.00402310
add esp, 4
push 0x4c8b00
mov ecx, dword [0x476160]
push ecx
movsx edx, word [ebp - 0x14]
push edx
push 0x4c8cf0
push str._sKOMBI_BF_i__i_2__s
push 0x4c8910
call fcn.00401f00
add esp, 0x18
push 0x4388a0
push 0x4c8910
call fcn.00426e66
add esp, 8
mov dword [0x466c98], eax
cmp dword [0x466c98], 0
je 0x40950f
mov eax, 1
mov word [ebp - 4], ax
jmp 0x4094d3
mov cx, word [ebp - 4]
add cx, 1
mov word [ebp - 4], cx
movsx edx, word [ebp - 4]
movsx eax, word [ebp - 0x1c]
cmp edx, eax
jg 0x409500
mov ecx, dword [0x466c98]
push ecx
push 1
push 8
movsx edx, word [ebp - 4]
lea eax, [edx*8 + 0x484640]
push eax
call fcn.00427779
add esp, 0x10
jmp 0x4094c7
mov ecx, dword [0x466c98]
push ecx
call fcn.00426d7f
add esp, 4
push 0x4c8b00
mov edx, dword [0x476160]
push edx
movsx eax, word [ebp - 0x14]
push eax
push 0x4c8cf0
push str._sKOMBI_BF_i__i_3__s
push 0x4c8910
call fcn.00401f00
add esp, 0x18
push 0x4388bc
push 0x4c8910
call fcn.00426e66
add esp, 8
mov dword [0x466c98], eax
cmp dword [0x466c98], 0
je 0x40962c
mov ecx, 1
mov word [ebp - 4], cx
jmp 0x409572
mov dx, word [ebp - 4]
add dx, 1
mov word [ebp - 4], dx
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 0x1c]
cmp eax, ecx
jg 0x40961d
movsx edx, word [ebp - 4]
sub esp, 8
movsd xmm0, qword [edx*8 + 0x484640]
movsd qword [esp], xmm0
call fcn.00427a73
add esp, 8
fstp qword [ebp - 0x68]
movsd xmm0, qword [ebp - 0x68]
movsx eax, word [ebp - 4]
sub esp, 8
movsd xmm1, qword [eax*8 + 0x47c2f8]
movsd qword [esp], xmm1
movsd qword [ebp - 0x78], xmm0
call fcn.00427a73
add esp, 8
fstp qword [ebp - 0x70]
movsd xmm0, qword [ebp - 0x70]
movsd xmm1, qword [ebp - 0x78]
comisd xmm0, xmm1
jbe 0x4095f0
movsx ecx, word [ebp - 4]
cvtsd2ss xmm0, qword [ecx*8 + 0x484640]
movss dword [ebp - 0x20], xmm0
jmp 0x409602
movsx edx, word [ebp - 4]
cvtsd2ss xmm0, qword [edx*8 + 0x47c2f8]
movss dword [ebp - 0x20], xmm0
mov eax, dword [0x466c98]
push eax
push 1
push 4
lea ecx, [ebp - 0x20]
push ecx
call fcn.00427779
add esp, 0x10
jmp 0x409566
mov edx, dword [0x466c98]
push edx
call fcn.00426d7f
add esp, 4
push 0x4c8b00
mov eax, dword [0x476160]
push eax
movsx ecx, word [ebp - 0x14]
push ecx
push 0x4c8cf0
push str._sKOMBI_BF_i__i_4__s
push 0x4c8910
call fcn.00401f00
add esp, 0x18
push 0x4388d8
push 0x4c8910
call fcn.00426e66
add esp, 8
mov dword [0x466c98], eax
cmp dword [0x466c98], 0
je 0x409750
mov edx, 1
mov word [ebp - 4], dx
jmp 0x40968e
mov ax, word [ebp - 4]
add ax, 1
mov word [ebp - 4], ax
movsx ecx, word [ebp - 4]
movsx edx, word [ebp - 0x1c]
cmp ecx, edx
jg 0x409742
movsx eax, word [ebp - 4]
sub esp, 8
movsd xmm0, qword [eax*8 + 0x484640]
movsd qword [esp], xmm0
call fcn.00427a73
add esp, 8
fstp qword [ebp - 0x80]
movsd xmm0, qword [ebp - 0x80]
movsx ecx, word [ebp - 4]
sub esp, 8
movsd xmm1, qword [ecx*8 + 0x47c2f8]
movsd qword [esp], xmm1
movsd qword [ebp - 0x88], xmm0
call fcn.00427a73
add esp, 8
fstp qword [ebp - 0x90]
movsd xmm0, qword [ebp - 0x88]
comisd xmm0, xmmword [ebp - 0x90]
jbe 0x409714
movsx edx, word [ebp - 4]
cvtsd2ss xmm0, qword [edx*8 + 0x484640]
movss dword [ebp - 0x20], xmm0
jmp 0x409726
movsx eax, word [ebp - 4]
cvtsd2ss xmm0, qword [eax*8 + 0x47c2f8]
movss dword [ebp - 0x20], xmm0
mov ecx, dword [0x466c98]
push ecx
push 1
push 4
lea edx, [ebp - 0x20]
push edx
call fcn.00427779
add esp, 0x10
jmp 0x409682
mov eax, dword [0x466c98]
push eax
call fcn.00426d7f
add esp, 4
push 0x1a70
push 0x477e38
push 0x4763c8
call fcn.004217d0
add esp, 0xc
jmp 0x408692
pop esi
mov esp, ebp
pop ebp
ret