Function at 0x14004327c
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov r13, rcx
mov r12, r8
mov ecx, 0x128
mov r15, rdx
call fcn.1400ca61c
xor edi, edi
test rax, rax
je 0x1400432c4
movzx edx, word [0x140135810]
mov rcx, rax
call fcn.1400026f0
mov rsi, rax
jmp 0x1400432c7
mov rsi, rdi
movsx rcx, word [r15 + 0x24]
mov eax, 8
inc rcx
mov rbp, 0xffffffffffffffff
mul rcx
mov rbx, rax
cmovo rbx, rbp
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov qword [rsp + 0x38], rax
mov r14, rax
test rax, rax
je 0x140043d0c
mov rcx, qword [r12]
mov r8, r14
add dword [0x140134854], ebx
movsx r9d, word [r15 + 0x24]
mov edx, dword [r15]
inc r9d
mov rax, qword [rcx + 0x38]
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0x20], rcx
mov rcx, r12
mov dword [rsp + 0x30], edx
call qword [case.0x1400cd70e.0]
mov rcx, qword [r14]
call fcn.14004e3dc
mov rcx, qword [r14]
mov rbx, rax
call fcn.1400447f0
lea eax, [rbp + 3]
mov qword [rsi + 0x40], rbx
lea ecx, [rbp + 5]
cmp dword [r15 + 0x1c], eax
je 0x1400433b2
cmp dword [r15 + 0x18], ecx
je 0x1400433b2
test byte [r15 + 0x48], 8
jne 0x1400433b2
movups xmm0, xmmword [r15 + 0x30]
mov r8, r12
lea rdx, [rsp + 0x40]
mov rcx, r13
movdqu xmmword [rsp + 0x40], xmm0
call fcn.1400423b0
test rax, rax
je 0x1400435a6
mov qword [rsi + 8], rax
mov ecx, dword [rax + 0x18]
movzx ecx, cl
cmp ecx, 0x2d
je 0x1400433a7
cmp ecx, 0x1e
jne 0x1400435a6
bts qword [rax + 0x20], 0x1b
jmp 0x1400435a6
mov ecx, 0x50
call fcn.1400ca61c
mov r14, rax
test rax, rax
je 0x14004341d
movups xmm0, xmmword [r15 + 0x30]
mov r8, r12
lea rdx, [rsp + 0x40]
mov rcx, r13
movdqu xmmword [rsp + 0x40], xmm0
call fcn.1400423b0
movzx ecx, word [0x140134370]
mov word [r14 + 0x1a], cx
lea rcx, vtable.node_pointer.0
mov qword [r14], rcx
mov qword [r14 + 0x20], rdi
mov word [r14 + 0x28], di
mov qword [r14 + 0x30], rdi
mov byte [r14 + 0x18], 0x2d
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x38], rdi
mov qword [r14 + 0x40], rdi
mov qword [r14 + 8], rax
mov qword [r14 + 0x48], rdi
jmp 0x140043420
mov r14, rdi
mov ecx, 0xc8
call fcn.1400ca61c
mov rbx, rax
test rax, rax
je 0x1400434c6
and dword [rax + 0x90], 0xfffffffe
movzx ecx, word [0x140134370]
and dword [rbx + 0x98], 0xffffe000
and dword [rbx + 0xc0], 0xfffffe00
mov word [rax + 0x1a], cx
mov qword [rax + 0x20], rdi
mov word [rax + 0x28], di
mov qword [rax + 0x30], rdi
mov byte [rax + 0x18], 0x1c
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x38], rdi
mov qword [rax + 0x40], rdi
mov qword [rax + 0x50], rdi
mov qword [rax + 0x48], rdi
mov qword [rax + 0x58], rdi
mov qword [rax + 0x60], rdi
mov qword [rax + 0x70], rdi
mov qword [rax + 0x78], rdi
mov qword [rax + 0x80], rdi
mov dword [rax + 0x68], edi
mov qword [rax + 0x88], rdi
lea rax, vtable.node_param.0
mov qword [rbx], rax
mov qword [rbx + 0xa0], rdi
mov qword [rbx + 0xa8], rdi
mov qword [rbx + 0xb8], rdi
jmp 0x1400434c9
mov rbx, rdi
bts qword [r14 + 0x20], 0x1b
lea rax, str.retval
mov ecx, 0x20
mov qword [rbx + 0x40], rax
mov qword [rbx + 8], r14
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x14004350b
mov dword [rax + 8], 0x4c
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.battr.0
mov qword [rcx], rax
jmp 0x14004350e
mov rcx, rdi
mov rax, qword [rbx + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rbx + 0x60], rcx
mov ecx, 0x28
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x14004354e
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], 0xb
jmp 0x140043551
mov rcx, rdi
mov rax, qword [rbx + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rbx + 0x60], rcx
mov ecx, 0xb0
mov rax, qword [rsi + 0xb0]
mov qword [rbx + 0x58], rax
mov qword [rsi + 0xb0], rbx
call fcn.1400ca61c
test rax, rax
je 0x14004358f
xor r8d, r8d
mov rcx, rax
lea edx, [r8 + 0xc]
call fcn.14002bbf4
jmp 0x140043592
mov rax, rdi
mov r14, qword [rsp + 0x38]
lea rcx, str.HRESULT
mov qword [rax + 0x40], rcx
mov qword [rsi + 8], rax
movsx ebx, word [r15 + 0x24]
movsx r13d, word [r15 + 0x26]
test ebx, ebx
je 0x14004377e
mov rbp, qword [r15 + 0x10]
lea r12, [r14 + rbx*8]
mov ecx, 0xc8
call fcn.1400ca61c
mov r14, rax
test rax, rax
je 0x140043668
and dword [rax + 0x90], 0xfffffffe
movzx ecx, word [0x140134370]
and dword [r14 + 0x98], 0xffffe000
and dword [r14 + 0xc0], 0xfffffe00
mov word [rax + 0x1a], cx
mov qword [rax + 0x20], rdi
mov word [rax + 0x28], di
mov qword [rax + 0x30], rdi
mov byte [rax + 0x18], 0x1c
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x38], rdi
mov qword [rax + 0x40], rdi
mov qword [rax + 0x50], rdi
mov qword [rax + 0x48], rdi
mov qword [rax + 0x58], rdi
mov qword [rax + 0x60], rdi
mov qword [rax + 0x70], rdi
mov qword [rax + 0x78], rdi
mov qword [rax + 0x80], rdi
mov dword [rax + 0x68], edi
mov qword [rax + 0x88], rdi
lea rax, vtable.node_param.0
mov qword [r14], rax
mov qword [r14 + 0xa0], rdi
mov qword [r14 + 0xa8], rdi
mov qword [r14 + 0xb8], rdi
jmp 0x14004366b
mov r14, rdi
cmp ebx, dword [rsp + 0xa8]
jae 0x14004368c
mov rcx, qword [r12]
call fcn.14004e3dc
mov qword [r14 + 0x40], rax
mov rcx, qword [r12]
call fcn.1400447f0
jmp 0x140043697
lea rax, str.noname
mov qword [r14 + 0x40], rax
mov r8, qword [rsp + 0xb0]
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0xa0]
dec ebx
mov dword [rsp + 0xb8], ebx
shl rbx, 5
movups xmm0, xmmword [rbx + rbp]
movdqu xmmword [rsp + 0x40], xmm0
call fcn.1400423b0
mov qword [r14 + 8], rax
lea r8, [rsp + 0x40]
movups xmm0, xmmword [rbx + rbp + 0x10]
mov rdx, r14
movdqu xmmword [rsp + 0x40], xmm0
call fcn.140043d38
test r13d, r13d
je 0x14004372f
mov ecx, 0x28
dec r13d
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043720
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], 0xa
jmp 0x140043723
mov rcx, rdi
mov rax, qword [r14 + 0x60]
mov qword [rcx + 0x10], rax
mov qword [r14 + 0x60], rcx
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x14004374e
mov eax, dword [rcx + 0x18]
movzx eax, al
cmp eax, 0x2d
je 0x140043748
cmp eax, 0x1e
jne 0x14004374e
bts qword [rcx + 0x20], 0x1b
mov rax, qword [rsi + 0xb0]
mov ebx, dword [rsp + 0xb8]
mov qword [r14 + 0x58], rax
mov qword [rsi + 0xb0], r14
mov r14d, 8
sub r12, r14
test ebx, ebx
jne 0x1400435c0
or rbp, 0xffffffffffffffff
jmp 0x140043784
mov r14d, 8
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
mov r13d, 0x28
mov ecx, r13d
call fcn.1400ca61c
lea r12d, [r13 - 0x23]
mov rbx, rax
test rax, rax
je 0x140043807
lea ecx, [r13 + 0x10]
call fcn.1400ca61c
mov rdx, rax
test rax, rax
je 0x1400437f1
mov ecx, dword [rax + 0x10]
mov qword [rax + 8], rdi
and ecx, 0xfffffffd
mov qword [rax + 0x18], rdi
or ecx, 1
mov dword [rax + 0x10], ecx
lea rax, vtable.expr_constant.0
mov qword [rdx], rax
movzx eax, word [r15 + 0x50]
mov qword [rdx + 0x28], rax
mov dword [rdx + 0x20], r12d
mov qword [rdx + 0x30], rdi
jmp 0x1400437f4
mov rdx, rdi
mov r8d, 0xc
mov rcx, rbx
call fcn.140003a68
mov rcx, rax
jmp 0x14004380a
mov rcx, rdi
mov rax, qword [rsi + 0x60]
movzx ebx, word [r15 + 0x50]
mov qword [rcx + 0x10], rax
mov eax, 1
mov qword [rsi + 0x60], rcx
cmp bx, ax
jne 0x140043866
mov rcx, r13
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043857
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], 9
jmp 0x14004385a
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
mov eax, 2
cmp bx, ax
jne 0x1400438b2
mov rcx, r13
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x1400438a3
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov eax, 1
mov dword [rcx + 0x20], eax
jmp 0x1400438a6
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
mov eax, 4
cmp bx, ax
jne 0x1400438fe
mov rcx, r13
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x1400438ef
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov eax, 2
mov dword [rcx + 0x20], eax
jmp 0x1400438f2
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
cmp bx, 0x10
jne 0x140043945
mov rcx, r13
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043936
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], 3
jmp 0x140043939
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
mov eax, 0x20
cmp bx, ax
jne 0x140043991
mov rcx, r13
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043982
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov eax, 4
mov dword [rcx + 0x20], eax
jmp 0x140043985
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
cmp bx, r14w
jne 0x1400439d5
mov rcx, r13
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x1400439c6
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], r12d
jmp 0x1400439c9
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
cmp bx, 0x40
jne 0x140043a17
mov ecx, 0x20
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043a08
mov dword [rax + 8], 0x3a
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.battr.0
mov qword [rcx], rax
jmp 0x140043a0b
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
mov eax, dword [r15 + 0x1c]
cmp eax, 2
jne 0x140043adf
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], edi
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rsi
call fcn.1400cbdc8
test rax, rax
je 0x140043a4b
mov rbx, qword [rsi + 0x40]
jmp 0x140043a52
lea rbx, [0x1400f48cb]
mov r14, rbp
inc r14
cmp byte [rbx + r14], dil
jne 0x140043a55
add r14, r12
mov rcx, r14
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov r15, rax
test rax, rax
je 0x140043d0c
add dword [0x140134854], r14d
inc rbp
cmp byte [rbx + rbp], dil
jne 0x140043a83
lea rdx, [r12 + rbp]
mov r9, rbx
lea r8, str.get__s
mov rcx, r15
call fcn.140001318
mov rcx, r13
mov qword [rsi + 0x40], r15
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043c69
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], 6
jmp 0x140043c6c
mov r14d, 4
cmp eax, r14d
jne 0x140043ba9
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], edi
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rsi
call fcn.1400cbdc8
test rax, rax
je 0x140043b15
mov rbx, qword [rsi + 0x40]
jmp 0x140043b1c
lea rbx, [0x1400f48cb]
mov r14, rbp
inc r14
cmp byte [rbx + r14], dil
jne 0x140043b1f
add r14, r12
mov rcx, r14
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov r15, rax
test rax, rax
je 0x140043d0c
add dword [0x140134854], r14d
inc rbp
cmp byte [rbx + rbp], dil
jne 0x140043b4d
lea rdx, [r12 + rbp]
mov r9, rbx
lea r8, str.put__s
mov rcx, r15
call fcn.140001318
mov rcx, r13
mov qword [rsi + 0x40], r15
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043c69
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], 7
jmp 0x140043c6c
mov r12d, 8
cmp eax, r12d
jne 0x140043c7e
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], edi
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rsi
call fcn.1400cbdc8
test rax, rax
je 0x140043bdf
mov rbx, qword [rsi + 0x40]
jmp 0x140043be6
lea rbx, [0x1400f48cb]
mov r14, rbp
inc r14
cmp byte [rbx + r14], dil
jne 0x140043be9
add r14, r12
mov rcx, r14
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov r15, rax
test rax, rax
je 0x140043d0c
add dword [0x140134854], r14d
inc rbp
cmp byte [rbx + rbp], dil
jne 0x140043c17
lea rdx, [r12 + rbp]
mov r9, rbx
lea r8, str.putref__s
mov rcx, r15
call fcn.140001318
mov rcx, r13
mov qword [rsi + 0x40], r15
call fcn.1400ca61c
mov rcx, rax
test rax, rax
je 0x140043c69
mov dword [rax + 8], 0x14
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
lea rax, vtable.node_member_attr.0
mov qword [rcx], rax
mov dword [rcx + 0x20], r12d
jmp 0x140043c6c
mov rcx, rdi
mov rax, qword [rsi + 0x60]
mov r14d, 4
mov qword [rcx + 0x10], rax
mov qword [rsi + 0x60], rcx
bts qword [rsi + 0x20], 0x1b
mov rcx, r13
call fcn.1400ca61c
mov rbx, rax
test rax, rax
je 0x140043ceb
mov ecx, 0x38
call fcn.1400ca61c
mov rdx, rax
test rax, rax
je 0x140043cd7
mov ecx, dword [rax + 0x10]
mov qword [rax + 8], rdi
and ecx, 0xfffffffd
mov qword [rax + 0x18], rdi
or ecx, 1
mov dword [rax + 0x10], ecx
lea rax, vtable.expr_constant.0
mov qword [rdx], rax
movsxd rax, dword [rsp + 0x30]
mov qword [rdx + 0x28], rax
mov dword [rdx + 0x20], r14d
mov qword [rdx + 0x30], rdi
jmp 0x140043cda
mov rdx, rdi
mov r8d, 0x15
mov rcx, rbx
call fcn.140003a68
mov rdi, rax
mov rax, qword [rsi + 0x60]
mov qword [rdi + 0x10], rax
mov rax, rsi
mov qword [rsi + 0x60], rdi
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
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