Function at 0x140009989
Capabilities:
Write file on windows

Disassembly:
test rcx, rcx
je 0x140009d87
push rbx
sub rsp, 0x250
mov rax, qword [0x140213010]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov rbx, rcx
xor edx, edx
lea rcx, [rsp + 0x40]
mov r8d, 0x100
call sub.VCRUNTIME140.dll_memset
mov r10d, 4
lea r9, [rsp + 0x40]
add rbx, 2
lea r11d, [r10 + 0x2c]
nop dword [rax + rax]
movzx edx, byte [rbx - 2]
mov eax, 0x37
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 1], al
mov eax, 0x37
movzx edx, byte [rbx - 1]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 2], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 3], al
mov eax, 0x37
movzx edx, byte [rbx]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 4], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 5], al
mov eax, 0x37
movzx edx, byte [rbx + 1]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 6], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 7], al
mov eax, 0x37
movzx edx, byte [rbx + 2]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 8], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 9], al
mov eax, 0x37
movzx edx, byte [rbx + 3]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0xa], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 0xb], al
mov eax, 0x37
movzx edx, byte [rbx + 4]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0xc], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 0xd], al
mov eax, 0x37
movzx edx, byte [rbx + 5]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0xe], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 0xf], al
mov eax, 0x37
movzx edx, byte [rbx + 6]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0x10], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 0x11], al
mov eax, 0x37
movzx edx, byte [rbx + 7]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0x12], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 0x13], al
mov eax, 0x37
movzx edx, byte [rbx + 8]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0x14], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 + 0x15], al
mov eax, 0x37
movzx edx, byte [rbx + 9]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 + 0x16], al
lea r9, [r9 + 0x20]
cmp dl, 9
lea rbx, [rbx + 0x10]
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 - 9], al
mov eax, 0x37
movzx edx, byte [rbx - 6]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 - 8], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 - 7], al
mov eax, 0x37
movzx edx, byte [rbx - 5]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 - 6], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 - 5], al
mov eax, 0x37
movzx edx, byte [rbx - 4]
movzx ecx, dl
and dl, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 - 4], al
cmp dl, 9
mov eax, 0x37
cmovbe eax, r11d
add al, dl
mov byte [r9 - 3], al
mov eax, 0x37
movzx r8d, byte [rbx - 3]
movzx ecx, r8b
and r8b, 0xf
shr cl, 4
cmp cl, 9
cmovbe eax, r11d
add al, cl
mov byte [r9 - 2], al
cmp r8b, 9
mov eax, 0x37
cmovbe eax, r11d
add al, r8b
mov byte [r9 - 1], al
sub r10, 1
jne 0x1400099d0
lea r9, [rsp + 0x40]
mov edx, 0x100
lea r8, str.DumpDataAsHex:__data_is__s__n
lea rcx, [rsp + 0x140]
call fcn.1400096e0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetConsoleOutputCP]
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor edx, edx
mov dword [rsp + 0x30], edx
cmp rax, 0xffffffffffffffff
je 0x140009d6f
lea rcx, [rsp + 0x140]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rcx + r8], dl
jne 0x140009d41
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x30]
lea rdx, [rsp + 0x140]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x140009d6f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14019ce50
add rsp, 0x250
pop rbx
ret