Function at 0x41f050
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
movsd xmm0, qword [0x4ac550]
sub esp, 0x42c
subsd xmm0, qword [0x49de18]
push ebx
mov ebx, dword [ebp + 8]
mov ecx, ebx
movsd qword [0x4ac550], xmm0
movsd xmm0, qword [0x4ac1f0]
addsd xmm0, qword [0x49de18]
movsd qword [0x4ac1f0], xmm0
movss xmm0, dword [0x4ac2d4]
movsd xmm1, qword [0x4ac550]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x4ac1f0]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4ac0d4], eax
movss xmm0, dword [0x4ac2d4]
subss xmm0, dword [0x49de14]
movss dword [0x4ac2d4], xmm0
call fcn.00421d90
cmp eax, 0x8000
jbe 0x41fa9f
mov eax, dword [0x4ac104]
movsd xmm0, qword [0x4ac510]
movd xmm1, eax
movsx eax, word [0x4ac3f0]
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [0x4a0410]
cvttsd2si eax, xmm0
mov word [0x4ac3f0], ax
inc dword [0x4ac104]
movss xmm2, dword [0x4ac098]
movss xmm0, dword [0x4ac59c]
subss xmm1, xmm0
subss xmm2, xmm1
movss dword [0x4ac098], xmm2
movss xmm1, dword [0x4ac3ec]
mov eax, dword [0x4ac424]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [0x4ac3ec], xmm1
inc dword [0x4ac424]
mov eax, dword [0x4ac068]
movsd xmm0, qword [0x4ac4a8]
add eax, 0x31d16aae
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movsd xmm0, qword [0x4a13e8]
comisd xmm0, xmm1
jb 0x41f1b1
movss xmm0, dword [0x4ac1c0]
subss xmm0, dword [0x4a22d4]
movss dword [0x4ac1c0], xmm0
push esi
lea eax, [ebp - 0x11c]
push edi
push eax
call fcn.0041eed0
movsd xmm0, qword [0x4ac540]
add esp, 4
addsd xmm0, qword [0x49de18]
mov esi, eax
movsd qword [0x4ac540], xmm0
movsx ecx, word [0x4ac3d4]
movss xmm0, dword [0x4ac148]
movsd xmm1, qword [0x4ac540]
inc word [0x4ac3d4]
cvtps2pd xmm0, xmm0
movd xmm2, ecx
addsd xmm1, xmm0
cvtdq2pd xmm2, xmm2
subsd xmm1, qword [0x49f940]
comisd xmm1, xmm2
jbe 0x41f24e
movsd xmm0, qword [0x4ac5c8]
movsd xmm1, qword [0x49ef00]
subsd xmm1, xmm0
movss xmm0, dword [0x4ac380]
cvtps2pd xmm0, xmm0
subsd xmm1, qword [0x4a1470]
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4ac380], xmm0
call fcn.00447780
movzx eax, al
and eax, 0x80000003
jns 0x41f262
dec eax
or eax, 0xfffffffc
inc eax
add eax, 7
push eax
lea eax, [ebp - 0x11c]
add eax, esi
push eax
call fcn.004353e0
movsx eax, word [0x4ac51c]
sub eax, 0x400dc76
push 5
push 0x3a71
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [0x4ac400], xmm0
call fcn.004280a0
movzx ecx, word [0x4ac4bc]
add esp, 0x10
movsx edx, cx
movzx ecx, word [0x4ac030]
add ecx, 0xa0f26730
mov dword [ebp - 4], eax
add ecx, edx
mov edx, eax
mov word [0x4ac3e8], cx
mov esi, edx
inc word [0x4ac030]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x41f2d0
lea edi, [ebp - 0x11c]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f2e0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
push 3
rep movsb byte es:[edi], byte [esi]
push 0xfd9
mov dword [0x4ac380], 0x4e3b3d97
call fcn.004280a0
movsd xmm1, qword [0x4ac528]
mov esi, eax
mov ecx, dword [0x4ac0c8]
push dword [ebp - 4]
push 5
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4ac528], xmm1
inc dword [0x4ac0c8]
call fcn.00448990
mov ax, word [0x4ac1d0]
movss xmm1, dword [0x4ac428]
movsx ecx, ax
mov eax, dword [0x4ac33c]
sub eax, ecx
push esi
movd xmm0, eax
lea eax, [ebp - 0x11c]
cvtdq2ps xmm0, xmm0
push eax
subss xmm1, xmm0
movss dword [0x4ac428], xmm1
dec word [0x4ac1d0]
call fcn.00459612
movss xmm0, dword [0x4ac2d0]
mov edi, eax
mulss xmm0, dword [0x4ac428]
push esi
push 3
movss dword [0x4ac2d0], xmm0
call fcn.00448990
mov ecx, dword [0x4ac01c]
add esp, 0x20
movsd xmm0, qword [0x4ac5c0]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ac5c0], xmm0
test edi, edi
je 0x41f9c1
movss xmm1, dword [0x4ac184]
mov eax, dword [0x4ac548]
subss xmm1, dword [0x4a0bf4]
movss xmm2, dword [0x49de14]
sub eax, 0x7a32be2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm1, xmm0
lahf
dec dword [0x4ac548]
movss xmm0, dword [0x4ac184]
subss xmm0, xmm2
movss dword [0x4ac184], xmm0
test ah, 0x44
jp 0x41f4ec
movss xmm1, dword [0x4ac2ac]
mov eax, dword [0x4ac518]
subss xmm1, dword [0x4a21dc]
sub eax, 0x74b997a8
subss xmm1, dword [0x4a2188]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm1, xmm0
movss xmm0, dword [0x4ac2ac]
addss xmm0, xmm2
lahf
movss dword [0x4ac2ac], xmm0
test ah, 0x44
jnp 0x41f499
dec dword [0x4ac41c]
mov eax, dword [0x4ac41c]
movsd xmm0, qword [0x4ac430]
movsd xmm0, qword [0x4ac328]
movsd xmm0, qword [0x4ac430]
subsd xmm0, qword [0x49de18]
movsd qword [0x4ac430], xmm0
jmp 0x41f4ec
movsd xmm0, qword [0x4ac2d8]
addsd xmm0, qword [0x49de18]
movsd qword [0x4ac2d8], xmm0
mov ax, word [0x4ac4d4]
movsd xmm0, qword [0x4ac2d8]
movsd xmm0, qword [0x4ac388]
mov ax, word [0x4ac2a4]
movsd xmm0, qword [0x4ac388]
addsd xmm0, qword [0x49de18]
movsd qword [0x4ac388], xmm0
inc word [0x4ac2a4]
dec word [0x4ac254]
mov ax, word [0x4ac254]
movsx ecx, ax
mov eax, dword [0x4ac4cc]
add eax, 0xe6a2bd0
add eax, ecx
mov ecx, ebx
push edi
push 1
mov dword [0x4ac4cc], eax
call fcn.00421d90
push eax
mov ecx, ebx
call fcn.004399a0
push eax
call fcn.0045993e
movsd xmm0, qword [0x4ac1a0]
subsd xmm0, qword [0x4a1100]
push edi
movsd qword [0x4ac1a0], xmm0
call fcn.00459023
add dword [0x4ac298], 0xdb7ecabe
add esp, 0x14
mov ecx, ebx
call fcn.00425100
movss xmm0, dword [0x4ac03c]
movss xmm2, dword [0x49de14]
movss xmm1, dword [0x4a08d8]
addss xmm0, xmm2
movss dword [0x4ac03c], xmm0
movss xmm0, dword [0x4ac03c]
mov eax, dword [0x4ac4cc]
subss xmm1, xmm0
inc dword [0x4ac4cc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm1, dword [0x4a05dc]
jbe 0x41f5b3
mov ax, word [0x4ac08c]
cwde
sub dword [0x4ac34c], eax
movss xmm1, dword [0x4ac5a8]
movss xmm0, dword [0x4ac5a8]
addss xmm1, dword [0x4a0bdc]
subss xmm0, xmm2
mov byte [ebp - 0x120], 0
comiss xmm1, dword [0x4a1f1c]
movss dword [0x4ac5a8], xmm0
jbe 0x41f612
mov eax, dword [0x4ac1bc]
mov ecx, 0xc3c49d4
sub ecx, eax
mov eax, dword [0x4ac0cc]
add eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [0x4ac550], xmm0
inc dword [0x4ac1bc]
jmp 0x41f646
mov eax, dword [0x4ac324]
movss xmm1, dword [0x4ac0f0]
movd xmm0, eax
movsx eax, word [0x4ac1d0]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4ac1d0], ax
push 0x104
lea eax, [ebp - 0x224]
push eax
push 0
call dword [0x4ad250]
dec dword [0x4ac074]
mov eax, dword [0x4ac074]
movsd xmm0, qword [0x4ac058]
push 0x15
push 0x25ee
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movsd xmm0, qword [0x4ac300]
mov byte [ebp - 0x225], 0
subsd xmm1, xmm0
movsd qword [0x4ac3f8], xmm1
mov eax, dword [0x4ac480]
movsd xmm1, qword [0x4ac130]
addsd xmm1, qword [0x49eb60]
movsd xmm0, qword [0x4ac280]
movd xmm2, eax
cvtdq2pd xmm2, xmm2
addsd xmm0, xmm1
subsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [0x4ac480], eax
movsd xmm0, qword [0x4ac280]
addsd xmm0, qword [0x49de18]
movsd qword [0x4ac280], xmm0
call fcn.004280a0
movss xmm1, dword [0x4ac4a4]
add esp, 8
movss xmm0, dword [0x4a0b34]
mov esi, eax
ucomiss xmm0, xmm1
movss xmm0, dword [0x4ac4a4]
addss xmm0, dword [0x49de14]
lahf
movss dword [0x4ac4a4], xmm0
test ah, 0x44
jp 0x41f73c
movsd xmm0, qword [0x4ac318]
mulsd xmm0, qword [0x4ac528]
movsd qword [0x4ac528], xmm0
push dword [0x4ad994]
lea eax, [ebp - 0x224]
push dword [0x4ad97c]
push eax
push esi
lea eax, [ebp - 0x42c]
push 0x207
push eax
call fcn.0041b7f0
movsd xmm2, qword [0x4ac4e8]
movsx eax, word [0x4ac438]
movsd xmm1, qword [0x4ac2c8]
push esi
push 0x15
movd xmm0, eax
mov eax, dword [0x4ac248]
cvtdq2pd xmm0, xmm0
subsd xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4ac248], eax
movsd xmm0, qword [0x4ac2c8]
subsd xmm0, qword [0x49de18]
movsd qword [0x4ac2c8], xmm0
dec word [0x4ac438]
movsd xmm0, qword [0x4ac4e8]
addsd xmm0, qword [0x49de18]
movsd qword [0x4ac4e8], xmm0
call fcn.00448990
movsd xmm1, qword [0x4ac498]
add esp, 0x20
addsd xmm1, qword [0x49f968]
movsd xmm0, qword [0x4a0ed0]
comisd xmm0, xmm1
jb 0x41f872
movss xmm0, dword [0x4ac148]
addss xmm0, dword [0x49de14]
movss dword [0x4ac148], xmm0
movss xmm0, dword [0x4ac148]
subss xmm0, dword [0x4a1ee4]
movsd xmm1, qword [0x4ac4c0]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x49f0d0]
comisd xmm0, xmm1
jbe 0x41f87c
movss xmm1, dword [0x4ac1cc]
mov eax, dword [0x4ac33c]
subss xmm1, dword [0x4a06bc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [0x4ac33c], eax
jmp 0x41f87c
add dword [0x4ac598], 0xdb734ea8
push dword [0x4ad994]
call fcn.00447f80
movsd xmm0, qword [0x4ac3f8]
lea eax, [ebp - 0x42c]
mulsd xmm0, qword [0x4a13c8]
push eax
lea eax, [ebp - 0x11c]
push eax
movsd qword [0x4ac3f8], xmm0
call fcn.00412860
mov eax, dword [0x4ac0b0]
push 0x208
push 0
movd xmm2, eax
movsx eax, word [0x4ac3ac]
movss xmm1, dword [0x4ac50c]
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
subss xmm2, xmm1
cvttss2si eax, xmm2
mov dword [0x4ac0b0], eax
lea eax, [ebp - 0x42c]
push eax
call fcn.0044be40
imul eax, dword [0x4ac4cc], 0x10ab9357
push 0x105
push 0
mov dword [0x4ac4cc], eax
lea eax, [ebp - 0x224]
push eax
call fcn.0044be40
movsd xmm0, qword [0x4ac1a0]
add esp, 0x24
subsd xmm0, qword [0x49de18]
push 0x15f90
movsd qword [0x4ac1a0], xmm0
movss xmm0, dword [0x4ac1cc]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4ac1a0]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4ac1cc], xmm0
call dword [0x4ad2ac]
mov eax, dword [0x4ac29c]
sub eax, dword [0x4ac598]
movsd xmm1, qword [0x4ac470]
movd xmm0, eax
lea eax, [ebp - 0x11c]
cvtdq2pd xmm0, xmm0
push eax
addsd xmm1, xmm0
movsd xmm0, qword [0x4ac0e0]
mulsd xmm0, xmm1
movsd qword [0x4ac0e0], xmm0
dec dword [0x4ac598]
call dword [0x4ad1fc]
movss xmm0, dword [0x4ac484]
subss xmm0, dword [0x4a202c]
movss dword [0x4ac484], xmm0
movss xmm0, dword [0x4ac3e0]
movss xmm1, dword [0x4a046c]
subss xmm1, xmm0
movss xmm0, dword [0x4ac398]
pop edi
pop esi
subss xmm1, xmm0
movss xmm0, dword [0x4a0cf0]
comiss xmm0, xmm1
jbe 0x41fa19
dec word [0x4ac4d4]
movzx eax, word [0x4ac2fc]
movsx ecx, ax
movzx eax, word [0x4ac4d4]
sub ecx, eax
add ecx, 0x3770cb13
mov word [0x4ac2fc], cx
jmp 0x41fa63
mov eax, dword [0x4ac598]
movss xmm0, dword [0x4ac0c4]
sub eax, 0x1a4900af
subss xmm0, dword [0x4a0d00]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm0, dword [0x4a20f4]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x41fa63
movsd xmm0, qword [0x4ac4a8]
subsd xmm0, qword [0x49f7f0]
movsd qword [0x4ac4a8], xmm0
push 0x118
lea eax, [ebp - 0x11c]
push 0
push eax
call fcn.0044be40
movzx eax, word [0x4ac390]
add esp, 0xc
movsx ecx, ax
mov eax, dword [0x4ac050]
sub ecx, eax
movzx eax, word [0x4ac478]
add eax, ecx
mov word [0x4ac390], ax
dec dword [0x4ac050]
movss xmm0, dword [0x4ac570]
subss xmm0, dword [0x49de14]
movss xmm1, dword [0x4a206c]
pop ebx
movss dword [0x4ac570], xmm0
movss xmm0, dword [0x4ac570]
subss xmm1, xmm0
movss dword [str.6kN], xmm1
mov esp, ebp
pop ebp
ret