Function at 0x140010380
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rdi
sub rsp, 0xa0
movaps xmmword [rsp + 0x90], xmm6
mov rax, qword [0x140050010]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r9, qword [0x140108af0]
lea rdx, str.RAMP__d__d_r_n
movsd xmm6, qword [0x1400494b8]
movsd xmm0, qword [r9 + 0x18]
lea rcx, [r9 + 0x12c92e0]
mov r9d, dword [r9 + 0x50]
mulsd xmm0, xmm6
cvttsd2si r8d, xmm0
call fcn.140001190
mov rbx, qword [0x140108af0]
xor ebp, ebp
cmp dword [rbx + 0x12ca2f8], 1
jne 0x14001043d
mov rdi, qword [rbx + 0x4174770]
cmp dword [rdi + 8], 1
je 0x14001043d
lea rdx, [rbx + 0x12c92e0]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], bpl
jne 0x140010410
mov rcx, qword [rdi + 0xe00028]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rbx, qword [0x140108af0]
mov dword [rdi + 0xe00020], ebp
cmp dword [rbx + 0x12ca2f8], 1
mov qword [rsp + 0xb0], rsi
jne 0x140010465
lea rdi, [rbx + 0xbb12e0]
mov rbx, qword [rbx + 0x4174770]
cmp dword [rbx + 8], 1
jne 0x14001049c
mov byte [rdi], bpl
mov eax, 0xffffffff
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.14001d8d0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop rdi
ret
call qword [sym.imp.WINMM.dll_timeGetTime]
mov esi, eax
call qword [sym.imp.WINMM.dll_timeGetTime]
movsxd rdx, dword [rbx + 0xe0001c]
cmp dword [rbx + 0xe00018], edx
jne 0x1400104cf
sub eax, esi
cmp eax, 0x1f4
ja 0x140010465
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400104a4
sub eax, dword [rbx + 0xe00024]
cmp eax, 0x14
jae 0x1400104e7
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400104a4
mov r8d, ebp
mov r9, rdx
nop dword [rax]
movzx eax, byte [r9 + rbx + 0x700018]
lea ecx, [rdx + 1]
mov byte [rdi], al
lea rdi, [rdi + 1]
inc r8d
lea rax, [r9 + 1]
cmp ecx, 0x700000
mov edx, ebp
mov r9, rbp
cmovb edx, ecx
cmovb r9, rax
cmp edx, dword [rbx + 0xe00018]
jne 0x1400104f0
test r8d, r8d
jle 0x140010465
mov rbx, qword [0x140108af0]
mov edx, ebp
movsxd rax, r8d
mov byte [rax + rbx + 0xbb12e0], bpl
mov rcx, qword [rbx + 0x4174770]
mov r9d, dword [rcx + 0xe00018]
nop
mov eax, dword [rcx + 0xe0001c]
cmp r9d, eax
je 0x140010577
inc eax
mov dword [rcx + 0xe0001c], eax
cmp eax, 0x700000
jb 0x140010570
mov dword [rcx + 0xe0001c], ebp
inc edx
cmp edx, r8d
jl 0x140010550
xorps xmm0, xmm0
lea r10, [rbx + 0xbb12e5]
movups xmmword [rsp + 0x40], xmm0
mov r11, rbp
movups xmmword [rsp + 0x50], xmm0
nop
mov r8d, ebp
mov r9d, ebp
mov rdx, rbp
nop dword [rax]
movzx ecx, byte [rdx + r10]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400105b9
movsx eax, al
lea ecx, [r8 + r8*4]
lea r8d, [rax + rcx*2]
jmp 0x1400105c4
cmp cl, 0x2d
jne 0x1400105cf
mov r9d, 1
inc rdx
cmp rdx, 0x10
jl 0x1400105a0
jmp 0x1400105d7
cmp cl, 0x2c
jne 0x1400105d7
inc rdx
add r10, rdx
mov eax, r8d
neg eax
cmp r9d, 1
movzx ecx, byte [r10]
cmovne eax, r8d
mov dword [rsp + r11*4 + 0x40], eax
lea eax, [rcx - 0x30]
cmp al, 9
jbe 0x1400105ff
sub cl, 0x2c
cmp cl, 1
ja 0x14001060b
inc r11
cmp r11, 0x1000
jl 0x140010590
movd xmm0, dword [rsp + 0x48]
movd xmm1, dword [rsp + 0x58]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x4c]
cvtdq2pd xmm0, xmm0
mov dword [rbx + 0x10], eax
xor eax, eax
mov dword [rbx + 0x14], ecx
mov dword [rbx + 0x41746c0], ecx
cvtdq2pd xmm1, xmm1
divsd xmm0, xmm6
divsd xmm1, xmm6
movsd qword [rbx + 0x12ca330], xmm0
movd xmm0, dword [rsp + 0x54]
cvtdq2pd xmm0, xmm0
movsd qword [rbx + 0x12ca300], xmm1
divsd xmm0, xmm6
movsd qword [rbx + 8], xmm0
jmp 0x14001046a