Function at 0x140008940
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rdi
sub rsp, 0xe0
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov rcx, qword [0x140042fb8]
lea rdx, str.EEPHRD_r
add rcx, 0xccaae0
call fcn.1400010b0
mov rdx, qword [0x140042fb8]
xor ebp, ebp
mov rdi, 0xffffffffffffffff
cmp dword [rdx + 0xccbb10], 1
jne 0x1400089d6
mov rbx, qword [rdx + 0xe35f20]
cmp dword [rbx + 8], 1
je 0x1400089d6
add rdx, 0xccaae0
mov r8, rdi
nop
inc r8
cmp byte [rdx + r8], bpl
jne 0x1400089b0
mov rcx, qword [rbx + 0xe00028]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rbx + 0xe00020], ebp
mov r8d, 0x3e8
call fcn.14000b7a0
movsxd r8, eax
test eax, eax
jle 0x140008d6a
mov rbx, qword [0x140042fb8]
mov edx, ebp
mov qword [rsp + 0xf0], rsi
movaps xmmword [rsp + 0xd0], xmm6
mov byte [r8 + rbx + 0x5b0ae0], bpl
mov rcx, qword [rbx + 0xe35f20]
mov r9d, dword [rcx + 0xe00018]
nop dword [rax + rax]
mov eax, dword [rcx + 0xe0001c]
cmp r9d, eax
je 0x140008a47
inc eax
mov dword [rcx + 0xe0001c], eax
cmp eax, 0x700000
jb 0x140008a40
mov dword [rcx + 0xe0001c], ebp
inc edx
cmp edx, r8d
jl 0x140008a20
lea r10, [rbx + 0x5b0ae7]
mov r11, rbp
mov r8d, ebp
mov r9d, ebp
mov rdx, rbp
nop word [rax + rax]
movzx ecx, byte [rdx + r10]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140008a79
movsx eax, al
lea ecx, [r8 + r8*4]
lea r8d, [rax + rcx*2]
jmp 0x140008a84
cmp cl, 0x2d
jne 0x140008a8f
mov r9d, 1
inc rdx
cmp rdx, 0x10
jl 0x140008a60
jmp 0x140008a97
cmp cl, 0x2c
jne 0x140008a97
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 0x140008abf
sub cl, 0x2c
cmp cl, 1
ja 0x140008acb
inc r11
cmp r11, 0x1000
jl 0x140008a51
movsd xmm6, qword [0x14003ccb0]
lea rdx, [rsp + 0x44]
mov esi, 3
lea rcx, [rbx + 0x1c0]
mov r8d, esi
nop word [rax + rax]
mov eax, dword [rdx - 4]
lea rcx, [rcx + 0x20]
sub eax, 0x8000
lea rdx, [rdx + 0x10]
movd xmm0, eax
mov eax, dword [rdx - 0x10]
cvtdq2pd xmm0, xmm0
sub eax, 0x8000
divsd xmm0, xmm6
movsd qword [rcx - 0x80], xmm0
movsd qword [rcx - 0x20], xmm0
movd xmm0, eax
mov eax, dword [rdx - 0xc]
cvtdq2pd xmm0, xmm0
sub eax, 0x8000
divsd xmm0, xmm6
movsd qword [rcx - 0x78], xmm0
movsd qword [rcx - 0x18], xmm0
movd xmm0, eax
mov eax, dword [rdx - 8]
cvtdq2pd xmm0, xmm0
sub eax, 0x8000
divsd xmm0, xmm6
movsd qword [rcx - 0x70], xmm0
movsd qword [rcx - 0x10], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm6
movsd qword [rcx - 0x68], xmm0
movsd qword [rcx - 8], xmm0
sub r8, 1
jne 0x140008af0
lea rcx, [rbx + 0xccaae0]
lea rdx, str.EEAMPRD_r
call fcn.1400010b0
mov rdx, qword [0x140042fb8]
cmp dword [rdx + 0xccbb10], 1
jne 0x140008bda
mov rbx, qword [rdx + 0xe35f20]
cmp dword [rbx + 8], 1
je 0x140008bda
add rdx, 0xccaae0
inc rdi
cmp byte [rdx + rdi], bpl
jne 0x140008bb1
mov rcx, qword [rbx + 0xe00028]
lea r9, [rsp + 0x30]
mov r8, rdi
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rbx + 0xe00020], ebp
mov r8d, 0x3e8
call fcn.14000b7a0
movsxd r8, eax
test eax, eax
jle 0x140008d5a
mov rbx, qword [0x140042fb8]
mov edx, ebp
mov byte [r8 + rbx + 0x5b0ae0], bpl
mov rcx, qword [rbx + 0xe35f20]
mov r9d, dword [rcx + 0xe00018]
nop
mov eax, dword [rcx + 0xe0001c]
cmp r9d, eax
je 0x140008c37
inc eax
mov dword [rcx + 0xe0001c], eax
cmp eax, 0x700000
jb 0x140008c30
mov dword [rcx + 0xe0001c], ebp
inc edx
cmp edx, r8d
jl 0x140008c10
lea r10, [rbx + 0x5b0ae8]
mov r11, rbp
mov r8d, ebp
mov r9d, ebp
mov rdx, rbp
nop word [rax + rax]
movzx ecx, byte [rdx + r10]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140008c69
movsx eax, al
lea ecx, [r8 + r8*4]
lea r8d, [rax + rcx*2]
jmp 0x140008c74
cmp cl, 0x2d
jne 0x140008c7f
mov r9d, 1
inc rdx
cmp rdx, 0x10
jl 0x140008c50
jmp 0x140008c87
cmp cl, 0x2c
jne 0x140008c87
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 0x140008caf
sub cl, 0x2c
cmp cl, 1
ja 0x140008cbb
inc r11
cmp r11, 0x1000
jl 0x140008c41
lea rdx, [rsp + 0x44]
lea rcx, [rbx + 0x100]
nop word [rax + rax]
mov eax, dword [rdx - 4]
lea rcx, [rcx + 0x20]
sub eax, 0x8000
lea rdx, [rdx + 0x10]
movd xmm0, eax
mov eax, dword [rdx - 0x10]
cvtdq2pd xmm0, xmm0
sub eax, 0x8000
divsd xmm0, xmm6
movsd qword [rcx - 0x80], xmm0
movsd qword [rcx - 0x20], xmm0
movd xmm0, eax
mov eax, dword [rdx - 0xc]
cvtdq2pd xmm0, xmm0
sub eax, 0x8000
divsd xmm0, xmm6
movsd qword [rcx - 0x78], xmm0
movsd qword [rcx - 0x18], xmm0
movd xmm0, eax
mov eax, dword [rdx - 8]
cvtdq2pd xmm0, xmm0
sub eax, 0x8000
divsd xmm0, xmm6
movsd qword [rcx - 0x70], xmm0
movsd qword [rcx - 0x10], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm6
movsd qword [rcx - 0x68], xmm0
movsd qword [rcx - 8], xmm0
sub rsi, 1
jne 0x140008cd0
mov rsi, qword [rsp + 0xf0]
movaps xmm6, xmmword [rsp + 0xd0]
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.1400138e0
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret