Function at 0x14009ec80
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r15, rcx
xor r12d, r12d
lea rcx, [rsp + 0x30]
mov edi, r12d
mov r13, rdx
call fcn.1400aba80
mov rax, qword [r13 + 0x20]
mov r8, qword [r15 + 0x100]
mov qword [rsp + 0x88], rax
or rax, 0xffffffffffffffff
test r8, r8
je 0x14009ed51
mov rbp, qword [r13 + 0x58]
mov rcx, rax
inc rcx
cmp byte [rcx + rbp], r12b
jne 0x14009ecd1
inc rax
cmp byte [r8 + rax], r12b
jne 0x14009ecda
lea rbx, [rax + 7]
add rbx, rcx
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov rsi, rax
test rax, rax
je 0x14009f020
add dword [0x140134854], ebx
mov r8, rbp
mov rdx, rbx
mov rcx, rax
call fcn.1400011d4
lea r8, [0x140100968]
mov rdx, rbx
mov rcx, rsi
call fcn.140001250
mov r8, qword [r15 + 0x100]
mov rdx, rbx
mov rcx, rsi
call fcn.140001250
lea r8, str._Stub
mov rdx, rbx
mov rcx, rsi
call fcn.140001250
jmp 0x14009ed93
mov rax, qword [r15]
mov rcx, r15
mov rax, qword [rax + 0x38]
call qword [case.0x1400cd70e.0]
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], r12d
mov rcx, rax
lea r8, [0x14012d4f8]
xor edx, edx
mov rsi, rax
call fcn.1400cbdc8
test rax, rax
je 0x14009ed8c
mov rsi, qword [rsi + 0x40]
jmp 0x14009ed93
lea rsi, [0x1400f48cb]
mov ebp, 0x50
mov ecx, ebp
call fcn.1400ca61c
mov rbx, rax
test rax, rax
je 0x14009ede3
mov qword [rax + 8], r12
mov eax, dword [rax + 0x10]
and eax, 0xfffffffd
mov qword [rbx + 0x18], r12
or eax, 1
mov dword [rbx + 0x20], 0x23
mov dword [rbx + 0x10], eax
lea rax, vtable.expr_proc_call.0
mov qword [rbx], rax
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x30], r12
mov qword [rbx + 0x38], r12
mov qword [rbx + 0x40], rsi
mov word [rbx + 0x48], r12w
jmp 0x14009ede6
mov rbx, r12
lea rdx, [0x1400fae00]
lea rcx, [rsp + 0x30]
call fcn.1400abaf0
mov rdx, qword [r13 + 0x58]
lea rcx, [rsp + 0x30]
call fcn.1400abaf0
lea rdx, str.___pParamStruct__This
lea rcx, [rsp + 0x30]
call fcn.1400abaf0
mov rcx, rbp
call fcn.1400ca61c
lea r14, vtable.expr_variable.0
mov rsi, rax
lea rbp, vtable.expr_param.0
test rax, rax
je 0x14009ee87
mov ecx, 0x40
call fcn.1400ca61c
test rax, rax
je 0x14009ee69
mov rcx, qword [rsp + 0x38]
and dword [rax + 0x10], 0xfffffffc
mov qword [rax + 0x20], rcx
mov qword [rax + 0x18], r12
mov qword [rax], r14
mov qword [rax + 8], r12
mov qword [rax + 0x28], r12
mov qword [rax + 0x38], r12
mov dword [rax + 0x30], r12d
jmp 0x14009ee6c
mov rax, r12
xor r9d, r9d
mov r8, rax
mov rcx, rsi
lea edx, [r9 + 0x24]
call fcn.1400017b8
mov qword [rsi], rbp
mov qword [rsi + 0x48], r12
jmp 0x14009ee8a
mov rsi, r12
mov rdx, rsi
mov rcx, rbx
call fcn.1400c2d9c
mov rbp, qword [r15 + 8]
test rbp, rbp
je 0x14009f043
mov rcx, rbp
or rsi, 0xffffffffffffffff
mov rbp, qword [rbp + 0x10]
mov rax, qword [rcx + 0x50]
mov r12, qword [rax + 0x28]
mov rax, qword [rcx + 8]
mov qword [rsp + 0x80], rax
inc rsi
cmp byte [r12 + rsi], dil
jne 0x14009eec1
add rsi, 0xf
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov r14, rax
test rax, rax
je 0x14009f020
add dword [0x140134854], esi
lea r8, str.pParamStruct__
mov rdx, rsi
mov rcx, rax
call fcn.1400011d4
mov r8, r12
mov rdx, rsi
mov rcx, r14
call fcn.140001250
mov ecx, 0x40
call fcn.1400ca61c
xor r12d, r12d
mov rsi, rax
test rax, rax
je 0x14009ef4c
and dword [rsi + 0x10], 0xfffffffc
mov qword [rax + 0x18], r12
lea rax, vtable.expr_variable.0
mov qword [rsi], rax
mov qword [rsi + 0x20], r14
mov qword [rsi + 8], r12
mov qword [rsi + 0x28], r12
mov qword [rsi + 0x38], r12
mov dword [rsi + 0x30], r12d
jmp 0x14009ef4f
mov rsi, r12
mov r14, qword [rsp + 0x80]
mov rcx, r14
mov rax, qword [r14]
mov rax, qword [rax + 0x48]
call qword [case.0x1400cd70e.0]
test eax, eax
je 0x14009efd9
mov rax, qword [r14]
mov rcx, r14
mov rax, qword [rax + 0x38]
call qword [case.0x1400cd70e.0]
lea r9, [0x14012d4d0]
mov dword [rsp + 0x20], r12d
mov rcx, rax
lea r8, [0x14012d4f8]
xor edx, edx
call fcn.1400cbdc8
mov rdx, rax
test rax, rax
je 0x14009efd9
mov rcx, qword [rax]
mov rax, qword [rcx + 0xe8]
mov rcx, rdx
call qword [case.0x1400cd70e.0]
test eax, eax
je 0x14009efd9
mov ecx, 0x40
call fcn.1400ca61c
test rax, rax
je 0x14009efd6
mov rdx, rsi
mov rcx, rax
call fcn.140001a68
mov rsi, rax
jmp 0x14009efd9
mov rsi, r12
mov ecx, 0x50
call fcn.1400ca61c
mov r14, rax
test rax, rax
je 0x14009f00d
xor r9d, r9d
mov r8, rsi
mov rcx, rax
lea edx, [r9 + 0x24]
call fcn.1400017b8
lea rax, vtable.expr_param.0
mov qword [r14 + 0x48], r12
mov qword [r14], rax
jmp 0x14009f010
mov r14, r12
mov rdx, r14
mov rcx, rbx
call fcn.1400c2d9c
jmp 0x14009ee99
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
cmp qword [r15 + 0xc0], r12
je 0x14009f09d
test dword [r15 + 0x98], 0x8000
jne 0x14009f09d
mov ecx, 0x40
call fcn.1400ca61c
mov rdi, rax
test rax, rax
je 0x14009f09a
and dword [rdi + 0x10], 0xfffffffc
mov qword [rax + 0x18], r12
lea rax, vtable.expr_variable.0
mov qword [rdi], rax
lea rax, str.pParamStruct___RetVal
mov qword [rdi + 0x20], rax
mov qword [rdi + 8], r12
mov qword [rdi + 0x28], r12
mov qword [rdi + 0x38], r12
mov dword [rdi + 0x30], r12d
jmp 0x14009f09d
mov rdi, r12
mov r14, qword [rsp + 0x88]
mov rcx, r14
call fcn.1400ca48c
lea rdx, str.__Call_the_server__
mov rcx, r14
call fcn.1400c9f64
mov r8, rdi
mov rdx, rbx
mov rcx, r13
cmp qword [r15 + 0x100], r12
je 0x14009f0d8
xor r9d, r9d
call fcn.140060d40
jmp 0x14009f0e3
mov r9d, 1
call fcn.1400661f8
mov rcx, r14
call fcn.1400ca48c
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x14009f104
mov rcx, rax
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret