Function at 0x42af40
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
movss xmm0, dword [0x4a70a8]
sub esp, 0x42c
subss xmm0, dword [0x49dc50]
push ebx
mov ebx, dword [ebp + 8]
mov ecx, ebx
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4a71c8]
addsd xmm0, xmm1
movsd qword [0x4a71c8], xmm0
movss xmm0, dword [0x4a70a8]
addss xmm0, dword [0x499ae8]
movss dword [0x4a70a8], xmm0
call fcn.0043e950
cmp eax, 0x8000
jbe 0x42b7c3
mov ax, word [0x4a7268]
mov ecx, dword [str.sf2_T]
movsd xmm2, qword [0x4a7168]
movsd xmm3, qword [0x499af0]
movsd xmm1, qword [0x49d0b0]
cwde
add ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm2, xmm0
movsd xmm0, qword [0x4a7168]
subsd xmm0, xmm3
comisd xmm1, xmm2
movsd qword [0x4a7168], xmm0
jbe 0x42b010
movsx eax, word [0x4a7288]
movsd xmm0, qword [0x4a7160]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a7288], ax
movsd xmm0, qword [0x4a70d0]
subsd xmm0, xmm3
push esi
movsd qword [0x4a70d0], xmm0
movsd xmm1, qword [0x4a70c0]
movsd xmm0, qword [0x4a70d0]
addsd xmm1, xmm0
movss xmm0, dword [0x4a7278]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a7278], xmm0
movsd xmm0, qword [0x4a7478]
mov eax, dword [0x4a7014]
subsd xmm0, qword [0x49acb0]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm0
movss xmm0, dword [0x4a74f0]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a74f0], xmm0
movss xmm1, dword [0x4a7284]
movsx eax, word [0x4a7394]
movd xmm0, eax
lea eax, [ebp - 0x11c]
cvtdq2ps xmm0, xmm0
push eax
subss xmm1, xmm0
movss dword [0x4a7284], xmm1
call fcn.00435910
mov ecx, dword [0x4a7438]
mov esi, eax
movsd xmm0, qword [0x4a7368]
addsd xmm0, qword [0x4a7060]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [0x4a7438], ecx
call fcn.004046c0
movzx eax, al
and eax, 0x80000003
jns 0x42b100
dec eax
or eax, 0xfffffffc
inc eax
add eax, 7
push eax
lea eax, [ebp - 0x11c]
add eax, esi
push eax
call fcn.004311a0
push 5
push 0x1ec9
mov dword [0x4a70b0], 0x4e33124f
call fcn.004421e0
movsx ecx, word [0x4a7390]
mov edx, 0x5a8cf1a0
sub edx, ecx
mov dword [ebp - 4], eax
add dword [0x4a7070], edx
add esp, 0x14
dec word [0x4a7390]
mov edx, eax
mov esi, eax
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x42b150
push edi
lea edi, [ebp - 0x11c]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42b161
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
inc word [0x4a73e0]
mov ax, word [0x4a73e0]
mov ecx, dword [0x4a70ac]
cwde
imul ecx, eax
push 3
push 0x2e95
mov dword [0x4a70ac], ecx
call fcn.004421e0
movsd xmm2, qword [0x4a7200]
add esp, 8
mov ecx, dword [0x4a70c8]
mov edi, eax
movd xmm0, ecx
movsx ecx, word [0x4a74e0]
dec dword [0x4a70c8]
cvtdq2pd xmm0, xmm0
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
subsd xmm2, xmm0
movsd xmm0, qword [0x49cef0]
addsd xmm1, xmm2
comisd xmm0, xmm1
jb 0x42b22a
movss xmm1, dword [0x4a7364]
movsx eax, word [0x4a73b4]
subss xmm1, dword [0x49c1c8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a73b4], ax
movss xmm0, dword [0x4a7364]
subss xmm0, dword [0x499ae8]
movss dword [0x4a7364], xmm0
push dword [ebp - 4]
push 5
call fcn.0041de00
movsd xmm0, qword [0x4a71a0]
subsd xmm0, qword [0x49a558]
push edi
cvttsd2si eax, xmm0
mov word [0x4a742c], ax
lea eax, [ebp - 0x11c]
push eax
call fcn.0045443e
movsd xmm1, qword [0x4a7460]
mov esi, eax
movsx ecx, word [0x4a7188]
sub ecx, 0x4854fda1
push edi
push 3
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a7460], xmm1
call fcn.0041de00
movsx eax, word [0x4a71e0]
add esp, 0x18
movsd xmm0, qword [0x4a70f8]
sub eax, 0x653e684a
pop edi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a74b0], xmm0
movsd xmm0, qword [0x4a70f8]
subsd xmm0, qword [0x499af0]
movsd qword [0x4a70f8], xmm0
test esi, esi
je 0x42b751
movsd xmm1, qword [0x4a7460]
mov ecx, ebx
movsx eax, word [0x4a7094]
push esi
push 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a7460], xmm1
movsx eax, word [0x4a70a4]
movsd xmm0, qword [0x4a7230]
addsd xmm0, qword [0x49bbf8]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov word [0x4a70a4], ax
call fcn.0043e950
push eax
mov ecx, ebx
call fcn.00420fe0
push eax
call fcn.0045476a
movsx eax, word [0x4a7198]
add esp, 0x10
movss xmm1, dword [0x4a71b0]
movss xmm0, dword [0x4a72f4]
dec word [0x4a7198]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
subss xmm2, xmm0
subss xmm2, dword [0x49c7b4]
comiss xmm2, xmm1
jbe 0x42b3e5
movss xmm1, dword [0x4a71d8]
addss xmm1, dword [0x4a7408]
movss xmm0, dword [0x49c158]
comiss xmm0, xmm1
jbe 0x42b3df
inc word [0x4a7190]
mov ax, word [0x4a7190]
movsx ecx, ax
movsx eax, word [0x4a70b4]
movsd xmm0, qword [0x4a72c8]
add eax, 0xa543fb8a
add eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a72c8], xmm0
inc word [0x4a70b4]
jmp 0x42b3e5
mov ax, word [0x4a7208]
push esi
call fcn.00453e4f
mov eax, dword [0x4a7280]
mov edx, 0xa0ecc1ed
dec dword [0x4a7280]
sub edx, eax
add esp, 4
cmp edx, 0x7c0f76e3
je 0x42b41a
movzx eax, word [0x4a7198]
add eax, 0x4aaa2388
mov word [0x4a7198], ax
mov ecx, ebx
call fcn.00428350
movzx eax, word [0x4a709c]
add eax, 0x2f1fec06
mov byte [ebp - 0x120], 0
mov word [0x4a709c], ax
movsx eax, word [0x4a7208]
dec word [0x4a7208]
cmp eax, 0x67448d46
jne 0x42b4b2
movss xmm0, dword [0x4a7284]
subss xmm0, dword [0x49c37c]
movsd xmm1, qword [0x4a7200]
cvtps2pd xmm2, xmm0
movsd xmm0, qword [0x4a7370]
subsd xmm2, xmm0
subsd xmm1, xmm2
movsd qword [0x4a7200], xmm1
movsd xmm0, qword [0x4a7370]
addsd xmm0, qword [0x499af0]
movsd qword [0x4a7370], xmm0
movss xmm0, dword [0x4a7284]
subss xmm0, dword [0x499ae8]
movss dword [0x4a7284], xmm0
push 0x104
lea eax, [ebp - 0x224]
push eax
push 0
call dword [0x4a803c]
mov ax, word [0x4a700c]
movsx ecx, ax
mov eax, dword [0x4a74a0]
add eax, 0x464cf1a3
mov byte [ebp - 0x225], 0
add eax, ecx
mov word [0x4a700c], ax
mov eax, 0xffff8449
push 0x15
push 0x1602
mov word [0x4a73e0], ax
call fcn.004421e0
movsd xmm0, qword [0x4a7508]
mov esi, eax
push dword [0x4a877c]
subsd xmm0, qword [0x49d430]
push dword [0x4a8764]
lea eax, [ebp - 0x224]
push eax
push esi
lea eax, [ebp - 0x42c]
movsd qword [0x4a7508], xmm0
push 0x207
push eax
call fcn.00439700
mov eax, dword [0x4a72c0]
movsd xmm0, qword [0x4a7140]
addsd xmm0, qword [0x4a7400]
push esi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
push 0x15
addsd xmm0, qword [0x49bc78]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4a72c0], eax
call fcn.0041de00
movsx eax, word [0x4a7354]
movsd xmm0, qword [0x4a7290]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a7290], xmm0
inc word [0x4a7354]
push dword [0x4a877c]
call fcn.0040f850
movss xmm0, dword [0x4a74a4]
cvttss2si eax, xmm0
mov word [0x4a7098], ax
lea eax, [ebp - 0x42c]
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.00404120
inc dword [0x4a7494]
mov eax, dword [0x4a7494]
add eax, 0x49214f0a
push 0x208
push 0
movd xmm0, eax
lea eax, [ebp - 0x42c]
cvtdq2pd xmm0, xmm0
push eax
movsd qword [0x4a7378], xmm0
call fcn.00448a30
movsd xmm1, qword [0x4a71a0]
add esp, 0x40
mov eax, dword [0x4a727c]
addsd xmm1, qword [0x49b368]
add eax, 0x17b30cef
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jbe 0x42b642
movzx eax, word [0x4a72d8]
add eax, 0x76c5990d
mov word [0x4a72d8], ax
push 0x105
lea eax, [ebp - 0x224]
push 0
push eax
call fcn.00448a30
mov eax, dword [0x4a7418]
add esp, 0xc
movsd xmm0, qword [0x4a7270]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
push 0x15f90
mulsd xmm0, xmm1
movsd qword [0x4a7270], xmm0
call dword [0x4a8098]
movss xmm0, dword [0x4a744c]
ucomiss xmm0, dword [0x49c028]
movss xmm0, dword [0x4a744c]
movss xmm2, dword [0x499ae8]
subss xmm0, xmm2
lahf
movss dword [0x4a744c], xmm0
test ah, 0x44
jp 0x42b6ee
movsx eax, word [0x4a7008]
add eax, 0x110db3f7
cmp eax, 0x52cf793c
jg 0x42b6d4
add dword [0x4a73b8], 0xf0ffad8d
jmp 0x42b727
mov ax, word [0x4a7350]
movzx ecx, word [0x4a7528]
cwde
imul ecx, eax
mov word [0x4a7528], cx
jmp 0x42b727
mov eax, dword [0x4a723c]
movss xmm0, dword [0x4a73bc]
sub eax, 0x50486b4f
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a74c8], xmm0
movss xmm0, dword [0x4a73bc]
addss xmm0, xmm2
movss dword [0x4a73bc], xmm0
lea eax, [ebp - 0x11c]
push eax
call dword [0x4a7fe8]
mov ax, word [0x4a7520]
mov ecx, dword [0x4a725c]
cwde
imul ecx, eax
mov word [0x4a7520], cx
dec dword [0x4a725c]
movss xmm0, dword [0x4a7034]
lea eax, [ebp - 0x11c]
mulss xmm0, dword [0x49dbcc]
push 0x118
push 0
push eax
movss dword [0x4a7034], xmm0
call fcn.00448a30
movss xmm0, dword [0x4a7258]
add esp, 0xc
cvtps2pd xmm1, xmm0
pop esi
movsd xmm0, qword [0x4a7398]
addsd xmm0, qword [0x49af08]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4a7258], xmm0
movsd xmm0, qword [0x4a7398]
addsd xmm0, qword [0x499af0]
movsd qword [0x4a7398], xmm0
movzx eax, word [0x4a74b4]
movsx ecx, ax
movzx eax, word [0x4a7108]
add eax, 0x1d30530
add eax, ecx
mov word [0x4a7108], ax
dec word [0x4a74b4]
pop ebx
mov esp, ebp
pop ebp
ret