Function at 0x180058ba0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1800791a8]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov r15, qword [rsp + 0x68]
lea eax, [rcx - 0x10]
mov rbx, qword [rsp + 0x68]
xor r11d, r11d
mov rsi, r8
mov r12, r9
lea r8, [0x180000000]
mov r13d, ecx
mov r14d, ecx
lea edx, [r11 + 0x70]
cmp ecx, eax
jbe 0x18005901c
mov edi, dword [rsp + 0x60]
nop dword [rax]
lea eax, [r14 - 0x48]
cmp eax, 0x48
ja case.0x180058c21.88
movzx eax, byte [r8 + rax + 0x595d4]
mov ecx, dword [r8 + rax*4 + 0x59590]
add rcx, r8
jmp rcx
movzx eax, word [0x1800713c6]
mov word [rbp - 0x37], ax
movzx eax, byte [0x1800713c8]
mov byte [rbp - 0x35], al
mov byte [rbp - 0x34], 0
jmp case.0x180058c21.88
mov edi, r11d
jmp case.0x180058c21.88
mov eax, dword [0x1800713e0]
lea rdx, [0x1800713fc]
mov dword [rbp - 0x70], eax
lea rcx, [rbp - 0x70]
movzx eax, byte [0x1800713e4]
mov r8d, 1
mov byte [rbp - 0x6c], al
mov byte [rbp - 0x32], 0
mov byte [rbp - 0x6b], 0
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
jmp 0x180058f7d
cmp qword [0x1800792b8], 0
je 0x180058cc0
mov rax, qword [rsi + 0x20]
xor edx, edx
mov r9, qword [rsi + 0x38]
xor ecx, ecx
mov qword [rsp + 0x30], rax
mov r8d, 0x82
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r11
call fcn.18005b990
mov qword [0x1800792c0], rax
test rax, rax
jne 0x180058f7d
mov byte [rsp + 0x60], 0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.180068d70
mov rbx, qword [rsp + 0x170]
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x68], rsi
jmp case.0x180058c21.88
lea r8, [rsp + 0x60]
mov qword [rsp + 0x60], 1
mov edx, 0xcf
lea rcx, [rsp + 0x70]
call fcn.180050830
lea rax, [rsp + 0x70]
xor r9d, r9d
mov qword [rsp + 0x30], rax
lea rcx, [rsi + 0x10]
xor eax, eax
xor r8d, r8d
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
lea edx, [rax + 0x67]
call fcn.1800305c0
lea r9, [rsp + 0x70]
xor edx, edx
xor ecx, ecx
mov r8d, 0xa5
call fcn.1800551d0
jmp 0x180058f7d
movzx eax, word [0x18007145a]
lea rdx, [0x1800714a4]
mov word [rbp - 0x40], ax
lea rcx, [rbp - 0x40]
movzx eax, byte [0x18007145c]
mov r8d, 4
mov byte [rbp - 0x3e], al
mov byte [rbp - 0x3d], 0
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r8d, 2
lea rdx, [0x180071503]
lea rcx, [rbp - 0x39]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
jmp 0x180058f7d
mov qword [rsp + 0x40], r11
xor r9d, r9d
mov qword [rsp + 0x38], r11
xor r8d, r8d
mov qword [rsp + 0x30], r11
xor edx, edx
mov dword [rsp + 0x28], 0x98
mov rcx, rsi
mov qword [rsp + 0x20], r11
call fcn.18001fe60
test al, al
je 0x180058cc0
jmp 0x180058f7d
test rsi, rsi
je 0x180058fa0
mov rbx, qword [rsi + 0x28]
mov r15, r11
jmp case.0x180058c21.88
test r15, r15
jne 0x180058e01
mov qword [rsi + 0x28], rbx
jmp case.0x180058c21.88
test edi, edi
jne 0x180058e0d
mov qword [r15], rbx
jmp case.0x180058c21.88
mov qword [r15 + 8], rbx
jmp case.0x180058c21.88
mov r8d, 2
lea rdx, [0x180071513]
lea rcx, [rbp - 0x34]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
jmp 0x180058f7d
mov eax, dword [0x180071564]
mov dword [rbp - 0x6a], eax
movzx eax, byte [0x180071568]
mov byte [rbp - 0x66], al
mov byte [rbp - 0x65], 0
jmp case.0x180058c21.88
xor r8d, r8d
mov r9, rsi
mov rdx, r12
lea ecx, [r8 + 0x6f]
call fcn.1800186f0
mov rbx, rax
jmp 0x180058f7d
mov rax, qword [rsi + 0x20]
xor edx, edx
mov r9, qword [rsi + 0x28]
xor ecx, ecx
mov qword [rsp + 0x30], rax
mov r8d, 0x82
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r11
call fcn.18005b990
mov qword [0x1800792b0], rax
test rax, rax
je 0x180058cc0
mov rax, qword [rsi + 0x20]
xor edx, edx
mov r9, qword [rsi + 0x30]
xor ecx, ecx
mov qword [rsp + 0x30], rax
mov r8d, 0x82
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.18005b990
mov qword [0x1800792b8], rax
jmp 0x180058f7d
test rbx, rbx
je case.0x180058c21.88
nop dword [rax + rax]
mov eax, edx
mov ecx, eax
sub ecx, 0x6f
je 0x180058f63
cmp ecx, 1
jne 0x180058f69
mov r8, qword [rsi + 0x18]
mov rcx, r12
mov rdx, qword [rbx + 0x20]
mov r15, rbx
call qword [rsi + 0x10]
cmp eax, 0xffffffff
je 0x180058f51
test eax, eax
je 0x180058f20
cmp eax, 1
jne 0x180058fad
mov rbx, qword [rbx + 8]
mov edx, 0x70
mov edi, eax
mov eax, edx
jmp 0x180058f69
mov edi, dword [rsi + 0x20]
test dil, 2
jne 0x180058fba
and edi, 1
je 0x180058f41
mov rbx, qword [rbx]
mov edx, 0x70
mov eax, edx
xor edi, 1
jmp 0x180058f69
mov rbx, qword [rbx + 8]
mov edx, 0x70
mov eax, edx
xor edi, 1
jmp 0x180058f69
mov rbx, qword [rbx]
xor r11d, r11d
mov edi, r11d
mov edx, 0x70
mov eax, edx
jmp 0x180058f69
mov r14d, 0x7d
dec eax
cmp eax, 0x6e
ja 0x180058ee2
test rbx, rbx
jne 0x180058ee0
lea r8, [0x180000000]
dec r14d
lea eax, [r13 - 0x10]
xor r11d, r11d
cmp r14d, eax
jbe 0x18005901c
lea edx, [r11 + 0x70]
jmp 0x180058c00
mov dword [rsp + 0x60], 1
jmp case.0x18005908c.141
mov dword [rsp + 0x60], 0xf
jmp case.0x18005908c.141
test r12, r12
je 0x180058fcf
mov r8, qword [rsi + 8]
mov rdx, r12
mov rcx, qword [rbx + 0x20]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsp + 0x60], 0
jmp case.0x18005908c.141
mov rbx, qword [rsp + 0x68]
lea r9, [rsp + 0x60]
xor r8d, r8d
mov dword [rsp + 0x60], 0x10000
xor edx, edx
mov ecx, 0x10b
mov rax, qword [rbx + 0x60018]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
call fcn.180043440
cdqe
add rax, qword [rbx + 0x60018]
jmp 0x180058cca
mov eax, 0x65
lea r14d, [r13 + 0x1f0]
mov edi, r13d
lea ecx, [rax + 7]
cmp r13d, r14d
jae 0x1800590b5
lea edx, [rax - 0x37]
mov r9d, 0x7461
lea ecx, [rax - 0x11]
mov eax, 0x706c
lea r8d, [rdx + 0x40]
lea r10d, [rdx + 0x15]
cmp edi, 0x163
ja 0x18005926b
je 0x180059247
lea eax, [rdi - 0x4c]
cmp eax, 0xf8
ja case.default.0x18005908c
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax + 0x59658]
mov ecx, dword [rcx + rax*4 + 0x59620]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
inc qword [rsi]
mov dword [rsp + 0x60], r11d
mov ecx, 0x54
mov eax, 0x706c
add edi, 0x1f
mov r11d, 0
cmp edi, r14d
jb 0x180059050
lea eax, [r11 + 0x65]
lea ecx, [rax + 7]
lea ebx, [r13 + 0x880]
cmp r13d, ebx
jae case.0x18005908c.141
mov r14, qword [rsp + 0x68]
mov edx, 0x6b
mov r15, qword [rsp + 0x68]
mov r8d, 0x746f
mov rdi, qword [rsp + 0x68]
mov r11d, 0x5364
lea r9d, [rdx - 0x38]
lea r10d, [r8 - 0xa]
nop dword [rax]
cmp r13d, 0x44c
ja 0x180059350
je 0x180059342
cmp r13d, 0x24c
ja 0x1800592e1
je 0x1800592c9
cmp r13d, 0x4c
je 0x1800592ad
cmp r13d, 0xcc
je 0x1800592a3
cmp r13d, 0x14c
je 0x180059296
cmp r13d, 0x1cc
jne 0x180059575
mov dword [rbp - 0x1e], 0x720065
mov dword [rbp - 0x1a], 0x65006e
mov word [rbp - 0x16], cx
jmp 0x180059575
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800792c8], rax
mov byte [rsp + 0x60], 1
jmp case.0x18005908c.77
mov byte [rbp - 0x63], 0
jmp case.0x18005908c.77
mov eax, 0x65
mov word [rbp - 0x5e], ax
mov dword [rbp - 0x5d], 0x657461
jmp case.0x18005908c.77
mov eax, 0x64
mov word [rbp + 0x12], ax
jmp case.0x18005908c.77
mov dword [rbp + 8], 0x6c0065
mov dword [rbp + 0xc], 0x320033
mov word [rbp + 0x10], dx
jmp case.0x18005908c.77
mov dword [rbp + 4], 0x6e0072
jmp case.0x18005908c.77
mov byte [rbp - 0x63], 0x74
jmp case.0x18005908c.77
mov r8d, 2
lea rdx, [0x1800715b5]
lea rcx, [rbp - 0x65]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov edx, 0x2e
mov r9d, 0x7461
lea r8d, [rdx + 0x40]
lea r10d, [rdx + 0x15]
jmp case.0x18005908c.77
mov eax, 0x72
mov word [rbp - 0x60], r10w
mov word [rbp - 0x5f], ax
mov dword [rbp + 0x14], 0x6c006c
mov word [rbp + 0x18], r11w
jmp case.0x18005908c.77
mov r9d, 0x7e
mov qword [rbx + 0x10], r15
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.18005b3c0
jmp 0x1800591e5
mov word [rbp - 0x62], 0x57
mov dword [rbp], 0x65006b
jmp case.0x18005908c.77
mov r11d, 0x6f
mov word [rbp - 0x5a], cx
mov word [rbp - 0x59], r11w
mov word [rbp - 0x58], r11w
mov r11d, 0x6c
mov word [rbp - 0x57], r11w
jmp 0x1800590a0
cmp edi, 0x182
jne 0x1800590a0
mov r11d, 0x68
mov word [rbp - 0x56], r11w
mov r11d, 0x65
mov word [rbp - 0x55], r11w
mov word [rbp - 0x54], ax
jmp 0x1800590a0
mov byte [rbp - 0x48], 0
mov word [rbp - 0x20], dx
jmp 0x180059575
mov word [rbp - 0x4a], r8w
jmp 0x180059575
mov eax, 0x61
mov dword [rbp - 0x52], 0x6e533233
mov word [rbp - 0x4e], ax
mov dword [rbp - 0x4d], 0x687370
jmp 0x180059575
mov word [rbp - 0x14], r9w
mov dword [rbp - 0x12], 0x2e0032
mov dword [rbp - 0xe], 0x6c0064
jmp 0x180059575
cmp r13d, 0x2cc
je 0x180059339
cmp r13d, 0x34c
je 0x180059315
cmp r13d, 0x3cc
jne 0x180059575
mov eax, 0x5c3a
mov dword [rbp - 0x2b], 0x646e61
mov word [rbp - 0x28], ax
jmp 0x180059575
xor eax, eax
mov dword [rbp - 0x30], 0x457350
mov word [rbp - 8], ax
mov eax, 0x78
mov word [rbp - 0x2d], ax
mov eax, 0x70
mov word [rbp - 0x2c], ax
jmp 0x180059575
mov word [rbp - 0xa], cx
jmp 0x180059575
mov word [rbp - 0x26], ax
mov word [rbp - 0x25], r11w
jmp 0x180059575
cmp r13d, 0x6cc
ja 0x180059529
je 0x180059507
cmp r13d, 0x4cc
je 0x1800594fc
cmp r13d, 0x54c
je 0x180059426
cmp r13d, 0x5cc
je 0x1800593ce
cmp r13d, 0x64c
jne 0x180059575
cmp byte [rsi + 0x284], 0
lea rdx, [rsi + 0x28]
mov rcx, qword [rsi + 0x260]
je 0x1800593be
mov byte [rsi + 0x284], 0
call r15
test eax, eax
je 0x180058cc0
jmp 0x18005955b
call r14
test eax, eax
je 0x180058cc0
jmp 0x18005955b
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x40], rax
mov r8, r12
mov qword [rsp + 0x38], rax
xor edx, edx
mov qword [rsp + 0x30], rax
mov ecx, 0x82
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.18001c990
cmp qword [rsi + 0x260], 0xffffffffffffffff
jne 0x18005955b
xor edx, edx
lea ecx, [rdx + 2]
call rdi
mov qword [rsi + 0x260], rax
cmp rax, 0xffffffffffffffff
je 0x180058cc0
jmp 0x18005955b
xor edi, edi
lea rax, str.kernel32.dll
mov qword [rsp + 0x58], rdi
xor r9d, r9d
mov qword [rsp + 0x50], rdi
xor r8d, r8d
mov qword [rsp + 0x48], rdi
xor edx, edx
mov qword [rsp + 0x40], rdi
xor ecx, ecx
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x31
mov qword [rsp + 0x20], rax
call fcn.180006e90
mov qword [rsp + 0x58], rdi
mov r14, rax
mov qword [rsp + 0x50], rdi
lea rax, [rbp]
mov qword [rsp + 0x48], rdi
xor r9d, r9d
mov qword [rsp + 0x40], rdi
xor r8d, r8d
mov qword [rsp + 0x38], rax
xor edx, edx
mov qword [rsp + 0x30], rdi
lea rax, [rbp - 0x70]
mov dword [rsp + 0x28], 0x31
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.180006e90
mov qword [rsp + 0x58], rdi
mov r15, rax
mov qword [rsp + 0x50], rdi
lea rax, [rbp - 0x20]
mov qword [rsp + 0x48], rdi
xor r9d, r9d
mov qword [rsp + 0x40], rdi
xor r8d, r8d
mov qword [rsp + 0x38], rax
xor edx, edx
mov qword [rsp + 0x30], rdi
lea rax, [rbp - 0x60]
mov dword [rsp + 0x28], 0x31
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.180006e90
mov rdi, rax
jmp 0x18005955b
mov word [rbp - 0x23], r10w
mov byte [rbp - 0x21], 0
jmp 0x180059575
lea rax, [rsi + 0x54]
mov qword [r12], rax
mov eax, dword [rsi + 0x30]
mov dword [r12 + 0x18], eax
mov eax, dword [rsi + 0x48]
mov dword [r12 + 0x1c], eax
mov eax, dword [rsi + 0x44]
mov dword [r12 + 0x20], eax
jmp 0x180059575
cmp r13d, 0x74c
je 0x180059551
cmp r13d, 0x7cc
je 0x18005954a
cmp r13d, 0x84c
je case.0x18005908c.141
jmp 0x180059575
mov byte [rsp + 0x60], 1
jmp 0x180059575
lea rcx, [rbp - 0x30]
call qword [sym.imp.SHLWAPI.dll_PathStripToRootA]
mov r10d, 0x7465
mov r9d, 0x33
mov r11d, 0x5364
lea r8d, [r10 + 0xa]
lea edx, [r9 + 0x38]
sub r13d, 0xffffff80
cmp r13d, ebx
jae case.0x18005908c.141
mov eax, 0x65
lea ecx, [rax + 7]
jmp 0x1800590f0