Function at 0x140003180
Capabilities:
Terminate process

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rax, qword [rdx + 8]
add qword [rcx + 0x2090], rax
mov rax, qword [rdx]
and rax, 0xfffffffffffffffe
mov rdi, rcx
mov qword [rdx], rax
mov rsi, rdx
mov rcx, rdx
je 0x1400021f8
mov rbx, rdx
sub rbx, rax
mov rdx, rbx
sar rdx, 0x15
movzx eax, dl
mov rax, qword [rdi + rax*8 + 0x20a8]
test rax, rax
jne 0x140002104
jmp 0x1400021f8
mov rax, qword [rax]
test rax, rax
je 0x1400021f8
cmp qword [rax + 8], rdx
jne 0x1400020f8
mov rdx, rbx
sar rdx, 0xc
and edx, 0x1ff
mov r8, rdx
sar r8, 6
mov rax, qword [rax + r8*8 + 0x10]
bt rax, rdx
jae 0x1400021f8
test byte [rbx], 1
jne 0x1400021f8
mov rax, qword [rbx + 8]
sub rax, 0xfc1
cmp rax, 0x3efff03e
ja 0x1400021f8
mov rdx, rbx
mov rcx, rdi
call fcn.1400018f0
mov rdx, rsi
mov r8, qword [rsi + 8]
lea rax, [0x140038220]
sar rdx, 0x15
add r8, qword [rbx + 8]
movzx ecx, dl
mov qword [rbx + 8], r8
mov rax, qword [rax + rcx*8 + 0x2110]
test rax, rax
jne 0x140002190
jmp 0x1400021be
mov rax, qword [rax]
test rax, rax
je 0x1400021be
cmp rdx, qword [rax + 8]
jne 0x140002188
sar rsi, 0xc
mov edx, 1
mov rcx, rsi
and ecx, 0x1ff
mov r8, rcx
shl rdx, cl
sar r8, 6
not rdx
and qword [rax + r8*8 + 0x10], rdx
mov r8, qword [rbx + 8]
cmp r8, 0x3f000000
jle 0x140002307
mov r8d, 0x3f000000
mov rdx, rbx
mov rcx, rdi
call fcn.140001f80
mov rcx, rdi
mov rdx, rbx
mov rsi, rax
call fcn.140001800
mov r8, qword [rsi + 8]
mov rcx, rsi
jmp 0x1400021fc
mov r8, qword [rsi + 8]
lea rdx, [r8 + rcx]
mov rbx, rdx
sar rbx, 0x15
movzx ebp, bl
mov rax, qword [rdi + rbp*8 + 0x20a8]
test rax, rax
jne 0x14000222c
jmp 0x1400022f0
mov rax, qword [rax]
test rax, rax
je 0x1400022f0
cmp rbx, qword [rax + 8]
jne 0x140002220
mov rcx, rdx
sar rcx, 0xc
and ecx, 0x1ff
mov r12, rcx
mov r13d, ecx
sar r12, 6
and r13d, 0x3f
add r12, 2
mov rax, qword [rax + r12*8]
bt rax, rcx
jae 0x1400022f0
test byte [rdx], 1
jne 0x1400022f0
cmp qword [rdx + 8], 0xfc0
jle 0x1400022f0
cmp r8, 0x3effffff
jg 0x1400022f0
mov rcx, rdi
call fcn.1400018f0
mov rdx, qword [rdx + 8]
lea rax, [0x140038220]
add rdx, qword [rsi + 8]
mov qword [rsi + 8], rdx
mov rax, qword [rax + rbp*8 + 0x2110]
test rax, rax
jne 0x1400022b0
jmp 0x1400022cb
mov rax, qword [rax]
test rax, rax
je 0x1400022cb
cmp rbx, qword [rax + 8]
jne 0x1400022a8
mov rdx, 0xfffffffffffffffe
mov ecx, r13d
rol rdx, cl
and qword [rax + r12*8], rdx
mov rdx, qword [rsi + 8]
cmp rdx, 0x3f000000
jle 0x1400022f0
mov rdx, rsi
mov rcx, rdi
mov r8d, 0x3f000000
call fcn.140001f80
mov rcx, rdi
mov rdx, rax
call fcn.140001800
mov rdx, rsi
mov rcx, rdi
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp fcn.140001800
mov rcx, rbx
mov rsi, rbx
jmp 0x1400021fc
sub rsp, 0x28
mov r11, rdx
mov r10, rcx
mov rcx, qword [rcx + 0x2098]
and r11, 0xfffffffffffff000
mov rax, qword [r11 + 8]
sub rcx, rax
mov qword [r10 + 0x2098], rcx
cmp rax, 0xfc0
jle 0x1400032a0
cmp qword [r10 + 0x28d8], 0
lea rax, [r10 + 0x28d8]
je 0x140003358
mov qword [r10 + 0x28b0], rax
lea r8, [r11 + 0x20]
lea rdx, [r10 + 0x28a8]
mov rcx, r10
call fcn.1400019f0
mov r8, qword [r11 + 8]
cmp r8, 0x3f000000
jle 0x140003344
mov rdx, r11
lea rax, [0x140038220]
sar rdx, 0x15
movzx ecx, dl
mov rax, qword [rax + rcx*8 + 0x2110]
test rax, rax
jne 0x140003220
jmp 0x14000324a
mov rax, qword [rax]
test rax, rax
je 0x14000324a
cmp rdx, qword [rax + 8]
jne 0x140003218
mov rcx, r11
mov edx, 1
sar rcx, 0xc
and ecx, 0x1ff
mov r9, rcx
shl rdx, cl
sar r9, 6
not rdx
and qword [rax + r9*8 + 0x10], rdx
mov rax, qword [r10 + 0x2080]
mov rdx, qword [r10 + 0x2088]
mov rcx, r11
cmp rdx, rax
cmovl rdx, rax
sub rax, r8
mov r8d, 0x8000
mov qword [r10 + 0x2080], rax
mov qword [r10 + 0x2088], rdx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
jne 0x1400032e8
lea rcx, [0x140019168]
call fcn.14000d680
mov ecx, 1
call sub.ucrtbase.dll_exit
nop dword [rax + rax]
mov qword [rdx + 8], 0
mov rcx, qword [r11 + 0x20]
mov qword [rdx], rcx
mov qword [r11 + 0x20], rdx
mov rdx, qword [r11 + 0x28]
cmp rdx, rax
jge 0x1400032f0
test rax, rax
lea rdx, [rax + 0xf]
cmovns rdx, rax
sar rdx, 4
add rdx, 2
mov rcx, qword [r10 + rdx*8]
mov qword [r11 + 0x10], rcx
test rcx, rcx
je 0x1400032e0
mov qword [rcx + 0x18], r11
mov qword [r10 + rdx*8], r11
add qword [r11 + 0x28], rax
add rsp, 0x28
ret
add rdx, rax
mov qword [r11 + 0x28], rdx
cmp rdx, 0xfc0
jne 0x1400032e8
lea rdx, [rax + 0xf]
test rax, rax
cmovs rax, rdx
mov rdx, qword [r11 + 0x10]
sar rax, 4
lea rcx, [rax + 2]
cmp r11, qword [r10 + rax*8 + 0x10]
je 0x140003370
mov rax, qword [r11 + 0x18]
mov qword [rax + 0x10], rdx
test rdx, rdx
je 0x140003333
mov rax, qword [r11 + 0x18]
mov qword [rdx + 0x18], rax
mov qword [r11 + 8], 0x1000
pxor xmm0, xmm0
movaps xmmword [r11 + 0x10], xmm0
mov rdx, r11
mov rcx, r10
add rsp, 0x28
jmp 0x1400020a0
movq xmm0, rax
punpcklqdq xmm0, xmm0
movaps xmmword [r10 + 0x28d8], xmm0
jmp 0x1400031c7
mov qword [r10 + rcx*8], rdx
test rdx, rdx
je 0x140003333
mov qword [rdx + 0x18], 0
jmp 0x140003333