Function at 0x18003e4c0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
lea r14d, [rcx + 0x931]
mov r12, r9
mov rdi, r8
mov rsi, rdx
mov ebx, ecx
cmp ecx, r14d
jae case.0x18003e543.9
mov rbp, qword [rsp + 0xf0]
xor r13d, r13d
mov r15, qword [rsp + 0x40]
lea rdx, [0x180000000]
cmp ebx, 0xea
ja 0x18003e6aa
je 0x18003e633
lea eax, [rbx - 5]
cmp eax, 0xcc
ja case.0x18003e543.11
movzx eax, byte [rdx + rax + 0x3e830]
mov ecx, dword [rdx + rax*4 + 0x3e814]
add rcx, rdx
jmp rcx
cmp dword [rsi], 2
mov rax, qword [rdi + 0x58]
mov r15, qword [rax + 0x10]
jne 0x18003e751
mov qword [rsp + 0x28], rdi
lea r8, [rsp + 0xd0]
mov r9d, 0x120
mov qword [rsp + 0x20], rsi
lea rdx, [rsp + 0x48]
mov byte [rsp + 0x30], r13b
lea rcx, [rsp + 0x30]
mov byte [rsp + 0xd0], 1
call fcn.18003b440
mov rax, qword [rsp + 0x58]
lea rdx, [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov r9d, 0xf0
xor ecx, ecx
mov qword [rsp + 0x40], rax
call fcn.1800428d0
mov dword [r15 + 4], eax
jmp case.0x18003e543.11
xor r9d, r9d
mov r8, rdi
xor edx, edx
mov ecx, 0xf0
call fcn.1800497b0
mov byte [rsp + 0x38], al
jmp case.0x18003e543.11
cmp dword [rsi], 1
je 0x18003e7ae
xorps xmm0, xmm0
xor eax, eax
mov qword [rsp + 0x90], rax
movups xmmword [rsp + 0x48], xmm0
movups xmmword [rsp + 0x58], xmm0
movsd xmm0, qword [rsp + 0x90]
movsd qword [rsp + 0x68], xmm0
jmp case.0x18003e543.11
inc qword [rdi + 0xd0]
mov rax, qword [rdi + 0xc0]
test rax, rax
je 0x18003e61e
mov rdx, rsi
mov rcx, rdi
call rax
mov dword [rdi + 0x88], r13d
mov rax, qword [r12]
mov qword [rsp + 0x38], rax
jmp case.0x18003e543.11
mov eax, dword [rsi]
cmp eax, 0xa
jne 0x18003e669
mov r9d, SHSetFolderPathW
mov r8, rbp
mov rdx, rsi
mov rcx, rdi
call fcn.180059e00
mov ecx, 2
lea rax, [0x180066d50]
mov dword [rbp + 0x30], ecx
mov qword [rdi + 0x98], rax
jmp case.0x18003e543.11
xor ecx, ecx
mov qword [rsp + 0x28], r13
mov r9, rdi
cmp eax, 8
jne 0x18003e782
mov r8, rbp
mov dword [rsp + 0x20], 0x55
mov rdx, rsi
call fcn.18000d130
mov ecx, 1
lea rax, [0x180066d30]
mov dword [rbp + 0x30], ecx
mov qword [rdi + 0x98], rax
jmp case.0x18003e543.11
cmp ebx, 0x19f
ja 0x18003e729
je 0x18003e7ae
mov eax, ebx
sub eax, 0xf4
je case.0x18003e543.7
sub eax, 0x32
je case.0x18003e543.9
cmp eax, 0x60
jne case.0x18003e543.11
mov eax, dword [r15 + 4]
cmp eax, 0xd9
ja 0x18003e704
je 0x18003e79b
sub eax, 0x18
je 0x18003e79b
sub eax, 0x70
je 0x18003e79b
sub eax, 0xa
je 0x18003e79b
cmp eax, 1
jmp 0x18003e720
sub eax, 0xdc
je 0x18003e79b
sub eax, 0x4a
je 0x18003e79b
sub eax, 0x49
je 0x18003e79b
cmp eax, 9
je 0x18003e79b
mov ebx, 0x186
jmp case.0x18003e543.11
cmp ebx, 0x1a9
je case.0x18003e543.9
cmp ebx, 0x23b
je 0x18003e7b5
add ebx, 0xb5
cmp ebx, r14d
jae case.0x18003e543.9
jmp 0x18003e50a
xor r9d, r9d
mov r8, rdi
xor edx, edx
mov ecx, 0xf0
call fcn.1800497b0
jmp 0x18003e7e8
movzx eax, byte [rdi]
mov ecx, eax
cmp al, 0x7f
jbe 0x18003e778
mov ecx, dword [rdx + rax*4 + 0x82aa0]
mov dword [rsi + 0xc], ecx
mov dword [rsp + 0x38], r13d
jmp case.0x18003e543.9
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov edx, 0x115
call fcn.18005d6b0
mov byte [rsp + 0x38], r13b
jmp case.0x18003e543.9
xor r9d, r9d
mov rdx, rdi
xor ecx, ecx
lea r8d, [r9 + 0x11]
call fcn.180011f80
jmp 0x18003e7c7
mov byte [rsp + 0x38], 1
jmp case.0x18003e543.9
xor r9d, r9d
mov r8, rdi
xor edx, edx
mov ecx, 0xf0
call fcn.1800497b0
mov r9d, 0x8d
mov byte [rsp + 0xd0], al
lea r8, [rsp + 0x48]
xor ecx, ecx
lea rdx, [rsp + 0xd0]
call fcn.180039d90
mov byte [rsp + 0x38], al
mov rax, qword [rsp + 0x38]
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret