Function at 0x405c50
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
push ebx
push esi
push edi
xor eax, eax
push str.MinMaxOf_Macros
mov word [0x4697e8], ax
call fcn.00407e60
movsd xmm0, qword [ebp - 0x3c]
add esp, 4
mov si, word [0x4697e8]
mov dword [0x4661a0], 0x7f9
mov dword [ebp - 0x1c], 1
movsd qword [ebp - 0x34], xmm0
mov ax, word [0x4ea74e]
mov di, word [0x4697e4]
add ax, ax
movzx eax, ax
mov dx, ax
movsx ecx, di
sub dx, si
mov dword [ebp - 0x2c], eax
dec ecx
movsx eax, dx
mov byte [0x465a90], 0
mov byte [0x465a91], 0
mov byte [0x465a92], 0
mov byte [0x465a93], 0
mov word [0x4697ec], dx
cmp eax, ecx
jle 0x405ce4
lea edx, [edi - 1]
mov word [0x4697ec], dx
mov ebx, 1
movzx esi, si
mov ecx, ebx
mov dword [ebp - 4], esi
cmp cx, word [0x469804]
jg 0x405e43
nop
movsx edi, bx
movsx eax, word [edi*2 + 0x4fcb28]
push eax
push 0x4584d8
push 0x4ebfd8
call fcn.00401910
push 0x4eabd8
push 0x4ebfd8
push 0x45856c
push 0x4eb3d8
push str._s_s_s_s
push 0x4ec7d8
call fcn.00401910
push 0x4ec7d8
call fcn.00401950
push 0x4584ac
push 0x4ec7d8
call fcn.0042e9cc
movsx ecx, word [0x4697e8]
push 0
shl ecx, 3
push ecx
push eax
mov dword [0x465a94], eax
call fcn.0042f198
push dword [0x465a94]
movsx eax, word [0x4697ec]
push 1
shl eax, 3
push eax
push dword [0x4699a0]
call fcn.0042ec7e
mov eax, dword [0x465a94]
add esp, 0x4c
test eax, eax
je 0x405da2
push eax
call fcn.0042e6de
add esp, 4
mov dx, word [0x4697ec]
mov esi, 1
mov ecx, esi
cmp cx, dx
jg 0x405dec
nop word [eax + eax]
mov eax, dword [0x4699a0]
mov ecx, dword [edi*4 + 0x4699a0]
movsx edx, si
inc esi
movsd xmm0, qword [eax + edx*8 - 8]
movsd qword [ecx + edx*8], xmm0
mov dx, word [0x4697ec]
cmp si, dx
jle 0x405dc0
mov ecx, 1
mov esi, 1
cmp cx, dx
jg 0x405e32
nop word [eax + eax]
movss xmm0, dword [edi*4 + 0x466cbc]
mov eax, dword [edi*4 + 0x4699a0]
cvtps2pd xmm0, xmm0
movsx ecx, si
inc esi
mulsd xmm0, qword [eax + ecx*8]
movsd qword [eax + ecx*8], xmm0
mov dx, word [0x4697ec]
cmp si, dx
jle 0x405e00
mov ecx, 1
inc ebx
cmp bx, word [0x469804]
jle 0x405d00
mov esi, dword [ebp - 4]
mov bx, word [0x469804]
mov eax, 1
cmp cx, bx
jg 0x405f58
nop dword [eax + eax]
movsx ecx, ax
cmp byte [ecx + 0x4662d8], 0x54
je 0x405e74
inc eax
cmp ax, bx
jle 0x405e60
jmp 0x405ebc
mov eax, 1
cmp ax, dx
jg 0x405eb5
mov ecx, dword [ecx*4 + 0x4699a0]
movsx eax, si
add ecx, 8
shl eax, 3
movzx esi, dx
movsd xmm0, qword [ecx]
lea ecx, [ecx + 8]
movsd qword [eax + 0x4f4b70], xmm0
lea eax, [eax + 8]
movsd xmm0, qword [ecx - 8]
movsd qword [eax + 0x4f8b30], xmm0
sub esi, 1
jne 0x405e91
mov byte [0x465a90], 1
mov ecx, 1
cmp cx, bx
jg 0x405f58
movzx eax, word [0x469804]
mov edi, 0x4662d9
mov ebx, 0x4699a4
mov dword [ebp - 8], eax
nop
cmp byte [edi], 0x54
jne 0x405f45
cmp cx, dx
jg 0x405f45
mov eax, dword [ebp - 4]
mov ecx, dword [ebx]
cwde
add ecx, 8
shl eax, 3
movzx esi, dx
nop dword [eax]
movsd xmm1, qword [ecx]
comisd xmm1, xmmword [eax + 0x4f8b38]
movsd qword [0x469678], xmm1
jbe 0x405f1e
movsd qword [eax + 0x4f8b38], xmm1
movsd xmm0, qword [eax + 0x4f4b70]
comisd xmm0, xmm1
jbe 0x405f34
movsd qword [eax + 0x4f4b70], xmm1
add ecx, 8
add eax, 8
sub esi, 1
jne 0x405f00
mov eax, dword [ebp - 8]
lea ecx, [esi + 1]
inc edi
add ebx, 4
sub eax, 1
mov dword [ebp - 8], eax
jne 0x405ee0
mov bx, word [0x469804]
cmp byte [0x465a90], 0
je 0x406069
mov eax, 1
mov dword [ebp - 8], eax
cmp cx, bx
jg 0x406069
nop word [eax + eax]
movsx edi, ax
cmp byte [edi + 0x4662d8], 0x54
jne 0x40605c
cmp byte [0x465a93], 0
jne 0x405ff7
mov esi, 1
cmp cx, dx
jg 0x405fe7
mov eax, dword [ebp - 4]
movsx ebx, ax
nop dword [eax]
mov ecx, dword [edi*4 + 0x4699a0]
movsx edx, si
inc esi
lea eax, [ebx + edx]
movsd xmm0, qword [eax*8 + 0x4f8b30]
movsd qword [ecx + edx*8], xmm0
mov dx, word [0x4697ec]
cmp si, dx
jle 0x405fb0
mov eax, dword [ebp - 8]
mov ecx, 1
mov bx, word [0x469804]
mov byte [0x465a93], 1
mov byte [edi + 0x4662d8], 0x58
jmp 0x406055
cmp byte [0x465a92], 0
jne 0x40605c
mov esi, 1
cmp cx, dx
jg 0x406047
mov eax, dword [ebp - 4]
movsx ebx, ax
mov ecx, dword [edi*4 + 0x4699a0]
movsx edx, si
inc esi
lea eax, [ebx + edx]
movsd xmm0, qword [eax*8 + 0x4f4b68]
movsd qword [ecx + edx*8], xmm0
mov dx, word [0x4697ec]
cmp si, dx
jle 0x406010
mov eax, dword [ebp - 8]
mov ecx, 1
mov bx, word [0x469804]
mov byte [0x465a92], 1
mov byte [edi + 0x4662d8], 0x4d
mov byte [edi + 0x467680], 1
inc eax
mov dword [ebp - 8], eax
cmp ax, bx
jle 0x405f80
cmp cx, dx
jg 0x406098
mov eax, dword [ebp - 4]
cwde
movzx edx, dx
shl edx, 3
mov ecx, edx
shr ecx, 2
lea edi, [eax*8 + 0x4f8b38]
lea esi, [eax*8 + 0x4f4b70]
xor eax, eax
rep stosd dword es:[edi], eax
shr edx, 2
mov edi, esi
mov ecx, edx
rep stosd dword es:[edi], eax
xor ebx, ebx
call fcn.00401000
mov dx, word [0x469804]
mov edi, 1
mov esi, edi
mov dword [ebp - 8], edi
cmp si, dx
jg 0x406259
nop dword [eax]
movsx edx, di
movzx eax, word [edx*2 + 0x4669d4]
cmp ax, 1
je 0x4060db
cmp ax, 0xc
jne 0x4061b0
mov ax, word [0x4697ec]
mov ecx, 1
mov byte [0x465a91], 1
cmp si, ax
jg 0x4061b6
mov edi, dword [ebp - 4]
nop dword [eax]
cmp byte [edx + 0x466656], 0x57
movss xmm0, dword [edx*4 + 0x466eb0]
mov eax, dword [edx*4 + 0x4699a0]
cvtps2pd xmm0, xmm0
movsx esi, cx
mulsd xmm0, qword [eax + esi*8]
cvtpd2ps xmm2, xmm0
movss xmm0, dword [edx*4 + 0x467040]
cvtps2pd xmm0, xmm0
movaps xmm1, xmm2
mulsd xmm0, qword [eax + esi*8]
cvtpd2ps xmm0, xmm0
minss xmm1, xmm0
maxss xmm2, xmm0
je 0x406179
cvtps2pd xmm0, xmm1
movsx eax, di
add eax, esi
addsd xmm0, qword [eax*8 + 0x4f4b68]
movsd qword [eax*8 + 0x4f4b68], xmm0
cvtps2pd xmm0, xmm2
addsd xmm0, qword [eax*8 + 0x4f8b30]
movsd qword [eax*8 + 0x4f8b30], xmm0
jmp 0x406196
mov eax, dword [edx*4 + 0x465ac4]
mov ebx, 1
movss dword [eax + esi*4], xmm1
mov eax, dword [edx*4 + 0x465c24]
movss dword [eax + esi*4], xmm2
mov ax, word [0x4697ec]
inc ecx
cmp cx, ax
jle 0x406100
mov edi, dword [ebp - 8]
mov esi, 1
jmp 0x4061b6
mov ax, word [0x4697ec]
mov dx, word [0x469804]
inc edi
mov dword [ebp - 8], edi
cmp di, dx
jle 0x4060c0
cmp ebx, 1
jne 0x406259
cmp si, ax
jg 0x406259
mov eax, dword [ebp - 4]
movsx edi, ax
mov dword [ebp - 0x18], edi
movsx esi, bx
push esi
movsx eax, dx
push eax
push 1
push 1
call fcn.00401260
movsx eax, word [0x469804]
add edi, esi
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
push esi
addsd xmm0, qword [edi*8 + 0x4f4b68]
push eax
push 1
push 1
movsd qword [edi*8 + 0x4f4b68], xmm0
call fcn.00401180
mov ax, word [0x4697ec]
inc ebx
mov dx, word [0x469804]
add esp, 0x20
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
addsd xmm0, qword [edi*8 + 0x4f8b30]
movsd qword [edi*8 + 0x4f8b30], xmm0
cmp bx, ax
jg 0x40625f
mov edi, dword [ebp - 0x18]
jmp 0x4061e5
mov ax, word [0x4697ec]
mov ecx, 1
cmp cx, ax
jg 0x406484
mov eax, dword [ebp - 4]
mov ebx, 1
movsd xmm2, qword [ebp - 0x3c]
movsd xmm3, qword [ebp - 0x34]
mov si, word [0x4661ac]
movsx ecx, ax
movzx eax, word [0x4697ec]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 8], ebx
lea edi, [ecx*8]
mov dword [ebp - 4], eax
mov dword [ebp - 0x18], edi
cmp word [ebp - 0x1c], si
jg 0x4063e1
lea eax, [ebx + ecx]
mov edi, 0x466bca
movsd xmm4, qword [eax*8 + 0x4f4b68]
xor ecx, ecx
movsd xmm5, qword [eax*8 + 0x4f8b30]
movzx eax, si
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
movzx eax, word [edi]
movaps xmm2, xmm4
movsd qword [ebp - 0x3c], xmm2
movaps xmm3, xmm5
movsd qword [ebp - 0x34], xmm3
mov esi, eax
mov dword [ebp - 0x20], esi
cmp ax, 1
je 0x4063be
cmp ax, 0xc
je 0x4063be
mov eax, 1
cmp ax, dx
jg 0x4063ae
mov eax, 0x4662d9
movzx edi, dx
mov esi, 0x4669d6
xor ecx, ecx
nop
cmp byte [eax + 0x13a8], 1
jne 0x40638b
movss xmm1, dword [ecx + 0x466eb4]
mov ebx, dword [ebp - 0x20]
cmp word [esi], bx
mov edx, dword [ecx + 0x4699a4]
mov ebx, dword [ebp - 8]
cvtps2pd xmm1, xmm1
mulsd xmm1, qword [edx + ebx*8]
je 0x406359
movss xmm0, dword [ecx + 0x4671d4]
cvtps2pd xmm0, xmm0
mulsd xmm1, xmm0
mov dl, byte [eax]
movsd qword [0x469678], xmm1
cmp dl, 0x4d
je 0x406380
movaps xmm0, xmm1
addsd xmm0, xmm3
maxsd xmm0, xmm3
movaps xmm3, xmm0
movsd qword [ebp - 0x3c], xmm3
cmp dl, 0x58
je 0x40638b
addsd xmm1, xmm2
minsd xmm1, xmm2
movaps xmm2, xmm1
add esi, 2
add ecx, 4
inc eax
sub edi, 1
jne 0x406320
mov ecx, dword [ebp - 0x10]
mov dx, word [0x469804]
mov edi, dword [ebp - 0xc]
movsd qword [ebp - 0x34], xmm3
movsd qword [ebp - 0x3c], xmm2
movsd qword [ecx + 0x469698], xmm2
movsd qword [ecx + 0x469740], xmm3
add edi, 2
add ecx, 8
sub dword [ebp - 0x14], 1
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x10], ecx
jne 0x4062d5
mov edi, dword [ebp - 0x18]
mov si, word [0x4661ac]
mov eax, dword [ebp - 4]
mov ecx, 1
xor bl, bl
cmp cx, si
jg 0x40644b
mov edx, 0x466bca
movzx esi, si
xor eax, eax
movzx ecx, word [edx]
cmp cx, 1
je 0x40642c
cmp cx, 0xc
je 0x40642c
movsd xmm0, qword [eax + 0x469698]
movsd xmm1, qword [eax + 0x469740]
test bl, bl
jne 0x40641e
mov bl, 1
jmp 0x406426
minsd xmm0, xmm2
maxsd xmm1, xmm3
movaps xmm3, xmm1
movaps xmm2, xmm0
add edx, 2
add eax, 8
sub esi, 1
jne 0x4063f7
mov si, word [0x4661ac]
mov eax, dword [ebp - 4]
movsd qword [ebp - 0x34], xmm3
movsd qword [ebp - 0x3c], xmm2
mov ebx, dword [ebp - 8]
mov dx, word [0x469804]
inc ebx
mov ecx, dword [ebp - 0x24]
movsd qword [edi + 0x4f8b38], xmm3
movsd qword [edi + 0x4f4b70], xmm2
add edi, 8
sub eax, 1
mov dword [ebp - 8], ebx
mov dword [ebp - 0x18], edi
mov dword [ebp - 4], eax
jne 0x4062a3
mov ax, word [0x4697ec]
mov si, word [0x4697e8]
add si, ax
mov word [0x4697e8], si
cmp word [ebp - 0x2c], si
jle 0x4064b7
push 0x1a54
push 0x467c00
push 0x4661a8
call fcn.00409700
add esp, 0xc
jmp 0x405c90
push 0x4eabd8
push str.HVMIXN
push 0x4eb3d8
push str._s_s_s
push 0x4ec7d8
call fcn.00401910
push 0x458500
push 0x4ec7d8
call fcn.0042e9cc
push eax
push 1
push 0x3fc8
push 0x4f4b68
mov dword [0x465a94], eax
call fcn.0042f561
push dword [0x465a94]
push 1
push 0x3fc8
push 0x4f8b30
call fcn.0042f561
mov eax, dword [0x465a94]
add esp, 0x3c
pop edi
pop esi
pop ebx
test eax, eax
je 0x40652a
push eax
call fcn.0042e6de
add esp, 4
push 0x4eabd8
push str.KOMBI_HVMIMX
push 0x4eb3d8
push str._s_s_0_1__s
push 0x4ec7d8
call fcn.00401910
push 0x458500
push 0x4ec7d8
call fcn.0042e9cc
push eax
push 1
push 0x3fc8
push 0x4f4b68
mov dword [0x465a94], eax
call fcn.0042f561
mov eax, dword [0x465a94]
add esp, 0x2c
test eax, eax
je 0x406583
push eax
call fcn.0042e6de
add esp, 4
push 0x4eabd8
push str.KOMBI_HVMIMX
push 0x4eb3d8
push str._s_s_0_2__s
push 0x4ec7d8
call fcn.00401910
push 0x458500
push 0x4ec7d8
call fcn.0042e9cc
push eax
push 1
push 0x3fc8
push 0x4f8b30
mov dword [0x465a94], eax
call fcn.0042f561
mov eax, dword [0x465a94]
add esp, 0x2c
test eax, eax
je 0x4065dc
push eax
call fcn.0042e6de
add esp, 4
mov esp, ebp
pop ebp
ret