Function at 0x180087cd0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x180106b38]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov esi, r9d
mov dword [rsp + 0x44], r9d
mov r13, r8
mov r10, rcx
mov qword [rsp + 0x58], rcx
xor r8d, r8d
mov edi, r8d
mov dword [rsp + 0x48], r8d
mov r14d, r8d
mov qword [rbp - 0x70], r8
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r8w
mov qword [rbp - 0x30], r8
mov r12d, 7
mov qword [rbp - 0x28], r12
mov word [rbp - 0x40], r8w
lea eax, [r9 - 0xa]
mov dword [rsp + 0x60], eax
mov r15, qword [rbp - 0x40]
movzx ebx, byte [rsp + 0x40]
cmp r9d, eax
jbe case.0x180087d87.62
mov qword [rsp + 0x68], r15
mov edx, 0x100
lea r9, [0x180000000]
lea eax, [rsi - 0x2e]
cmp eax, 0x11
ja case.0x180087d87.54
mov ecx, dword [r9 + rax*4 + 0x88594]
add rcx, r9
jmp rcx
mov rcx, qword [rsp + 0x50]
inc rcx
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r8w
cmp r14, rcx
jb 0x18008858d
sub r14, rcx
mov r8, qword [rsp + 0x70]
cmp r14, r8
cmovb r8, r14
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rax, qword [rbp - 0x80]
lea rdx, [rax + rcx*2]
lea rcx, [rbp - 0x60]
call fcn.180023930
or edi, 1
mov dword [rsp + 0x48], edi
lea r15, [rbp - 0x60]
mov r14, qword [rbp - 0x60]
mov r12, qword [rbp - 0x48]
cmp r12, 8
cmovae r15, r14
mov rsi, qword [rbp - 0x50]
cmp rsi, 8
jae 0x180087e08
movups xmm0, xmmword [r15]
mov qword [rbp - 8], 7
jmp 0x180087e4c
mov rdi, rsi
or rdi, 7
movabs rax, 0x7ffffffffffffffe
cmp rdi, rax
cmova rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp - 0x20]
call fcn.180022eb0
mov qword [rbp - 0x20], rax
lea r8, [rsi*2 + 2]
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 8], rdi
movups xmm0, xmmword [rbp - 0x20]
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x10], rsi
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x180087e95
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180087e90
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180088506
call fcn.1800bf494
movups xmm0, xmmword [rbp - 0x60]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x30], xmm0
cmp r12, 8
jb 0x180087ee0
lea rdx, [r12*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x180087ed8
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008850d
mov rcx, r14
call fcn.1800bf494
mov r14, qword [rbp - 0x70]
mov r15, qword [rbp - 0x40]
mov qword [rsp + 0x68], r15
mov esi, dword [rsp + 0x44]
mov r12, qword [rbp - 0x28]
jmp case.0x180087d87.54
mov rax, qword [rsp + 0x78]
cmp rax, 0xffffffffffffffff
je case.0x180087d87.54
mov r8, rax
sub r8, qword [rsp + 0x50]
dec r8
mov qword [rsp + 0x70], r8
jmp case.0x180087d87.54
lea rdi, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdi, qword [rbp - 0x80]
test r14, r14
je 0x180087ffa
mov r8, rdx
xor edx, edx
lea rcx, [rbp]
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x1800f2984]
mov edx, 0x100
nop
movzx eax, word [rcx]
cmp ax, dx
jae 0x180087fa1
movzx eax, al
mov byte [rbp + rax], 1
add rcx, 2
lea rax, [0x1800f2988]
cmp rcx, rax
jne 0x180087f50
lea rcx, [r14 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea r8, [rdi + rax*2]
movzx eax, word [r8]
cmp ax, dx
jae 0x180087f96
cmp byte [rbp + rax], 0
jne 0x180087fea
cmp r8, rdi
je 0x180087ffa
sub r8, 2
jmp 0x180087f86
lea rcx, [r14 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea r8, [rdi + rax*2]
nop word [rax + rax]
mov ecx, 2
lea rax, [0x1800f2984]
movzx edx, word [r8]
cmp word [rax], dx
je 0x180087fea
add rax, 2
sub rcx, 1
jne 0x180087fd0
cmp r8, rdi
je 0x180087ffa
sub r8, 2
jmp 0x180087fc0
sub r8, rdi
sar r8, 1
mov qword [rsp + 0x50], r8
jmp case.0x180087d87.54
mov qword [rsp + 0x50], 0xffffffffffffffff
jmp case.0x180087d87.54
mov eax, dword [r10]
cmp eax, 2
jne 0x1800880e0
mov edi, pe_nt_image_headers64
xor r12d, r12d
nop dword [rax]
cmp edi, 0x110
je 0x180088040
cmp edi, 0x23a
jne 0x180088099
mov rax, qword [r13 + 0xa0]
mov qword [r13 + 0x98], rax
jmp 0x180088099
mov dword [rsp + 0x20], 0xb2
xor r9d, r9d
mov r8, r13
mov rdx, r10
xor ecx, ecx
call fcn.180083f50
mov ebx, 0x66
nop dword [rax]
mov eax, ebx
sub eax, 0x66
je 0x1800880ba
cmp eax, 0x50
jne 0x1800880d0
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0xb5
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.18004e110
mov r10, qword [rsp + 0x58]
add edi, 0x95
cmp edi, 0x2cf
jb 0x180088020
mov r12, qword [rbp - 0x28]
mov bl, 1
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
mov rcx, qword [r13 + 0x40]
mov rax, qword [r13 + 0xc8]
test rax, rax
je 0x1800880d0
mov rdx, qword [rcx + 0x10]
call rax
add ebx, 0x3d5c
cmp ebx, 0x7ab8
ja 0x180088094
jmp 0x180088060
cmp eax, 0x14
jne 0x180088270
mov rax, qword [r10 + 0x18]
cmp byte [rax], 0x2a
jne 0x1800881c0
mov edi, 0x75
xor r12d, r12d
nop
cmp edi, 0x75
je 0x18008811d
cmp edi, 0x5f1
jne 0x180088179
mov rax, qword [r13 + 0xa0]
mov qword [r13 + 0x98], rax
jmp 0x180088179
mov dword [rsp + 0x20], 0xb2
xor r9d, r9d
mov r8, r13
mov rdx, r10
xor ecx, ecx
call fcn.180083f50
mov ebx, 0x66
nop word [rax + rax]
mov eax, ebx
sub eax, 0x66
je 0x18008819a
cmp eax, 0x50
jne 0x1800881b0
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0xb5
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.18004e110
mov r10, qword [rsp + 0x58]
add edi, 0x2be
cmp edi, 0x83a
jbe 0x180088100
mov r12, qword [rbp - 0x28]
mov bl, 1
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
mov rcx, qword [r13 + 0x40]
mov rax, qword [r13 + 0xc8]
test rax, rax
je 0x1800881b0
mov rdx, qword [rcx + 0x10]
call rax
add ebx, 0x3d5c
cmp ebx, 0x7ab8
ja 0x180088174
jmp 0x180088140
mov edi, 0xe0
cmp edi, 0xe0
je 0x18008823b
cmp edi, 0x3720
je 0x18008822b
cmp edi, 0x6d60
je 0x180088227
cmp edi, 0xa3a0
jne 0x180088253
cmp r12, 8
jb 0x18008851d
lea rdx, [r12*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x180088514
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180088514
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
xor bl, bl
jmp 0x180088253
mov rax, qword [r13 + 0xa0]
mov qword [r13 + 0x98], rax
jmp 0x180088253
mov r9d, 0x82
mov r8, r13
xor edx, edx
mov rcx, r10
call fcn.18003d360
mov r10, qword [rsp + 0x58]
add edi, 0x3640
cmp edi, 0xd900
jbe 0x1800881c5
mov bl, 1
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
mov edi, 0xcf
nop word [rax + rax]
mov eax, edi
sub eax, 0xcd
je case.0x180087d87.62
sub eax, 1
je 0x1800882bf
cmp eax, 1
jne 0x1800882c1
mov r9d, 0x82
mov r8, r13
xor edx, edx
mov rcx, r10
call fcn.18003d360
mov rax, qword [r13 + 0xa0]
mov qword [r13 + 0x98], rax
mov r10, qword [rsp + 0x58]
jmp 0x1800882c1
xor bl, bl
dec edi
cmp edi, 0xcc
ja 0x180088280
mov bl, 1
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
mov esi, 0x104
nop dword [rax + rax]
mov edi, 0x88
cmp edi, 0x88
jne 0x180088350
mov edx, esi
cmp rdx, r14
ja 0x18008830d
mov qword [rbp - 0x70], rdx
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rax, qword [rbp - 0x80]
mov word [rax + rdx*2], r8w
jmp 0x18008831c
xor r8d, r8d
sub rdx, r14
lea rcx, [rbp - 0x80]
call fcn.180023130
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdx, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x70]
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14, qword [rbp - 0x70]
cmp eax, 0x7a
jne case.0x180087d87.52
add esi, 0x104
xor r8d, r8d
add edi, 0x1980
cmp edi, 0x1980
jbe 0x1800882e5
jmp 0x1800882e0
mov esi, 0x34
jmp case.0x180087d87.54
xor r8d, r8d
mov r14, qword [rbp - 0x30]
mov rdx, r14
lea rcx, [r13 + 0x28]
call fcn.1800b3a30
xor ecx, ecx
test r14, r14
je 0x1800882cd
nop dword [rax + rax]
lea rax, [rbp - 0x40]
cmp r12, 8
cmovae rax, r15
lea rdx, [r13 + 0x28]
cmp qword [r13 + 0x40], 0x10
jb 0x1800883ab
mov rdx, qword [r13 + 0x28]
movzx eax, byte [rax + rcx*2]
mov byte [rdx + rcx], al
inc rcx
cmp rcx, r14
jb 0x180088390
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r8w
mov r8, qword [rsp + 0x50]
inc r8
cmp r14, r8
cmovb r8, r14
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdx, qword [rbp - 0x80]
lea rcx, [rbp - 0x60]
call fcn.180023930
or edi, 2
mov dword [rsp + 0x48], edi
lea rdi, [r13 + 8]
lea rax, [rbp - 0x60]
cmp rdi, rax
je 0x18008842e
mov rcx, rdi
call fcn.180020e40
movups xmm0, xmmword [rbp - 0x60]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rdi + 0x10], xmm1
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x1800882cd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008846d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008850d
call fcn.1800bf494
mov r14, qword [rbp - 0x70]
jmp case.0x180087d87.54
cmp qword [rsp + 0x50], 0xffffffffffffffff
je case.0x180087d87.62
mov qword [rsp + 0x70], 0xffffffffffffffff
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdx, qword [rbp - 0x80]
test r14, r14
je 0x1800884dc
lea rcx, [r14 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rax, [rdx + rax*2]
cmp word [rax], 0x2e
je 0x1800884cf
nop dword [rax]
cmp rax, rdx
je 0x1800884dc
sub rax, 2
cmp word [rax], 0x2e
jne 0x1800884c0
sub rax, rdx
sar rax, 1
mov qword [rsp + 0x78], rax
jmp case.0x180087d87.54
mov qword [rsp + 0x78], 0xffffffffffffffff
dec esi
mov dword [rsp + 0x44], esi
cmp esi, dword [rsp + 0x60]
jbe case.0x180087d87.62
mov r10, qword [rsp + 0x58]
mov edi, dword [rsp + 0x48]
xor r8d, r8d
jmp 0x180087d64
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, r15
call fcn.1800bf494
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x180088560
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008855b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008855b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800bf494
movzx eax, bl
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.1800bfc40
mov rbx, qword [rsp + 0x258]
add rsp, 0x210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180020ef0
nop
nop
push 0xffffffffffffff83
or byte [rax], al
mov dword [rbp + 8], edi
add bl, al
or dword [rax], 0
cli
jle 6443009451
add byte [rax - 0x7c], bh
or byte [rax], al
invalid
add byte [rax - 0x7d], ah
or byte [rax], al
invalid