Function at 0x4095d0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x444
movsd xmm0, qword [0x436c10]
mov eax, 0x5e24
mov word [ebp - 4], ax
movsd qword [ebp - 0x1c], xmm0
movsd xmm0, qword [0x437c30]
movsd qword [ebp - 0x14], xmm0
movsd xmm0, qword [0x436f30]
movsd qword [ebp - 0x14], xmm0
movsd xmm0, qword [0x4369c0]
push ebx
mov ebx, dword [ebp + 8]
mov ecx, ebx
movsd qword [ebp - 0xc], xmm0
call fcn.00404ce0
cmp eax, 0x8000
jbe 0x409955
lea eax, [ebp - 0x134]
push esi
push eax
call fcn.00406660
movsd xmm1, qword [ebp - 0xc]
add esp, 4
movsd xmm0, qword [0x4376d0]
mov esi, eax
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x409686
movss xmm0, dword [0x43f1e8]
addss xmm0, dword [0x436794]
movss dword [0x43f1e8], xmm0
movss xmm0, dword [0x43f1e8]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [ebp - 0x14]
addsd xmm0, xmm1
movsd qword [ebp - 0x14], xmm0
push edi
call fcn.00408e50
movzx eax, al
and eax, 0x80000003
jns 0x40969b
dec eax
or eax, 0xfffffffc
inc eax
add eax, 7
push eax
lea eax, [ebp - 0x134]
add eax, esi
push eax
call fcn.00408d50
push 5
push 0x2d8c
call fcn.00409070
mov esi, eax
lea eax, [ebp - 0x134]
push esi
push eax
call fcn.0041e030
push 3
push 0x4fd
call fcn.00409070
push esi
push 5
mov edi, eax
call fcn.004092b0
lea eax, [ebp - 0x134]
push edi
push eax
call fcn.0041f3ec
push edi
push 3
mov esi, eax
call fcn.004092b0
add esp, 0x38
pop edi
test esi, esi
je 0x409902
push esi
push 1
mov ecx, ebx
call fcn.00404ce0
push eax
mov ecx, ebx
call fcn.00405c10
push eax
call fcn.0041f55a
movsd xmm2, qword [ebp - 0xc]
add esp, 0x10
subsd xmm2, qword [0x4378d0]
movsd xmm1, qword [0x43f278]
addsd xmm1, qword [ebp - 0x1c]
movsd xmm0, qword [ebp - 0x1c]
movsd xmm3, qword [0x436798]
subsd xmm2, qword [0x436f38]
addsd xmm0, xmm3
comisd xmm1, xmm2
movsd qword [ebp - 0x1c], xmm0
jbe 0x4097a0
movss xmm0, dword [str.hMHl]
movss xmm1, dword [0x4372b4]
subss xmm1, xmm0
movsd xmm0, qword [ebp - 0xc]
movsx eax, word [ebp - 4]
cvtps2pd xmm1, xmm1
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
cvttsd2si eax, xmm1
mov word [ebp - 4], ax
movsd xmm0, qword [ebp - 0xc]
subsd xmm0, xmm3
movsd qword [ebp - 0xc], xmm0
push esi
call fcn.0041f0c1
dec dword [ebp - 4]
add esp, 4
movsx eax, word [ebp - 4]
movsd xmm0, qword [0x43f150]
sub eax, 0xd972308
movd xmm1, eax
movsx eax, word [0x43f0d4]
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm1, xmm0
jbe 0x4097f2
movsd xmm0, qword [ebp - 0x14]
addsd xmm0, qword [0x437148]
movsd qword [ebp - 0x14], xmm0
jmp 0x40983c
inc dword [ebp - 4]
movsd xmm0, qword [0x43f1b0]
subsd xmm0, qword [0x436798]
movsd qword [0x43f1b0], xmm0
movss xmm0, dword [0x43f4a8]
movsx eax, word [ebp - 4]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, qword [0x43f1b0]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x43f4a8], xmm0
mov ecx, ebx
call fcn.00404fe0
push 0x104
lea eax, [ebp - 0x23c]
mov byte [ebp - 0x138], 0
push eax
push 0
call dword [0x4417c0]
push 0x15
push 0x2d99
mov byte [ebp - 0x23d], 0
call fcn.00409070
push dword [0x4416b4]
mov esi, eax
lea eax, [ebp - 0x23c]
push dword [0x44169c]
push eax
push esi
lea eax, [ebp - 0x444]
push 0x207
push eax
call fcn.0041f79b
push esi
push 0x15
call fcn.004092b0
push dword [0x4416b4]
call fcn.0040b0a0
lea eax, [ebp - 0x444]
push eax
lea eax, [ebp - 0x134]
push eax
call fcn.00406950
push 0x208
lea eax, [ebp - 0x444]
push 0
push eax
call fcn.0041df90
add esp, 0x40
lea eax, [ebp - 0x23c]
push 0x105
push 0
push eax
call fcn.0041df90
add esp, 0xc
push 0x15f90
call dword [0x44181c]
lea eax, [ebp - 0x134]
push eax
call dword [0x44176c]
mov eax, 0xffffe24d
mov word [ebp - 4], ax
lea eax, [ebp - 0x134]
push 0x118
push 0
push eax
call fcn.0041df90
movsd xmm1, qword [0x43f0c8]
add esp, 0xc
subsd xmm1, qword [0x437b28]
movss xmm0, dword [0x43f4a8]
cvtps2pd xmm0, xmm0
pop esi
subsd xmm1, qword [0x437b48]
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x43f4a8], xmm0
pop ebx
mov esp, ebp
pop ebp
ret