Function at 0x421860
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
movss xmm0, dword [0x4a8028]
movss xmm3, dword [0x49a0fc]
movsd xmm2, qword [0x49de98]
subss xmm0, xmm3
movss dword [0x4a8028], xmm0
movsd xmm0, qword [0x4a8018]
subsd xmm2, xmm0
movss xmm0, dword [0x4a8028]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4a8018]
subsd xmm2, qword [0x49b878]
subsd xmm0, qword [0x49a100]
comisd xmm1, xmm2
movsd qword [0x4a8018], xmm0
jbe 0x421919
movss xmm1, dword [0x4a811c]
addss xmm1, dword [0x49cd34]
movss xmm0, dword [0x49e3a0]
subss xmm1, dword [0x49c6fc]
ucomiss xmm0, xmm1
movss xmm0, dword [0x4a811c]
subss xmm0, xmm3
lahf
movss dword [0x4a811c], xmm0
test ah, 0x44
jnp 0x421919
movsd xmm0, qword [0x4a8200]
subsd xmm0, qword [0x49d0d8]
movsd qword [0x4a8200], xmm0
movss xmm1, dword [0x4a825c]
movss xmm0, dword [0x4a811c]
cmp dword [0x4a99b8], 0
addss xmm0, dword [0x49c5e0]
subss xmm1, xmm0
movss dword [0x4a825c], xmm1
jne 0x4219d1
movsd xmm0, qword [0x4a8560]
mulsd xmm0, qword [0x49dc20]
movsd qword [0x4a8560], xmm0
call fcn.004208b0
mov dword [0x4a99b8], eax
mov eax, dword [0x4a8140]
movsd xmm1, qword [0x4a8138]
add eax, 0x3cc3f409
movd xmm2, eax
mov eax, dword [0x4a8188]
cvtdq2pd xmm2, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
ucomisd xmm2, xmm1
lahf
test ah, 0x44
jnp 0x4219d1
movss xmm0, dword [0x4a80f0]
addss xmm0, dword [0x4a8558]
movss dword [0x4a8558], xmm0
movss xmm0, dword [0x4a80f0]
addss xmm0, dword [0x49a0fc]
movss dword [0x4a80f0], xmm0
movsd xmm0, qword [0x4a8260]
addsd xmm0, qword [0x49c348]
push esi
push edi
push 3
push 0x16cf
movsd qword [0x4a8260], xmm0
call fcn.0042f440
movss xmm0, dword [0x4a83d4]
mov esi, eax
movss xmm1, dword [0x49d054]
subss xmm1, xmm0
push esi
push dword [ebp + 8]
subss xmm1, dword [0x49e388]
cvttss2si ecx, xmm1
mov dword [0x4a8580], ecx
movss xmm0, dword [0x4a83d4]
subss xmm0, dword [0x49a0fc]
movss dword [0x4a83d4], xmm0
call fcn.00454a3e
mov ecx, dword [0x4a81b0]
mov edi, eax
add ecx, 0x66c32a61
push esi
push 3
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movsd qword [0x4a8540], xmm0
inc dword [0x4a81b0]
call fcn.004048b0
movss xmm0, dword [0x4a80f0]
add esp, 0x18
subss xmm0, dword [0x49e190]
cvttss2si eax, xmm0
mov dword [0x4a83c8], eax
test edi, edi
jne 0x421bd1
movsd xmm0, qword [0x4a82e0]
mulsd xmm0, qword [0x49de10]
push 0x3e8
movsd qword [0x4a82e0], xmm0
call dword [0x4a90f8]
movzx eax, word [0x4a8358]
sub eax, 0x3d3c1219
push 3
push 0x16cf
mov word [0x4a8358], ax
call fcn.0042f440
mov ecx, dword [0x4a83e0]
mov esi, eax
push esi
push dword [ebp + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [0x4a84d0], xmm0
call fcn.00454a3e
movsd xmm2, qword [0x4a8528]
add esp, 0x10
movsd xmm0, qword [0x4a80b0]
mov edi, eax
movsd xmm1, qword [0x49a7f8]
subsd xmm1, xmm0
movsd xmm0, qword [0x4a80b0]
subsd xmm0, qword [0x49a100]
ucomisd xmm2, xmm1
movsd qword [0x4a80b0], xmm0
movsd xmm0, qword [0x4a8528]
addsd xmm0, qword [0x49a100]
lahf
movsd qword [0x4a8528], xmm0
test ah, 0x44
jnp 0x421b56
add dword [0x4a8284], 0xf18198d8
push esi
push 3
call fcn.004048b0
movss xmm0, dword [0x4a80e4]
add esp, 8
subss xmm0, dword [0x49e3f8]
movsd xmm1, qword [0x4a84e8]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [0x4a8090]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movsd xmm1, qword [0x49a100]
cvtpd2ps xmm0, xmm0
movss dword [0x4a8090], xmm0
movsd xmm0, qword [0x4a84e8]
subsd xmm0, xmm1
movsd qword [0x4a84e8], xmm0
movss xmm0, dword [0x4a80e4]
addss xmm0, dword [0x49a0fc]
movss dword [0x4a80e4], xmm0
jmp 0x421bd9
movsd xmm1, qword [0x49a100]
movsd xmm0, qword [0x4a8128]
addsd xmm0, qword [0x4a8508]
movsd qword [0x4a8508], xmm0
movsd xmm0, qword [0x4a8128]
addsd xmm0, xmm1
movsd qword [0x4a8128], xmm0
test edi, edi
je 0x421dc5
movss xmm0, dword [0x4a81d4]
subss xmm0, dword [0x49ccd8]
comiss xmm0, dword [0x49e138]
jbe 0x421c4d
movsd xmm1, qword [0x4a8548]
mov eax, dword [0x4a8424]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a8548], xmm1
dec dword [0x4a8424]
push edi
push 1
push 4
push 0x4a99b8
call fcn.00454d6a
mov ax, word [0x4a8438]
add esp, 0x10
movsx ecx, ax
movsx eax, word [0x4a8438]
dec word [0x4a8438]
sub ecx, eax
inc word [0x4a8438]
sub ecx, 0x18ad859f
cmp ecx, 0x3eed95df
jl 0x421d42
movss xmm0, dword [0x4a8090]
mov ecx, 0xbc2ef3cb
mov eax, dword [0x4a8174]
addss xmm0, dword [0x49c714]
movd xmm2, eax
mov eax, dword [0x4a81b4]
sub ecx, eax
mov eax, dword [0x4a8370]
cvtdq2ps xmm2, xmm2
add eax, ecx
movd xmm1, eax
addss xmm2, xmm0
movss xmm0, dword [0x4a8090]
subss xmm0, dword [0x49a0fc]
cvtdq2ps xmm1, xmm1
movss dword [0x4a8090], xmm0
comiss xmm2, xmm1
jbe 0x421db2
movsd xmm0, qword [0x4a8570]
subsd xmm0, qword [0x49a100]
movsd qword [0x4a8570], xmm0
movsd xmm1, qword [0x4a8570]
mov eax, dword [0x4a8194]
movd xmm0, eax
movsx eax, word [0x4a85a0]
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a85a0], ax
dec dword [0x4a8194]
jmp 0x421db2
movsd xmm0, qword [0x4a8020]
movsd xmm2, qword [0x49a100]
subsd xmm0, xmm2
movsd qword [0x4a8020], xmm0
movsd xmm0, qword [0x4a8020]
subsd xmm0, qword [0x49a5c0]
movsd xmm1, qword [0x4a82d0]
movsx eax, word [0x4a8334]
inc word [0x4a8334]
addsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm1, xmm0
jbe 0x421db2
movsd xmm0, qword [0x4a84a8]
movsd xmm0, qword [0x4a84a8]
addsd xmm0, xmm2
movsd qword [0x4a84a8], xmm0
push edi
call fcn.0045444f
add esp, 4
add dword [0x4a819c], 0x463f37c6
movsx eax, word [0x4a81bc]
movsd xmm0, qword [0x4a8448]
pop edi
pop esi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a8448], xmm0
pop ebp
ret