Function at 0x18002acf0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x100
mov rax, qword [0x1800bf580]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov r10, r9
mov qword [rbp - 0x79], r9
mov dword [rbp - 0x39], r8d
mov r11, rdx
mov qword [rbp - 0x51], rdx
mov r9, rcx
mov qword [rbp - 0x59], rcx
mov r15, qword [rbp + 0x7f]
mov qword [rbp - 0x31], r15
xor r14d, r14d
mov qword [rbp - 1], r14
mov eax, 0xf
mov qword [rbp + 7], rax
mov byte [rbp - 0x11], r14b
lea edx, [r8 + 0x12]
mov dword [rsp + 0x44], edx
mov ebx, dword [rbp - 0x7d]
cmp r8d, edx
jae 0x18002b55f
lea r8, [0x180000000]
mov esi, dword [rbp - 0x35]
mov edi, dword [rbp - 0x35]
movzx edx, byte [rbp - 0x7f]
mov byte [rsp + 0x40], dl
mov r12, qword [rbp - 0x21]
mov r13, qword [rbp - 0x21]
mov eax, dword [rbp - 0x39]
mov ecx, dword [rsp + 0x44]
nop word [rax + rax]
add eax, 0xffffff02
cmp eax, 0x36
ja case.default.0x18002adb2
movzx eax, byte [r8 + rax + 0x2b6c8]
mov ecx, dword [r8 + rax*4 + 0x2b67c]
add rcx, r8
jmp rcx
mov dword [rbp - 0x69], 5
mov dword [rbp - 0x49], 0x70
mov r9d, 0xa1
mov r8, r10
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x69]
call fcn.180024490
jmp 0x18002b52f
test esi, esi
je 0x18002b5bc
mov rax, qword [r15]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x58]
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 7]
call fcn.180076730
mov rdi, rax
jmp 0x18002b52f
mov rax, qword [r15]
mov qword [rsp + 0x58], rax
xor edx, edx
mov r8d, 0x126
lea rcx, [rsp + 0x58]
call fcn.18008b250
mov dword [rbp - 0x71], eax
jmp 0x18002b52f
test edi, edi
je 0x18002b5bc
mov rax, qword [r15]
mov qword [rsp + 0x58], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0xe3
lea rcx, [rsp + 0x58]
call fcn.180018050
movzx eax, al
mov dword [rbp - 0x29], eax
test eax, eax
je 0x18002b5bc
jmp 0x18002b52f
movzx eax, word [r11 + 8]
mov word [rsp + 0x60], ax
movzx edx, byte [r11 + 0xa]
mov byte [rsp + 0x40], dl
movzx ecx, byte [rbp + 0xf]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0xf], al
movzx ecx, byte [rbp + 0x10]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0x10], al
movzx ecx, byte [rbp + 0x11]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0x11], al
movzx ecx, byte [rbp + 0x12]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0x12], al
movzx ecx, byte [rbp + 0x13]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0x13], al
movzx ecx, byte [rbp + 0x14]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0x14], al
movzx ecx, byte [rbp + 0x15]
mov eax, ecx
cmp cl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
mov byte [rbp + 0x15], al
cmp byte [rbp + 0x16], 0x20
jge case.0x18002adb2.272
mov byte [rbp + 0x16], cl
jmp case.0x18002adb2.272
mov qword [rsp + 0x20], r14
mov r9, r10
xor r8d, r8d
mov edx, 0xb0
mov rcx, qword [r15 + 0x18]
call fcn.1800531f0
mov r9, qword [r15 + 0x20]
xor r8d, r8d
mov rdx, qword [rbp - 0x79]
lea ecx, [r8 + 0x25]
call fcn.180049fa0
jmp 0x18002b52f
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov rdx, r13
mov ecx, 0xe8
call fcn.18000e8e0
jmp 0x18002b52f
mov dword [rbp - 0x35], 1
mov rax, qword [r15]
mov qword [rsp + 0x58], rax
lea r8, [rsp + 0x58]
mov edx, 0x35
xor ecx, ecx
call fcn.180012ab0
mov rsi, rax
jmp 0x18002b52f
inc dword [r9]
jmp case.0x18002adb2.272
test r15, r15
jne case.0x18002adb2.272
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0xcc
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r10
call fcn.1800763b0
mov r14d, ebx
mov rax, qword [rbp + 7]
jmp 0x18002b562
movzx eax, byte [rsp + 0x60]
mov ecx, eax
cmp al, 0x20
mov eax, 0x3f
cmovl ecx, eax
mov byte [rsp + 0x60], cl
movzx eax, byte [rbp - 0x80]
mov ecx, eax
cmp al, 0x20
mov eax, 0x3f
cmovl ecx, eax
mov byte [rbp - 0x80], cl
movzx eax, dl
cmp dl, 0x20
mov ecx, 0x3f
cmovl eax, ecx
movzx edx, al
mov byte [rsp + 0x40], al
mov byte [rbp - 0x7f], al
movsxd rax, dword [r9]
cmp dword [r10 + rax*4], 0xf2
jge case.0x18002adb2.272
lea rcx, [r15 - 1]
nop
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x18002b020
movzx eax, word [0x1800987d0]
mov word [rcx], ax
movsxd rax, dword [r9]
mov ecx, dword [r10 + rax*4]
inc ecx
movsxd rcx, ecx
add rcx, r15
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0xf]
mov edx, 0x128
call fcn.180009170
movzx edx, byte [rbp - 0x7f]
mov byte [rsp + 0x40], dl
jmp 0x18002b534
mov qword [rbp - 0x19], 0x200
lea rdx, [rbp - 0x19]
mov ecx, 0x73
call fcn.18000a480
mov r13, rax
test rax, rax
je 0x18002b5af
mov dword [rbp - 0x69], 1
cmp dword [rbp - 0x29], 1
jbe 0x18002b52f
mov eax, dword [rbp - 0x71]
lea ecx, [rax - 1]
add ecx, edi
mov dword [rbp - 0x49], ecx
jmp 0x18002b0b3
mov eax, dword [rbp - 0x71]
mov r15d, edi
cmp edi, ecx
jae 0x18002b208
nop
mov rcx, qword [rbp - 0x79]
mov r14, qword [rbp - 0x31]
cmp dword [rcx], 0
jne 0x18002b0fe
mov dword [rsp + 0x50], eax
mov dword [rbp - 0x61], r15d
mov rax, qword [r14]
mov qword [rsp + 0x58], rax
lea r9, [rbp - 0x61]
mov r8d, 0x14
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x50]
call fcn.180053d70
test eax, eax
je 0x18002b1f6
mov dword [rbp - 0x61], r15d
mov dword [rsp + 0x50], 1
mov rax, qword [r14]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x20], 0x2b
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
mov rdx, r12
lea rcx, [rbp - 0x61]
call fcn.18002e750
cmp eax, 0xffffffff
je 0x18002b1ab
mov dword [rsp + 0x58], 0x2001
mov eax, dword [rbp - 0x69]
imul eax, dword [rbp - 0x71]
add eax, r15d
mov dword [rbp - 0x61], eax
mov dword [rsp + 0x50], 1
mov rax, qword [r14]
mov qword [rbp - 0x41], rax
mov dword [rsp + 0x28], 0x38
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x50]
lea r8, [rbp - 0x61]
lea rdx, [rbp - 0x41]
lea rcx, [rsp + 0x58]
call fcn.180008430
cmp eax, 0xffffffff
jne 0x18002b1f6
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov rdx, r13
mov ecx, 0xe8
call fcn.18000e8e0
xor r14d, r14d
mov ebx, r14d
mov rax, qword [rbp + 7]
jmp 0x18002b562
mov r14d, 0xcf
mov eax, r14d
sub eax, 0xcd
je 0x18002b5bf
sub eax, 1
je 0x18002b1e5
cmp eax, 1
jne 0x18002b1ea
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov rdx, r13
mov ecx, 0xe8
call fcn.18000e8e0
jmp 0x18002b1ea
xor ebx, ebx
mov dword [rbp - 0x7d], ebx
dec r14d
cmp r14d, 0xcc
ja 0x18002b1b1
inc r15d
mov ecx, dword [rbp - 0x49]
cmp r15d, ecx
mov eax, dword [rbp - 0x71]
jb 0x18002b0c0
mov rdx, qword [rbp - 0x79]
mov r14, qword [rbp - 0x31]
cmp dword [rdx], 0
jne 0x18002b249
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], r15d
mov rax, qword [r14]
mov qword [rbp - 0x41], rax
lea r9, [rsp + 0x58]
mov r8d, 0x14
lea rdx, [rbp - 0x41]
lea rcx, [rsp + 0x50]
call fcn.180053d70
test eax, eax
je 0x18002b445
mov ecx, dword [rbp - 0x49]
mov dword [rsp + 0x50], ecx
mov dword [rsp + 0x58], 1
mov rax, qword [r14]
mov qword [rbp - 0x41], rax
mov dword [rsp + 0x20], 0x2b
lea r9, [rbp - 0x41]
lea r8, [rsp + 0x58]
mov rdx, r12
lea rcx, [rsp + 0x50]
call fcn.18002e750
cmp eax, 0xffffffff
je 0x18002b3fa
mov r15d, 0xdc
nop dword [rax]
mov eax, r15d
sub eax, 0xdb
je 0x18002b340
cmp eax, 1
jne 0x18002b3e4
mov eax, dword [rbp - 0x69]
inc eax
imul eax, dword [rbp - 0x71]
dec eax
add eax, edi
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], 1
mov rax, qword [r14]
mov qword [rbp - 0x41], rax
mov dword [rsp + 0x20], 0x2b
lea r9, [rbp - 0x41]
lea r8, [rsp + 0x58]
mov rdx, r13
lea rcx, [rsp + 0x50]
call fcn.18002e750
cmp eax, 0xffffffff
jne 0x18002b331
mov r14d, 0x11b
mov eax, r14d
sub eax, 0x11b
je 0x18002b305
cmp eax, 0x34
je 0x18002b5bf
jmp 0x18002b324
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov rdx, r13
mov ecx, 0xe8
call fcn.18000e8e0
xor ebx, ebx
mov dword [rbp - 0x7d], ebx
add r14d, 0x34
cmp r14d, 0x183
jb 0x18002b2f0
mov eax, esi
and eax, 0x1ff
mov dword [rbp - 0x25], eax
jmp 0x18002b3e4
mov r8d, dword [rbp - 0x25]
mov rdx, r12
mov rcx, r13
call sub.VCRUNTIME140.dll_memcpy
mov dword [rbp - 0x61], 0x2001
mov eax, dword [rbp - 0x69]
inc eax
imul eax, dword [rbp - 0x71]
dec eax
add eax, edi
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], 1
mov rax, qword [r14]
mov qword [rbp - 0x41], rax
mov dword [rsp + 0x28], 0x38
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rbp - 0x41]
lea rcx, [rbp - 0x61]
call fcn.180008430
cmp eax, 0xffffffff
jne 0x18002b3e4
mov r14d, 0x41
nop word [rax + rax]
mov eax, r14d
sub eax, 0x40
je 0x18002b5a4
cmp eax, 1
jne 0x18002b3db
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov rdx, r13
mov ecx, 0xe8
call fcn.18000e8e0
dec r14d
cmp r14d, 0x3f
ja 0x18002b3b0
dec r15d
cmp r15d, 0xda
mov r14, qword [rbp - 0x31]
ja 0x18002b290
jmp 0x18002b445
mov r14d, 0x64
cmp r14d, 0x64
je 0x18002b41b
cmp r14d, 0x2454
jne 0x18002b435
xor r14d, r14d
mov rax, qword [rbp + 7]
jmp 0x18002b562
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov rdx, r13
mov ecx, 0xe8
call fcn.18000e8e0
add r14d, 0x23f0
cmp r14d, 0x47e0
jbe 0x18002b400
mov ecx, dword [rbp - 0x69]
inc ecx
mov dword [rbp - 0x69], ecx
cmp ecx, dword [rbp - 0x29]
mov ecx, dword [rbp - 0x49]
jb 0x18002b0b0
xor r14d, r14d
mov r15, qword [rbp - 0x31]
jmp 0x18002b52f
mov qword [rbp - 0x21], 0x200
lea rdx, [rbp - 0x21]
mov ecx, 0x73
call fcn.18000a480
mov r12, rax
test rax, rax
je 0x18002b641
jmp 0x18002b52f
cmp dword [rbp - 0x71], 0
je 0x18002b641
jmp case.0x18002adb2.272
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r15 + rcx], 0
jne 0x18002b4a2
movsxd rax, dword [r9]
mov dword [r10 + rax*4], ecx
mov rax, qword [r11]
mov qword [rbp + 0xf], rax
jmp case.0x18002adb2.272
mov r9, qword [r15]
xor r8d, r8d
mov rdx, r10
lea ecx, [r8 + 0x25]
call fcn.180049fa0
mov dword [rsp + 0x58], 1
mov byte [rsp + 0x48], 0x60
mov rax, qword [rbp - 0x79]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x48]
mov r8d, 0xc1
lea rdx, [rsp + 0x58]
mov rcx, qword [r15 + 8]
call fcn.18007c260
mov dword [rsp + 0x58], 1
mov byte [rsp + 0x48], 0x50
mov rax, qword [rbp - 0x79]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x48]
mov r8d, 0xc1
lea rdx, [rsp + 0x58]
mov rcx, qword [r15 + 0x10]
call fcn.18007c260
movzx edx, byte [rsp + 0x40]
mov r10, qword [rbp - 0x79]
lea r8, [0x180000000]
mov r11, qword [rbp - 0x51]
mov r9, qword [rbp - 0x59]
mov ecx, dword [rsp + 0x44]
mov eax, dword [rbp - 0x39]
inc eax
mov dword [rbp - 0x39], eax
cmp eax, ecx
jb 0x18002ad90
mov rax, qword [rbp + 7]
mov r14d, ebx
cmp rax, 0x10
jb 0x18002b64f
lea rdx, [rax + 1]
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002b64a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002b64a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
xor ebx, ebx
mov r14d, ebx
mov rax, qword [rbp + 7]
jmp 0x18002b562
mov rdx, r12
mov ecx, 0xe8
call fcn.18000e8e0
mov ebx, r14d
mov r14d, ebx
mov rax, qword [rbp + 7]
jmp 0x18002b562
mov r14d, dword [rbp - 0x35]
mov rax, qword [rbp + 7]
jmp 0x18002b562
xor r9d, r9d
mov r8, r15
lea rdx, [rbp - 0x11]
mov ecx, 0xd1
call fcn.18004fc40
test al, al
jne 0x18002b608
mov byte [rbp - 0x7d], al
mov r14d, dword [rbp - 0x7d]
mov rax, qword [rbp + 7]
jmp 0x18002b562
mov rbx, qword [rbp - 0x79]
mov r9, rbx
xor edx, edx
lea r8d, [rdx + 0x1f]
lea rcx, [rbp - 0x11]
call fcn.180087cd0
test al, al
jne 0x18002b632
mov byte [rbp - 0x7d], al
mov r14d, dword [rbp - 0x7d]
mov rax, qword [rbp + 7]
jmp 0x18002b562
mov rax, qword [rbx + 8]
cmp qword [rbx], rax
setne byte [rbp - 0x7d]
mov r14d, dword [rbp - 0x7d]
mov rax, qword [rbp + 7]
jmp 0x18002b562
call fcn.180093104
mov eax, r14d
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1800938b0
mov rbx, qword [rsp + 0x150]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret