Function at 0x413e50
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
movsx eax, word [0x4a403c]
sub esp, 0x42c
add eax, 0x1245aef1
movd xmm2, eax
movsx eax, word [0x4a43f8]
movss xmm0, dword [0x4a4030]
inc word [0x4a403c]
cvtdq2ps xmm2, xmm2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
comiss xmm1, xmm2
jbe 0x413ede
movss xmm1, dword [0x4a43c8]
movsx eax, word [0x4a4304]
subss xmm1, dword [0x4990c0]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, dword [0x49a744]
addss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a4304], ax
movss xmm0, dword [0x4a43c8]
subss xmm0, dword [0x496cd8]
movss dword [0x4a43c8], xmm0
push ebx
mov ebx, dword [ebp + 8]
mov ecx, ebx
call fcn.00402b60
cmp eax, 0x8000
jbe 0x41473f
movsx eax, word [section..data]
mov edx, 0xadea6142
sub edx, eax
mov ecx, 0x482e78e5
mov eax, dword [0x4a43bc]
sub ecx, eax
inc word [section..data]
cmp ecx, edx
je 0x413f39
movsd xmm0, qword [0x4a4160]
subsd xmm0, qword [0x498b68]
addsd xmm0, qword [0x498198]
movsd qword [0x4a43f0], xmm0
mov ax, word [0x4a44bc]
movsx ecx, ax
mov eax, dword [0x4a416c]
sub ecx, eax
mov word [0x4a44bc], cx
dec dword [0x4a416c]
movsd xmm0, qword [0x4a44b0]
subsd xmm0, qword [0x497198]
push esi
push edi
movsd qword [0x4a44b0], xmm0
movss xmm1, dword [0x4a4324]
mov eax, dword [0x4a42e4]
add eax, 0x50093e41
movd xmm0, eax
lea eax, [ebp - 0x11c]
cvtdq2ps xmm0, xmm0
push eax
subss xmm1, xmm0
movss dword [0x4a4324], xmm1
dec dword [0x4a42e4]
call fcn.004055a0
movzx ecx, word [0x4a42b0]
mov esi, eax
add ecx, 0x3b51e745
mov word [0x4a42b0], cx
call fcn.00422ac0
movzx ecx, al
and ecx, 0x80000003
jns 0x413fd2
dec ecx
or ecx, 0xfffffffc
inc ecx
add ecx, 7
lea eax, [ebp - 0x11c]
push ecx
add eax, esi
push eax
call fcn.00403a70
movsd xmm0, qword [0x4a4238]
mulsd xmm0, qword [0x4a4220]
push 5
push 0x3265
movsd qword [0x4a4220], xmm0
call fcn.004359d0
mov ecx, dword [0x4a431c]
mov edx, eax
movsd xmm0, qword [0x4a4028]
add esp, 0x14
mov dword [ebp - 4], eax
mov esi, edx
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvttsd2si ecx, xmm0
mov dword [0x4a431c], ecx
mov al, byte [edx]
inc edx
test al, al
jne 0x414036
lea edi, [ebp - 0x11c]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414046
movsd xmm0, qword [0x4a4040]
mov ecx, edx
movsd xmm2, qword [0x4972a0]
movsd xmm1, qword [0x4a4268]
subsd xmm2, xmm0
movsd xmm0, qword [0x4a4268]
subsd xmm1, qword [0x498900]
addsd xmm0, qword [0x496ce0]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
comisd xmm2, xmm1
rep movsb byte es:[edi], byte [esi]
movsd qword [0x4a4268], xmm0
jb 0x4140aa
add dword [0x4a4434], 0xaae562a1
jmp 0x4140c2
mov eax, dword [0x4a4134]
mov ecx, 0x3887766a
sub ecx, eax
mov dword [0x4a424c], ecx
dec dword [0x4a4134]
push 3
push 0x25ad
call fcn.004359d0
movsd xmm1, qword [0x4a4268]
mov esi, eax
movss xmm0, dword [0x4a4060]
subsd xmm1, qword [0x4973d8]
push dword [ebp - 4]
cvtps2pd xmm0, xmm0
push 5
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a4060], xmm0
call fcn.0041b9c0
mov eax, dword [0x4a4370]
movsd xmm0, qword [0x4a4250]
push esi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4a427c], eax
lea eax, [ebp - 0x11c]
inc dword [0x4a4370]
movsd xmm0, qword [0x4a4250]
addsd xmm0, qword [0x496ce0]
push eax
movsd qword [0x4a4250], xmm0
call fcn.0045141e
mov cx, word [0x4a4280]
mov edi, eax
movsx edx, word [0x4a4468]
movsx ecx, cx
sub edx, ecx
movsx ecx, word [0x4a446c]
add ecx, edx
mov edx, dword [0x4a4284]
add edx, ecx
push esi
mov word [0x4a4468], dx
inc word [0x4a4280]
push 3
call fcn.0041b9c0
movsd xmm0, qword [0x4a4078]
add esp, 0x20
mulsd xmm0, qword [0x499f68]
movsd qword [0x4a4078], xmm0
test edi, edi
je 0x41466e
mov eax, dword [0x4a448c]
mov ecx, 0xb9acf50f
mov dword [0x4a44a8], eax
mov eax, dword [0x4a4490]
sub ecx, eax
movzx eax, word [0x4a42b0]
imul eax, ecx
mov ecx, ebx
push edi
push 1
mov word [0x4a42b0], ax
call fcn.00402b60
push eax
mov ecx, ebx
call fcn.004214a0
push eax
call fcn.0045174a
mov eax, dword [0x4a43d4]
sub eax, 0x148c7193
push edi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [0x4a40d0], xmm0
inc dword [0x4a43d4]
call fcn.00450e2f
movsx edx, word [0x4a4260]
add esp, 0x14
movsd xmm1, qword [0x4a4088]
add edx, 0xbccac799
mov eax, dword [0x4a44a4]
mov ecx, ebx
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a4088], xmm1
call fcn.004021c0
movsd xmm0, qword [0x4a4180]
subsd xmm0, qword [0x4970b8]
comisd xmm0, xmmword [0x49a058]
jb 0x4142c7
mov eax, dword [0x4a4308]
movss xmm0, dword [0x4a412c]
sub eax, 0x6923caec
subss xmm0, dword [0x49a788]
inc dword [0x4a4308]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jb 0x41430c
movsd xmm0, qword [0x4a4338]
subsd xmm0, qword [0x4a4360]
movsd qword [0x4a4338], xmm0
movsd xmm0, qword [0x4a4360]
addsd xmm0, qword [0x496ce0]
movsd qword [0x4a4360], xmm0
jmp 0x41430c
movsd xmm0, qword [0x4a4238]
subsd xmm0, qword [0x496ce0]
movsd qword [0x4a4238], xmm0
movsd xmm1, qword [0x4a4238]
movsx eax, word [0x4a43ac]
subsd xmm1, qword [0x497358]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a43ac], ax
movsd xmm1, qword [0x4a4250]
movss xmm0, dword [0x4a4098]
addss xmm0, dword [0x499358]
subsd xmm1, qword [0x498b48]
mov byte [ebp - 0x120], 0
cvtps2pd xmm0, xmm0
comisd xmm1, xmm0
jbe 0x41437a
movss xmm0, dword [0x4a44b8]
subss xmm0, dword [0x496cd8]
movss dword [0x4a44b8], xmm0
movss xmm1, dword [0x4a44b8]
subss xmm1, dword [0x498dbc]
movss xmm0, dword [0x4a41b8]
subss xmm1, xmm0
cvttss2si eax, xmm1
mov word [0x4a43e0], ax
push 0x104
lea eax, [ebp - 0x224]
push eax
push 0
call dword [0x4a4fcc]
movsd xmm0, qword [0x4a4418]
addsd xmm0, qword [0x497a50]
mov byte [ebp - 0x225], 0
push 0x15
push 0x422
movsd qword [0x4a4418], xmm0
movsd xmm0, qword [0x4a4180]
subsd xmm0, qword [0x496ce0]
movsd qword [0x4a4180], xmm0
mov eax, dword [0x4a431c]
movsd xmm0, qword [0x4a4180]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a4100], xmm0
call fcn.004359d0
mov ecx, dword [0x4a40e0]
mov esi, eax
push dword [0x4a570c]
lea eax, [ebp - 0x224]
push dword [0x4a56f4]
push eax
push esi
lea eax, [ebp - 0x42c]
push 0x207
push eax
call fcn.0040e9c0
dec word [0x4a40c8]
add esp, 0x20
movss xmm0, dword [0x4a43c8]
addss xmm0, dword [0x496cd8]
movss dword [0x4a43c8], xmm0
movsx eax, word [0x4a40c8]
movss xmm0, dword [0x4a43c8]
add eax, 0x487764d5
subss xmm0, dword [0x49952c]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x4144fe
movsd xmm0, qword [0x4a4418]
mov ecx, 0x620bcbf7
addsd xmm0, qword [0x496ce0]
movsd qword [0x4a4418], xmm0
inc word [0x4a4420]
mov eax, dword [0x4a43fc]
movsd xmm0, qword [0x4a4418]
sub eax, 0x14244d10
movd xmm1, eax
movsx eax, word [0x4a4420]
cvtdq2pd xmm1, xmm1
sub ecx, eax
subsd xmm1, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jbe 0x4144fe
inc dword [0x4a4080]
mov ax, word [0x4a4468]
movss xmm1, dword [0x4a4324]
movsx ecx, ax
mov eax, dword [0x4a4080]
add eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [0x4a4324], xmm1
inc word [0x4a4468]
push esi
push 0x15
call fcn.0041b9c0
mov ecx, dword [0x4a4374]
add esp, 8
mov eax, dword [0x4a4384]
add ecx, 0xee61ed8a
inc dword [0x4a4374]
cmp eax, ecx
jle 0x414533
mov ax, word [0x4a4420]
cwde
add dword [0x4a4264], eax
jmp 0x414542
imul eax, dword [0x4a42c4], 0x83cb821d
mov dword [0x4a42c4], eax
push dword [0x4a570c]
call fcn.00417540
movsx eax, word [0x4a41e0]
mov ecx, 0x35027167
movsd xmm0, qword [0x4a42a0]
sub ecx, eax
lea eax, [ebp - 0x42c]
push eax
lea eax, [ebp - 0x11c]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
push eax
mulsd xmm0, xmm1
movsd qword [0x4a42a0], xmm0
call fcn.004290b0
dec dword [0x4a44ac]
mov eax, dword [0x4a44ac]
movsd xmm2, qword [0x4a4288]
push 0x208
push 0
movd xmm0, eax
lea eax, [ebp - 0x42c]
cvtdq2pd xmm0, xmm0
push eax
addsd xmm2, xmm0
movss xmm0, dword [0x4a445c]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4a40d0]
addsd xmm1, xmm2
addsd xmm0, xmm1
movsd qword [0x4a40d0], xmm0
call fcn.00445a10
movsd xmm0, qword [0x4a4008]
subsd xmm0, qword [0x498308]
push 0x105
push 0
cvttsd2si eax, xmm0
mov word [0x4a4108], ax
lea eax, [ebp - 0x224]
push eax
call fcn.00445a10
inc word [0x4a440c]
add esp, 0x24
movss xmm1, dword [0x4a401c]
movsx eax, word [0x4a440c]
add eax, 0x3c2f7f99
push 0x15f90
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [0x4a401c], xmm1
call dword [0x4a5028]
movsd xmm0, qword [0x4a4118]
addsd xmm0, qword [0x497308]
cvttsd2si eax, xmm0
mov dword [0x4a4484], eax
lea eax, [ebp - 0x11c]
push eax
call dword [0x4a4f78]
movsd xmm2, qword [0x4a4470]
movsx eax, word [0x4a42b0]
dec word [0x4a42b0]
movsd xmm0, qword [0x4a4470]
movsd xmm3, qword [0x496ce0]
subsd xmm2, qword [0x498240]
movd xmm1, eax
addsd xmm0, xmm3
cvtdq2pd xmm1, xmm1
pop edi
pop esi
movsd qword [0x4a4470], xmm0
comisd xmm1, xmm2
jbe 0x4146e1
mov eax, dword [0x4a4380]
movsd xmm0, qword [0x4a4160]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a4160], xmm0
dec dword [0x4a4380]
jmp 0x414719
movsd xmm1, qword [0x4a43f0]
addsd xmm1, qword [0x497970]
movsd xmm0, qword [0x4a41c0]
mulsd xmm0, xmm1
movsd qword [0x4a41c0], xmm0
movsd xmm0, qword [0x4a43f0]
subsd xmm0, xmm3
movsd qword [0x4a43f0], xmm0
push 0x118
lea eax, [ebp - 0x11c]
push 0
push eax
call fcn.00445a10
movsd xmm0, qword [0x497540]
add esp, 0xc
movsd qword [0x4a42f8], xmm0
movss xmm0, dword [0x4a412c]
subss xmm0, dword [0x499798]
pop ebx
cvtps2pd xmm2, xmm0
movss xmm0, dword [0x4a41cc]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4a4428]
subsd xmm1, xmm0
comisd xmm2, xmm1
jbe 0x4147b4
movsd xmm0, qword [0x4a4028]
subsd xmm0, qword [0x496ce0]
movsd qword [0x4a4028], xmm0
movsd xmm1, qword [0x4a4028]
addsd xmm1, qword [0x497570]
movsd xmm0, qword [0x4a4330]
subsd xmm1, qword [0x498480]
mulsd xmm0, xmm1
movsd qword [0x4a4330], xmm0
mov esp, ebp
pop ebp
ret