Function at 0x1400b688c
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rbp, rcx
mov rbx, r8
mov ecx, 0x70
mov rsi, rdx
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
xor r13d, r13d
mov rdi, rax
test rax, rax
je 0x1400b6f16
add dword [0x140134854], 0x70
mov rdx, rdi
mov qword [rax + 8], r13
mov rcx, rbx
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], r13
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rax
mov qword [rax + 0x38], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x48], r13
lea rax, vtable.CompositeFormatFragment.0
mov qword [rdi], rax
lea eax, [r13 + 1]
mov qword [rdi + 0x60], rax
mov qword [rdi + 0x50], r13
mov qword [rdi + 0x58], r13
mov qword [rdi + 0x68], r13
call fcn.1400ad4f4
lea ebx, [r13 + 1]
mov qword [rsp + 0x30], r13
mov r15d, r13d
mov r14d, r13d
mov r12d, r13d
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r13
test byte [rsi + 0x24], bl
je 0x1400b6981
and dword [rsp + 0x20], r12d
lea r9, [0x14012dd68]
lea r8, [0x14012e290]
xor edx, edx
mov rcx, rsi
call fcn.1400cbdc8
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1400b6981
mov r8, qword [rax + 0x18]
mov rcx, rbp
call fcn.1400b75ac
mov r12, qword [rax + 0x20]
mov qword [rsp + 0x30], r12
mov eax, dword [rsi + 0x24]
shr eax, 1
test bl, al
je 0x1400b69e9
and dword [rsp + 0x20], r13d
lea r9, [0x14012dde8]
lea r8, [0x14012e290]
xor edx, edx
mov rcx, rsi
call fcn.1400cbdc8
mov rbx, rax
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1400b69c7
xor r8d, r8d
mov rcx, rbp
call fcn.1400b75ac
mov r13, qword [rax + 0x20]
mov qword [rsp + 0x38], r13
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x1400b69e4
xor r8d, r8d
mov rcx, rbp
call fcn.1400b75ac
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x40], rax
mov ebx, 1
test byte [rsi + 0x24], 0xc
jne 0x1400b6d22
xor r9d, r9d
mov r8b, bl
mov rdx, rsi
mov rcx, rbp
call fcn.1400b4e70
mov rcx, qword [0x140134380]
mov r15, rax
test byte [rcx + 0xc], bl
je 0x1400b6a22
mov rdx, qword [rsi + 8]
mov rcx, rbp
call fcn.1400b62ec
mov r14, rax
mov edx, dword [rsi + 0x24]
mov ecx, edx
shr ecx, 1
and cl, bl
test bl, dl
jne 0x1400b6b2d
test cl, cl
je 0x1400b6c23
mov ecx, 0x68
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
xor r12d, r12d
mov rbx, rax
test rax, rax
je 0x1400b6f16
add dword [0x140134854], 0x68
lea r9, [0x14012e290]
mov qword [rax + 8], r12
lea r8, [0x14012da78]
mov qword [rax + 0x10], r12
xorps xmm0, xmm0
mov qword [rax + 0x18], r12
xor edx, edx
mov qword [rax + 0x20], r12
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rax
mov qword [rax + 0x38], r12
mov qword [rax + 0x40], r12
mov qword [rax + 0x48], r12
xor eax, eax
movups xmmword [rbx + 0x50], xmm0
mov qword [rbx + 0x60], rax
lea rax, vtable.MIDL_NDR64_VAR_ARRAY_HEADER_FORMAT.0
mov qword [rbx], rax
mov rcx, qword [rsi + 8]
mov dword [rsp + 0x20], r12d
call fcn.1400cbdc8
mov r9, rax
xorps xmm0, xmm0
xor eax, eax
mov edx, 0xfe
movups xmmword [rbx + 0x50], xmm0
mov qword [rbx + 0x60], rax
lea eax, [r12 + 1]
mov byte [rbx + 0x50], 0x42
movzx r8d, word [r9 + 0x30]
movzx ecx, r8w
sub cx, ax
cmp cx, dx
ja 0x1400b6f52
and byte [rbx + 0x52], dl
sub r8b, al
test r15, r15
mov byte [rbx + 0x51], r8b
mov eax, r12d
setne dl
sub rax, r14
or dl, byte [rbx + 0x52]
and dl, 0xfd
neg rax
sbb cl, cl
and cl, 2
or dl, cl
mov byte [rbx + 0x52], dl
mov eax, dword [rsi + 0x34]
mov dword [rbx + 0x54], eax
mov eax, dword [r9 + 0x34]
mov dword [rbx + 0x58], eax
mov qword [rbx + 0x60], r13
jmp 0x1400b6c0f
test cl, cl
jne 0x1400b6c23
mov ecx, 0x60
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
xor r13d, r13d
mov rbx, rax
test rax, rax
je 0x1400b6f16
add dword [0x140134854], 0x60
lea r9, [0x14012e290]
mov qword [rax + 8], r13
lea r8, [0x14012da78]
mov qword [rax + 0x10], r13
xorps xmm0, xmm0
mov qword [rax + 0x18], r13
xor edx, edx
mov qword [rax + 0x20], r13
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rax
mov qword [rax + 0x38], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x48], r13
movups xmmword [rax + 0x50], xmm0
lea rax, vtable.MIDL_NDR64_CONF_ARRAY_HEADER_FORMAT.0
mov dword [rsp + 0x20], r13d
mov qword [rbx], rax
mov rcx, qword [rsi + 8]
call fcn.1400cbdc8
xorps xmm0, xmm0
mov r9, rax
movups xmmword [rbx + 0x50], xmm0
mov byte [rbx + 0x50], 0x41
mov edx, 0xfe
movzx r8d, word [rax + 0x30]
lea eax, [r13 + 1]
movzx ecx, r8w
sub cx, ax
cmp cx, dx
ja 0x1400b6f52
and byte [rbx + 0x52], dl
sub r8b, al
test r15, r15
mov byte [rbx + 0x51], r8b
mov eax, r13d
setne dl
sub rax, r14
or dl, byte [rbx + 0x52]
and dl, 0xfd
neg rax
sbb cl, cl
and cl, 2
or dl, cl
mov byte [rbx + 0x52], dl
mov eax, dword [r9 + 0x34]
mov dword [rbx + 0x54], eax
mov qword [rbx + 0x58], r12
mov rdx, qword [rsi + 8]
mov rcx, rbp
call fcn.1400b62ec
mov r14, rax
jmp 0x1400b6ec9
and edx, 3
cmp dl, 3
jne 0x1400b6f39
mov ecx, 0x68
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
je 0x1400b6f16
and qword [rax + 8], 0
lea r9, [0x14012e290]
and qword [rax + 0x10], 0
lea r8, [0x14012da78]
and qword [rax + 0x18], 0
xorps xmm0, xmm0
and qword [rax + 0x20], 0
xor edx, edx
and qword [rax + 0x38], 0
and qword [rax + 0x40], 0
and qword [rax + 0x48], 0
add dword [0x140134854], 0x68
and dword [rsp + 0x20], 0
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rax
xor eax, eax
movups xmmword [rbx + 0x50], xmm0
mov qword [rbx + 0x60], rax
lea rax, vtable.MIDL_NDR64_CONF_VAR_ARRAY_HEADER_FORMAT.0
mov qword [rbx], rax
mov rcx, qword [rsi + 8]
call fcn.1400cbdc8
mov r9, rax
xorps xmm0, xmm0
xor eax, eax
mov edx, 0xfe
movups xmmword [rbx + 0x50], xmm0
mov qword [rbx + 0x60], rax
mov eax, 1
mov byte [rbx + 0x50], 0x43
movzx r8d, word [r9 + 0x30]
movzx ecx, r8w
sub cx, ax
cmp cx, dx
ja 0x1400b6f52
and byte [rbx + 0x52], dl
sub r8b, al
test r15, r15
mov byte [rbx + 0x51], r8b
setne dl
xor eax, eax
or dl, byte [rbx + 0x52]
sub rax, r14
and dl, 0xfd
neg rax
sbb cl, cl
and cl, 2
or dl, cl
mov byte [rbx + 0x52], dl
mov eax, dword [r9 + 0x34]
mov dword [rbx + 0x54], eax
mov qword [rbx + 0x58], r12
mov qword [rbx + 0x60], r13
jmp 0x1400b6ec9
mov ecx, 0x78
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
xor ecx, ecx
mov rbx, rax
test rax, rax
je 0x1400b6f16
add dword [0x140134854], 0x78
lea r9, [0x14012dd68]
mov qword [rax + 8], rcx
lea r8, [0x14012e290]
mov qword [rax + 0x10], rcx
xorps xmm0, xmm0
mov qword [rax + 0x18], rcx
xor edx, edx
mov qword [rax + 0x20], rcx
mov qword [rax + 0x38], rcx
mov qword [rax + 0x40], rcx
mov qword [rax + 0x48], rcx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rax
xor eax, eax
movups xmmword [rbx + 0x50], xmm0
mov dword [rsp + 0x98], ecx
movups xmmword [rbx + 0x60], xmm0
mov qword [rbx + 0x70], rax
lea rax, vtable.MIDL_NDR64_CONF_VAR_BOGUS_ARRAY_HEADER_FORMAT.0
mov qword [rbx], rax
mov r12d, dword [rsi + 0x24]
mov dword [rsp + 0x20], ecx
mov rcx, rsi
shr r12d, 3
and r12b, 1
call fcn.1400cbdc8
test byte [rsi + 0x24], 1
mov r13, rax
jne 0x1400b6df7
test rax, rax
je 0x1400b6df7
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400b6df7
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x30]
call qword [case.0x1400cd70e.0]
test eax, eax
je 0x1400b6df7
mov rcx, qword [r13 + 0x10]
mov rax, qword [rcx]
mov rax, qword [rax + 0x98]
call qword [case.0x1400cd70e.0]
mov r13, rax
jmp 0x1400b6dff
mov r13, qword [rsp + 0x98]
mov rcx, qword [rsi + 8]
lea r9, [0x14012e290]
and dword [rsp + 0x20], r14d
lea r8, [0x14012da78]
xor edx, edx
call fcn.1400cbdc8
mov r9, rax
xorps xmm0, xmm0
movups xmmword [rbx + 0x50], xmm0
xor eax, eax
add r12b, 0x46
movups xmmword [rbx + 0x60], xmm0
mov qword [rbx + 0x70], rax
mov edx, 0xfe
mov byte [rbx + 0x50], r12b
mov eax, 1
movzx r8d, word [r9 + 0x30]
movzx ecx, r8w
sub cx, ax
cmp cx, dx
ja 0x1400b6f52
sub r8b, al
mov al, byte [rbx + 0x52]
and al, dl
mov byte [rbx + 0x51], r8b
or al, 2
mov rdx, r9
mov byte [rbx + 0x52], al
mov ecx, dword [rsi + 0x24]
shr ecx, 6
shl cl, 3
xor cl, al
and cl, 8
xor cl, al
mov byte [rbx + 0x52], cl
mov eax, dword [rsi + 0x24]
shr eax, 4
shl al, 2
xor al, cl
and al, 4
xor al, cl
mov rcx, rbp
mov byte [rbx + 0x52], al
mov eax, dword [rsi + 0x24]
shr eax, 7
mov byte [rbx + 0x53], al
mov dword [rbx + 0x54], r13d
mov r8, qword [rbp + 8]
call fcn.1400b23f0
mov qword [rbx + 0x58], rax
mov rax, qword [rsp + 0x30]
mov qword [rbx + 0x60], rax
mov rax, qword [rsp + 0x38]
mov qword [rbx + 0x68], rax
mov rax, qword [rsp + 0x40]
mov qword [rbx + 0x70], rax
mov rdx, rbx
mov rcx, rdi
call fcn.1400ad4f4
test r15, r15
je 0x1400b6ee4
mov rdx, r15
mov rcx, rdi
call fcn.1400ad4f4
test r14, r14
je 0x1400b6ef4
mov rdx, r14
mov rcx, rdi
call fcn.1400ad4f4
lea r11, [rsp + 0x50]
mov rax, rdi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ebx, 0x7d5
xor edx, edx
mov r8d, ebx
xor r9d, r9d
xor ecx, ecx
call fcn.1400c9744
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
nop dword [rax + rax]
int3
lea r8, [0x1400f48cc]
mov edx, 0x16a8
lea rcx, str.com_rpcmidlcodegen_ndr64.cxx
call fcn.1400c7a2c
int3
lea r8, str.Alignment___0xFF__Alignment___0
mov edx, 0x8d
lea rcx, str.com_rpcmidlincmidl64types.h
call fcn.1400c7a2c
int3