Function at 0x443cb0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
movsd xmm0, qword [0x49caa8]
sub esp, 0x428
mov ecx, dword [ebp + 8]
movsd qword [0x4a71a0], xmm0
call fcn.004027c0
cmp eax, 0x8000
jbe 0x44449d
mov eax, dword [0x4a7460]
push esi
push edi
movd xmm2, eax
mov ax, word [0x4a7250]
mov ecx, dword [0x4a7540]
movsd xmm1, qword [0x4a7030]
cwde
sub ecx, eax
cvtdq2pd xmm2, xmm2
movd xmm0, ecx
mov ecx, 0x7913f388
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
subsd xmm2, xmm1
cvttsd2si eax, xmm2
mov dword [0x4a7460], eax
movss xmm0, dword [0x4a7450]
addss xmm0, dword [0x499d94]
movss dword [0x4a7450], xmm0
movss xmm2, dword [0x4a7450]
movss xmm1, dword [0x4a7340]
movsx eax, word [0x4a717c]
subss xmm2, dword [0x49c2c0]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
subss xmm1, xmm2
movss dword [0x4a7340], xmm1
inc word [0x4a7268]
movsx eax, word [0x4a7268]
sub ecx, eax
add dword [0x4a7560], ecx
mov eax, dword [0x4a744c]
sub eax, 0x504d95de
mov dword [0x4a715c], eax
lea eax, [ebp - 0x118]
push eax
call fcn.00441090
inc dword [0x4a7440]
mov edx, 0xeff0f364
mov ecx, dword [0x4a7440]
mov esi, eax
sub edx, ecx
mov ecx, dword [0x4a7198]
add ecx, edx
add dword [0x4a709c], ecx
call fcn.004036d0
movzx ecx, al
and ecx, 0x80000003
jns 0x443dd7
dec ecx
or ecx, 0xfffffffc
inc ecx
add ecx, 7
lea eax, [ebp - 0x118]
push ecx
add eax, esi
push eax
call fcn.00403a30
movsx ecx, word [0x4a74e8]
add esp, 0xc
mov eax, dword [0x4a7434]
add ecx, 0x8f572c40
inc word [0x4a74e8]
add eax, 0x73a6bf1e
cmp eax, ecx
jg 0x443e20
movzx eax, word [0x4a7068]
add eax, 0x6df2a78b
mov word [0x4a7068], ax
push ebx
push 5
push 0x3422
call fcn.00441870
movss xmm0, dword [0x4a707c]
mov ebx, eax
cvtps2pd xmm1, xmm0
mov edx, ebx
add esp, 8
mov esi, edx
movsd xmm0, qword [0x4a70f0]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4a707c], xmm0
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x443e60
lea edi, [ebp - 0x118]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x443e70
mov eax, dword [0x4a7344]
mov ecx, edx
movsd xmm0, qword [0x4a7228]
add eax, 0x4b8ab27c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
movd xmm1, eax
mov ecx, edx
cvtdq2pd xmm1, xmm1
and ecx, 3
push 3
push 0x10da
rep movsb byte es:[edi], byte [esi]
addsd xmm0, xmm1
movsd qword [0x4a7228], xmm0
call fcn.00441870
movsd xmm0, qword [0x4a70f8]
mov esi, eax
addsd xmm0, qword [0x49bae0]
push ebx
push 5
movsd qword [0x4a70f8], xmm0
call fcn.00445430
movsd xmm0, qword [0x4a72c0]
mov ecx, 0x36970792
movsd xmm3, qword [0x499d98]
add esp, 0x10
subsd xmm0, xmm3
pop ebx
movsd qword [0x4a72c0], xmm0
movsd xmm1, qword [0x4a72c0]
movsx eax, word [0x4a7068]
addsd xmm1, qword [0x49bc60]
sub ecx, eax
mov eax, dword [0x4a716c]
add eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jbe 0x443fc2
dec dword [0x4a7168]
mov eax, dword [0x4a741c]
movsd xmm2, qword [0x4a7520]
movd xmm0, eax
mov eax, dword [0x4a7168]
cvtdq2pd xmm0, xmm0
addsd xmm2, xmm0
movd xmm0, eax
movsx eax, word [0x4a7074]
cvtdq2pd xmm0, xmm0
movd xmm1, eax
subsd xmm2, xmm0
movss xmm0, dword [0x4a752c]
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
cvtps2pd xmm1, xmm0
movss xmm0, dword [0x4a752c]
comisd xmm2, xmm1
addss xmm0, dword [0x499d94]
movss dword [0x4a752c], xmm0
movsd xmm0, qword [0x4a7520]
subsd xmm0, xmm3
movsd qword [0x4a7520], xmm0
jbe 0x443fc2
movzx eax, word [0x4a746c]
sub eax, 0x3adcb6fa
mov word [0x4a746c], ax
lea eax, [ebp - 0x118]
push esi
push eax
call fcn.00454f6e
movss xmm0, dword [0x4a707c]
mov edi, eax
mulss xmm0, dword [0x49c220]
push esi
push 3
movss dword [0x4a707c], xmm0
call fcn.00445430
movsx ecx, word [0x4a7230]
mov edx, 0x1011a5be
movss xmm0, dword [0x4a72e0]
sub edx, ecx
add esp, 0x10
movd xmm1, edx
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a72e0], xmm0
test edi, edi
je 0x44444e
add dword [0x4a7198], 0xf965cb56
movzx eax, word [0x4a73bc]
mov ecx, dword [0x4a7434]
mov esi, dword [ebp + 8]
cwde
imul ecx, eax
push edi
push 1
mov dword [0x4a7434], ecx
mov ecx, esi
call fcn.004027c0
push eax
mov ecx, esi
call fcn.00402810
push eax
call fcn.0045529a
movsx eax, word [0x4a7368]
movsd xmm0, qword [0x4a73f0]
push edi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov word [0x4a7368], ax
movsd xmm0, qword [0x4a73f0]
addsd xmm0, qword [0x499d98]
movsd qword [0x4a73f0], xmm0
call fcn.0045497f
movss xmm0, dword [0x4a7444]
add esp, 0x14
subss xmm0, dword [0x49be34]
mov ecx, esi
movss dword [0x4a7444], xmm0
call fcn.00406380
inc dword [0x4a711c]
mov eax, dword [0x4a711c]
movzx ecx, word [0x4a706c]
add eax, 0xc8500b1b
imul ecx, eax
push 0x104
mov byte [ebp - 0x11c], 0
mov word [0x4a706c], cx
mov eax, dword [0x4a709c]
movsd xmm0, qword [0x4a7498]
add eax, 0x1e03b66a
movd xmm1, eax
lea eax, [ebp - 0x220]
cvtdq2pd xmm1, xmm1
push eax
push 0
mulsd xmm0, xmm1
movsd qword [0x4a7498], xmm0
call dword [0x4a807c]
movzx eax, word [0x4a7200]
add eax, 0x4aa01293
mov byte [ebp - 0x221], 0
mov word [0x4a7200], ax
movsx eax, word [0x4a7250]
movzx ecx, word [0x4a728c]
add eax, 0xba90a02c
imul ecx, eax
push 0x15
push 0x33ee
mov word [0x4a728c], cx
dec word [0x4a7250]
call fcn.00441870
mov ecx, dword [0x4a7440]
mov esi, eax
movsd xmm0, qword [0x4a7328]
lea eax, [ebp - 0x220]
subsd xmm0, qword [0x4a7120]
push dword [0x4a87bc]
movd xmm1, ecx
push dword [0x4a87a4]
cvtdq2pd xmm1, xmm1
push eax
push esi
push 0x207
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [0x4a7440], ecx
lea eax, [ebp - 0x428]
push eax
call fcn.0042f160
push esi
push 0x15
mov dword [0x4a7464], 0xce9be47e
call fcn.00445430
movzx eax, word [0x4a7358]
add esp, 0x28
movsx ecx, word [0x4a7554]
movsd xmm1, qword [0x4a7210]
movsd xmm0, qword [0x4a7210]
addsd xmm0, qword [0x499d98]
subsd xmm1, qword [0x49b780]
cwde
add ecx, eax
movsd qword [0x4a7210], xmm0
dec word [0x4a7358]
dec word [0x4a7554]
movd xmm2, ecx
cvtdq2pd xmm2, xmm2
comisd xmm2, xmm1
jb 0x44427e
movss xmm1, dword [0x4a73c0]
movss xmm0, dword [0x4a7170]
movsx eax, word [0x4a7218]
subss xmm1, dword [0x49d9bc]
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a7218], ax
movss xmm0, dword [0x4a73c0]
addss xmm0, dword [0x499d94]
movss dword [0x4a73c0], xmm0
push dword [0x4a87bc]
call fcn.00440770
movsd xmm0, qword [0x4a74c0]
lea eax, [ebp - 0x428]
subsd xmm0, qword [0x49b0f8]
push eax
lea eax, [ebp - 0x118]
push eax
movsd qword [0x4a74c0], xmm0
call fcn.004330f0
movss xmm2, dword [0x4a7364]
add esp, 0xc
movsx eax, word [0x4a7490]
subss xmm2, dword [0x49beb4]
movss xmm1, dword [0x4a70a8]
addss xmm1, dword [0x49bd04]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
movss xmm0, dword [0x4a70a8]
subss xmm0, dword [0x499d94]
comiss xmm2, xmm1
movss dword [0x4a70a8], xmm0
jbe 0x44436e
mov eax, dword [0x4a735c]
sub eax, dword [0x4a7344]
movsd xmm1, qword [0x4a74d8]
movd xmm2, eax
movsx eax, word [0x4a7490]
cvtdq2pd xmm2, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
subsd xmm1, qword [0x499f68]
ucomisd xmm2, xmm1
lahf
test ah, 0x44
jp 0x44436e
movsd xmm0, qword [0x4a7330]
movsd xmm0, qword [0x4a7088]
movsd xmm0, qword [0x4a7330]
subsd xmm0, qword [0x499d98]
movsd qword [0x4a7330], xmm0
push 0x208
lea eax, [ebp - 0x428]
push 0
push eax
call fcn.00449560
mov eax, dword [0x4a709c]
movsd xmm0, qword [0x4a70d8]
add eax, 0x4bf51e10
push 0x105
push 0
movd xmm1, eax
lea eax, [ebp - 0x220]
cvtdq2pd xmm1, xmm1
push eax
mulsd xmm0, xmm1
movsd qword [0x4a70d8], xmm0
call fcn.00449560
mov eax, dword [0x4a7518]
add esp, 0x18
add eax, 0x7914cd65
push 0x15f90
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x4a733c], xmm0
dec dword [0x4a7518]
call dword [0x4a80d8]
movsd xmm0, qword [0x4a72c0]
addsd xmm0, qword [0x499d98]
movsd qword [0x4a72c0], xmm0
movsd xmm1, qword [0x4a72c0]
movsx eax, word [0x4a73d8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd xmm0, qword [0x4a72d0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4a721c], eax
lea eax, [ebp - 0x118]
dec word [0x4a73d8]
push eax
call dword [0x4a8028]
mov eax, 0x5c3b
mov word [0x4a7038], ax
mov ax, word [0x4a7494]
movsx ecx, ax
mov eax, dword [0x4a716c]
add eax, ecx
mov ecx, dword [0x4a7458]
imul ecx, eax
lea eax, [ebp - 0x118]
push 0x118
push 0
push eax
mov dword [0x4a7458], ecx
call fcn.00449560
movss xmm0, dword [0x4a7510]
add esp, 0xc
mulss xmm0, dword [0x49db7c]
pop edi
movss dword [0x4a7510], xmm0
pop esi
movss xmm0, dword [0x4a7408]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4a72a8]
subsd xmm0, qword [0x49a440]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4a7408], xmm0
mov esp, ebp
pop ebp
ret