Function at 0x180023820
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x150
mov r15, qword [rsp + 0x1b0]
mov rbp, rcx
mov qword [rsp + 0x68], rcx
mov r14d, r9d
imul ecx, r9d, 0xae4
mov dword [rsp + 0x48], r9d
mov ebx, dword [rsp + 0x48]
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x50], rdx
mov dword [rsp + 0x30], ecx
cmp r9d, ecx
ja 0x180023a0f
mov r13, qword [rsp + 0x98]
xor edi, edi
mov r12d, dword [rsp + 0x48]
mov esi, dword [rsp + 0x48]
lea rax, [0x180105c20]
cmp r14d, 0x9bfa
ja 0x1800239a8
je 0x18002398a
cmp r14d, 0x1734
ja 0x18002391c
je 0x180023a42
mov eax, r14d
sub eax, 0x24
je 0x180023913
sub eax, 0x9d
je 0x180023d74
sub eax, 0x14
je 0x1800238de
cmp eax, 0x1d
jne 0x180023d74
mov eax, dword [rdx + 0x2c]
mov r13, qword [rdx + 0x10]
mov dword [rsp + 0x60], eax
jmp 0x180023d74
mov rax, qword [rdx]
test rax, rax
je 0x1800238f7
mov rcx, qword [rdx + 0x30]
test rcx, rcx
je 0x1800238f7
call qword [rax + 0x20]
mov rdx, qword [rsp + 0x50]
mov r8, rdx
mov ecx, 0x5a
mov rdx, rbp
call fcn.180044580
mov dword [rsp + 0x80], eax
jmp 0x180023d60
mov dword [rsp + 0x58], edi
jmp 0x180023d74
cmp r14d, 0x2e44
je 0x180023d90
cmp r14d, 0x7c65
je 0x180023960
cmp r14d, 0x8949
jne 0x180023d74
mov rax, qword [rdx]
test rax, rax
je 0x180023d74
mov rcx, qword [rdx + 0x30]
test rcx, rcx
je 0x180023d70
call qword [rax + 0x30]
jmp 0x180023d60
xor r9d, r9d
mov qword [rsp + 0x70], rax
lea r8, [rsp + 0x70]
mov dword [rsp + 0x78], edi
mov edx, 0x139
lea rcx, [rsp + 0x78]
call fcn.1800b8b00
mov qword [rsp + 0x70], rax
jmp 0x180023d60
mov rdx, qword [rdx]
lea rcx, [rsp + 0xb0]
mov r9d, 0x10f
xor r8d, r8d
call fcn.180088190
jmp 0x180023d60
cmp r14d, 0x1d20a
ja 0x180023cfb
je 0x180023ad1
cmp r14d, 0xf809
je 0x180023a7b
cmp r14d, 0x111bd
je 0x1800239fc
cmp r14d, 0x13702
jne 0x180023d74
mov rdx, qword [rdx]
lea rcx, [rsp + 0x100]
mov r9d, 0x10f
xor r8d, r8d
call fcn.180088190
jmp 0x180023d60
mov ecx, 0x9a
mov eax, ecx
sub eax, 0x9a
je 0x180023a2c
cmp eax, 0x6e
jne 0x180023a33
mov eax, ebx
mov rbx, qword [rsp + 0x1a8]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ebx, dword [rsp + 0x80]
add ecx, 0x6e
cmp ecx, 0x176
jb 0x180023a01
mov ecx, dword [rsp + 0x30]
test r15, r15
je 0x180023d74
mov rcx, qword [rdx]
lea r8, [rsp + 0x58]
mov eax, dword [rbp]
add rcx, 8
mov rdx, qword [rdx + 0x60]
mov r9, r15
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x20], 0xef
call fcn.180055b80
mov dword [rsp + 0x58], eax
jmp 0x180023d60
mov ecx, edi
mov ebp, 0x9e
mov dword [rsp + 0x40], ecx
mov eax, ebp
sub eax, 0x9e
je 0x180023abc
sub eax, 2
je 0x180023aa8
cmp eax, 1
jne 0x180023ac2
lea rax, [rsp + 0x40]
mov qword [rsp + 0xa0], rax
jmp 0x180023ac2
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [rsp + 0x40]
jmp 0x180023ac2
mov dword [0x180129400], ecx
dec ebp
cmp ebp, 0x9b
ja 0x180023a86
jmp 0x180023d5b
mov eax, 0xaa
mov dword [rsp + 0x40], eax
nop word [rax + rax]
sub eax, 0xaa
je 0x180023ccc
sub eax, 0x11
je 0x180023cb1
sub eax, 0x11
je 0x180023b0f
cmp eax, 0x11
jne 0x180023cd3
mov r13, qword [r13 + 0x48]
dec dword [rsp + 0x60]
jmp 0x180023cd3
mov r14, qword [rsp + 0x98]
test r14, r14
je 0x180023cd3
mov eax, dword [rbp + 0x10]
or eax, dword [r14 + 0x10]
test al, 0x20
je 0x180023ba0
mov edx, 0xcf
mov eax, edx
sub eax, 0xcd
je 0x180023b63
sub eax, 1
je 0x180023b58
cmp eax, 1
jne 0x180023b91
mov eax, dword [r14 + 0x10]
btr eax, 0xa
mov dword [rsp + 0x84], eax
jmp 0x180023b91
mov r12d, dword [rbp + 0x10]
btr r12d, 0xa
jmp 0x180023b91
cmp dword [rsp + 0x84], r12d
jne 0x180023b91
mov ecx, 0x63
mov eax, ecx
sub eax, 0x62
je 0x180023d99
cmp eax, 1
jne 0x180023b8a
test r15, r15
je 0x180023b8a
mov qword [r15], r13
dec ecx
cmp ecx, 0x61
ja 0x180023b72
dec edx
cmp edx, 0xcc
ja 0x180023b34
jmp 0x180023cd3
mov ebp, SHRegGetIntW
nop word [rax + rax]
mov eax, ebp
sub eax, 0x114
je 0x180023c56
sub eax, 1
je 0x180023bfc
cmp eax, 1
jne 0x180023c9c
mov r8, r14
lea rcx, [rsp + 0xb0]
mov edx, 0xa5
call fcn.18003c020
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x100]
mov edx, 0xa5
call fcn.18003c020
jmp 0x180023c97
mov eax, dword [r8]
lea r9, [rsp + 0x88]
mov dword [rsp + 0x88], eax
lea r8, [rsp + 0x100]
lea rax, [rsp + 0xb0]
mov dword [rsp + 0x90], edi
mov edx, 0x4f
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x90]
call fcn.1800446f0
xor edx, edx
lea rcx, [rsp + 0xb0]
mov r8d, 0xc2
mov rsi, rax
call fcn.1800436b0
jmp 0x180023c97
xor edx, edx
lea rcx, [rsp + 0x100]
mov r8d, 0xc2
call fcn.1800436b0
test esi, esi
jne 0x180023c97
mov ecx, 0x29
mov eax, ecx
sub eax, 0x29
je 0x180023c86
cmp eax, 1
je 0x180023a0f
jmp 0x180023c90
test r15, r15
je 0x180023c8e
mov qword [r15], r13
mov ebx, edi
inc ecx
cmp ecx, 0x2b
jb 0x180023c74
mov r8, qword [rsp + 0x38]
dec ebp
cmp ebp, 0x113
ja 0x180023bb0
mov rbp, qword [rsp + 0x68]
jmp 0x180023cd3
xor r9d, r9d
mov rdx, r13
xor ecx, ecx
lea r8d, [r9 + 0x5c]
call fcn.1800f4320
mov qword [rsp + 0x98], rax
jmp 0x180023cd3
cmp dword [rsp + 0x60], 1
jb 0x180023cf3
mov eax, dword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
add eax, 0x11
mov dword [rsp + 0x40], eax
cmp eax, 0xee
jb 0x180023ae0
jmp 0x180023ad1
mov r14d, 0x1d20a
jmp 0x180023d65
cmp r14d, 0x1ef51
je 0x180023d36
cmp r14d, 0x26af5
je 0x180023d20
cmp r14d, 0x26d12
jne 0x180023d74
mov eax, 0xfffffffa
jmp 0x180023a11
mov r9, qword [rsp + 0x70]
xor r8d, r8d
xor edx, edx
mov ecx, 0xa0
call fcn.180073df0
jmp 0x180023d60
mov ebp, 0x10
nop dword [rax + rax]
mov rcx, qword [rsp + 0x70]
xor r9d, r9d
xor edx, edx
mov r8d, 0xae
call fcn.1800e6ec0
sub rbp, 1
jne 0x180023d40
mov rbp, qword [rsp + 0x68]
mov r8, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x50]
nop word [rax + rax]
mov ecx, dword [rsp + 0x30]
imul eax, dword [rsp + 0x48], 0xa4
add r14d, eax
cmp r14d, ecx
ja 0x180023a0f
jmp 0x180023884
mov eax, dword [rsp + 0x58]
jmp 0x180023a11
mov eax, edi
jmp 0x180023a11