Function at 0x140012c90
Capabilities:
Print debug messages
Write file on windows

Disassembly:
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
mov rax, qword [0x140081048]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov edi, r8d
mov r10, rcx
xor ebx, ebx
cmp r8d, 0x190
jbe 0x140012d82
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], rbx
lea r8d, [rbx + 0x3f]
lea rdx, str._Error__Mailslot::Client::Send____Message_size_exceeds_maximum.
lea rcx, [rbp - 0x29]
call fcn.140001990
nop
lea rdx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rdx, qword [rbp - 0x29]
mov r8, qword [rbp - 0x19]
call fcn.140010c40
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140010910
movzx edx, ax
mov rcx, rbx
call fcn.140010760
mov rcx, rbx
call fcn.140010600
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rcx, qword [rbp - 0x29]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 8
jb 0x140012f5b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140012f56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001306d
jmp 0x140012f56
cmp edi, 4
jae 0x140012e4c
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], rbx
mov r8d, 0x45
lea rdx, str._Error__Mailslot::Client::Send____Message_size_less_than_header_size.
lea rcx, [rbp - 0x29]
call fcn.140001990
nop
lea rdx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rdx, qword [rbp - 0x29]
mov r8, qword [rbp - 0x19]
call fcn.140010c40
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140010910
movzx edx, ax
mov rcx, rbx
call fcn.140010760
mov rcx, rbx
call fcn.140010600
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rcx, qword [rbp - 0x29]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 8
jb 0x140012f5b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140012f56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140013073
jmp 0x140012f56
movzx r8d, word [rdx + 2]
lea rcx, [r8 + 4]
cmp rdi, rcx
je 0x140012f62
mov dword [rbp - 0x19], edi
movabs rax, 0x2000000000000000
mov qword [rbp - 0x29], rax
mov dword [rbp - 0x15], r8d
movabs rax, 0x2000000000000004
mov qword [rbp - 0x21], rax
mov qword [rbp - 9], 2
lea rax, [rbp - 0x29]
mov qword [rbp - 1], rax
lea rax, str._Error__Mailslot::Client::Send____Message_size____differs_from_header___.
mov qword [rbp + 7], rax
mov qword [rbp + 0xf], 0x4d
movaps xmm0, xmmword [rbp - 9]
movdqa xmmword [rbp - 9], xmm0
movaps xmm1, xmmword [rbp + 7]
movdqa xmmword [rbp + 7], xmm1
lea r8, [rbp - 9]
lea rdx, [rbp + 7]
lea rcx, [rbp + 0x17]
call fcn.140002ad0
nop
lea rdx, [rbp + 0x17]
cmp qword [rbp + 0x2f], 8
cmovae rdx, qword [rbp + 0x17]
mov r8, qword [rbp + 0x27]
call fcn.140010c40
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140010910
movzx edx, ax
mov rcx, rbx
call fcn.140010760
mov rcx, rbx
call fcn.140010600
lea rcx, [rbp + 0x17]
cmp qword [rbp + 0x2f], 8
cmovae rcx, qword [rbp + 0x17]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
mov rdx, qword [rbp + 0x2f]
cmp rdx, 8
jb 0x140012f5b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x17]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140012f56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140013079
call fcn.140025820
xor al, al
jmp 0x140013050
mov qword [rsp + 0x20], rbx
lea r9, [rbp + 0x37]
mov r8d, edi
mov rcx, qword [r10 + 0x68]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14001304e
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], rbx
lea r8d, [rax + 0x40]
lea rdx, str._Error__Mailslot::Client::Send____Client_failed_to_send_message.
lea rcx, [rbp - 0x29]
call fcn.140001990
nop
lea rdx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rdx, qword [rbp - 0x29]
mov r8, qword [rbp - 0x19]
call fcn.140010c40
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140010910
movzx edx, ax
mov rcx, rbx
call fcn.140010760
mov rcx, rbx
call fcn.140010600
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rcx, qword [rbp - 0x29]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 8
jb 0x140013033
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001302e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140013067
call fcn.140025820
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, edi
mov edx, eax
lea rcx, str.Last_Error_Code____d_dwMsgSize___d_n
call fcn.140013120
xor al, al
jmp 0x140013050
mov al, 1
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.140025800
add rsp, 0xa0
pop rdi
pop rbx
pop rbp
ret
call fcn.14002c134
int3
call fcn.14002c134
int3
call fcn.14002c134
int3
call fcn.14002c134
int3