Function at 0x10006fd44
Capabilities:
Get common file path
Set current directory

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4b0
mov rax, qword [0x100086110]
xor rax, rsp
mov qword [rsp + 0x4a0], rax
xor r12d, r12d
mov rax, r8
mov r13d, r9d
mov rsi, rdx
mov r15, rcx
lea ebp, [r12 + 1]
mov qword [rsp + 0x48], rax
mov ebx, r12d
mov edi, r12d
mov dword [rsp + 0x38], r12d
cmp r8, r12
je 0x10006fdab
lea rdx, [0x100024438]
mov rcx, rax
call qword [sym.imp.msvcrt.dll__wcsicmp]
cmp eax, r12d
jne 0x10006fdba
call fcn.100053ae4
cmp eax, r12d
cmove edi, ebp
mov dword [rsp + 0x38], edi
mov r14, r12
mov qword [rsp + 0x30], r12
cmp rsi, r12
jne 0x10006fdd1
mov eax, 0x80004003
jmp 0x100070d03
mov ecx, 0x208
call fcn.10007fa96
mov rbp, rax
mov qword [rsp + 0x40], rax
cmp rax, r12
jne 0x10006fdf2
mov eax, 0x8007000e
jmp 0x100070d03
mov rdx, rax
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov edi, eax
cmp eax, r12d
jne 0x10006fe35
mov rcx, rbp
call fcn.10007faa2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x57
cmp eax, r12d
mov edx, eax
cmove edx, ecx
movzx eax, dx
or eax, 0x80070000
cmp edx, r12d
cmovle eax, edx
jmp 0x100070d03
cmp eax, 0x104
jbe 0x10006fe7e
mov rcx, rbp
call fcn.10007faa2
lea ecx, [rdi + 1]
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.10007fa96
mov rbp, rax
mov qword [rsp + 0x40], rax
cmp rax, r12
je 0x10006fde8
mov rdx, rax
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov rcx, rsi
call fcn.100053454
xor edi, edi
mov r12d, 0x102
cmp eax, edi
je 0x100070110
lea edx, [rdi + 0x5c]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_wcsrchr]
lea ebp, [r12 + 1]
lea rcx, [rsp + 0x80]
cmp rax, rdi
lea rax, [rsp + 0x80]
mov rdx, rbp
je 0x1000700a1
sub rsi, rax
lea rax, [rdx + 0x7ffffefb]
cmp rax, rdi
je 0x10006fee8
movzx eax, word [rcx + rsi]
cmp ax, di
je 0x10006fee8
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x10006fec6
cmp rdx, rdi
jne 0x10006fef1
sub rcx, 2
mov word [rcx], di
mov rax, qword [rsp + 0x48]
lea rsi, [0x100024538]
cmp rax, rdi
je 0x10006ff50
lea rdx, [0x10002fe88]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_wcsstr]
cmp rax, rdi
je 0x10006ff50
mov ecx, 0x202
call fcn.10007fa96
mov r14, rax
cmp rax, rdi
je 0x10006fde8
lea r9, [0x100024470]
lea r8, [0x10002fea0]
mov edx, 0x100
mov rcx, rax
mov qword [rsp + 0x20], rsi
call fcn.10003a080
cmp r13d, edi
je 0x10006ff6f
xor r9d, r9d
lea r8, [0x10002feb0]
lea rcx, [0x100086f40]
lea edx, [r9 + 8]
call fcn.100053d64
mov rdi, qword [r15 + 0x18]
xor r13d, r13d
cmp rdi, r13
jne 0x1000701f2
lea edx, [r13 + 0x3a]
lea rcx, [rsp + 0x80]
call qword [sym.imp.msvcrt.dll_wcschr]
cmp rax, r13
jne 0x1000701af
lea rdx, [0x10002fefc]
lea rcx, [rsp + 0x80]
call qword [sym.imp.msvcrt.dll_wcsstr]
cmp rax, r13
jne 0x1000701af
mov rdi, qword [rsp + 0x40]
lea rax, [rsp + 0x290]
lea rcx, [rsp + 0x290]
mov rdx, rdi
sub rdx, rax
lea rax, [r12 + 0x7ffffefc]
cmp rax, r13
je 0x10006fff7
movzx eax, word [rcx + rdx]
cmp ax, r13w
je 0x10006fff7
mov word [rcx], ax
add rcx, 2
sub r12, 1
jne 0x10006ffd3
cmp r12, r13
jne 0x100070000
sub rcx, 2
lea rax, [rsp + 0x290]
mov word [rcx], r13w
cmp rax, r13
je 0x10007001f
lea rcx, [rsp + 0x290]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea r8, [rsp + 0x80]
lea rcx, [rsp + 0x290]
mov rdx, rbp
call fcn.100039ee4
lea rcx, [rsp + 0x80]
mov edx, 0x5c
call qword [sym.imp.msvcrt.dll_wcsrchr]
cmp rax, r13
je 0x10007023d
lea rdi, [rsp + 0x290]
lea rax, [rsp + 0x80]
mov rdx, rbp
sub rdi, rax
lea rcx, [rsp + 0x80]
lea rax, [rdx + 0x7ffffefb]
cmp rax, r13
je 0x10007022b
movzx eax, word [rcx + rdi]
cmp ax, r13w
je 0x10007022b
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x100070071
jmp 0x10007022b
mov rdi, qword [rsp + 0x40]
sub rdi, rax
xor r8d, r8d
lea rax, [rdx + 0x7ffffefb]
cmp rax, r8
je 0x1000700cf
movzx eax, word [rcx + rdi]
cmp ax, r8w
je 0x1000700cf
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1000700ac
xor edi, edi
cmp rdx, rdi
jne 0x1000700da
sub rcx, 2
lea rax, [rsp + 0x80]
mov word [rcx], di
cmp rax, rdi
je 0x1000700f8
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rsp + 0x80]
mov r8, rsi
mov rdx, rbp
call fcn.100039ee4
jmp 0x10006fef4
lea rax, [rsp + 0x80]
mov rdi, rbp
mov rdx, r12
sub rdi, rax
xor r8d, r8d
lea rcx, [rsp + 0x80]
lea rax, [rdx + 0x7ffffefc]
cmp rax, r8
je 0x10007014f
movzx eax, word [rcx + rdi]
cmp ax, r8w
je 0x10007014f
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x10007012c
xor edi, edi
cmp rdx, rdi
jne 0x10007015a
sub rcx, 2
lea rax, [rsp + 0x80]
mov word [rcx], di
cmp rax, rdi
je 0x100070178
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
mov ebp, 0x103
lea rcx, [rsp + 0x80]
mov r8, rsi
mov rdx, rbp
call fcn.100039ee4
lea rcx, [rsp + 0x80]
call fcn.100053454
cmp eax, edi
jne 0x10006fef4
mov eax, 0x80070002
jmp 0x100070d03
lea rdi, [rsp + 0x80]
lea rax, [rsp + 0x290]
mov rdx, rbp
sub rdi, rax
lea rcx, [rsp + 0x290]
lea rax, [rdx + 0x7ffffefb]
cmp rax, r13
je 0x10007022b
movzx eax, word [rcx + rdi]
cmp ax, r13w
je 0x10007022b
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1000701cd
jmp 0x10007022b
lea rax, [rsp + 0x290]
mov rdx, rbp
lea rcx, [rsp + 0x290]
sub rdi, rax
lea rax, [rdx + 0x7ffffefb]
cmp rax, r13
je 0x10007022b
movzx eax, word [rcx + rdi]
cmp ax, r13w
je 0x10007022b
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x100070208
cmp rdx, r13
jne 0x100070234
sub rcx, 2
mov rdi, qword [rsp + 0x40]
mov word [rcx], r13w
lea rcx, [rsp + 0x290]
mov edx, 0x5c
call qword [sym.imp.msvcrt.dll_wcsrchr]
cmp rax, r13
je 0x100070259
mov word [rax], r13w
lea rax, [rsp + 0x290]
cmp rax, r13
je 0x100070275
lea rcx, [rsp + 0x290]
call fcn.100053354
jmp 0x100070278
mov eax, r13d
cmp eax, r13d
jne 0x1000702c3
lea rax, [rsp + 0x290]
mov rdx, rdi
lea rcx, [rsp + 0x290]
sub rdx, rax
lea rax, [rbp + 0x7ffffefb]
cmp rax, r13
je 0x1000702b6
movzx eax, word [rcx + rdx]
cmp ax, r13w
je 0x1000702b6
mov word [rcx], ax
add rcx, 2
sub rbp, 1
jne 0x100070293
cmp rbp, r13
jne 0x1000702bf
sub rcx, 2
mov word [rcx], r13w
lea rax, [rsp + 0x290]
cmp rax, r13
je 0x100070345
mov rcx, qword [r15 + 0x18]
cmp rcx, r13
je 0x1000702e2
call fcn.10007faa2
mov qword [r15 + 0x18], r13
or r8, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x290]
mov rcx, r8
repne scasw ax, word [rdi]
lea eax, [r8 + 3]
not rcx
mov rdi, rcx
mul rcx
cmovo rax, r8
mov rcx, rax
call fcn.10007fa96
mov qword [r15 + 0x18], rax
cmp rax, r13
je 0x100070345
lea r8, [rsp + 0x290]
lea rdx, [0x10002f1a8]
mov ecx, 4
call fcn.1000527f4
mov rcx, qword [r15 + 0x18]
lea r8, [rsp + 0x290]
mov rdx, rdi
call fcn.100039df8
lea rcx, [rsp + 0x290]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
xor r9d, r9d
lea rcx, [rsp + 0x80]
lea r8d, [r9 + 2]
xor edx, edx
mov rsi, r13
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], r13
call fcn.1000629f4
mov rbp, rax
or rax, 0xffffffffffffffff
cmp rbp, rax
je 0x100070bb9
mov r12d, dword [rsp + 0x38]
lea rcx, [0x1000246b8]
cmp r12d, r13d
je 0x100070411
lea rax, [rsp + 0x78]
mov qword [rsp + 0x38], rbp
cmp rax, r13
lea r13, [0x100024438]
je 0x100070418
test rcx, rcx
lea rax, [0x100024618]
mov r9, r13
cmovne r9, rcx
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x38]
xor ecx, ecx
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
call fcn.10006c460
test eax, eax
je 0x100070418
lea rcx, [rsp + 0x60]
call fcn.10006c300
mov rdi, rax
test rax, rax
je 0x100070418
mov rcx, rax
call qword [sym.imp.msvcrt.dll__wcsupr]
lea rdx, [0x10002f770]
mov r8, rdi
mov ecx, 3
call fcn.1000527f4
jmp 0x100070418
lea r13, [0x100024438]
mov r8, qword [rsp + 0x48]
and dword [rsp + 0x20], ebx
xor r9d, r9d
mov rdx, rbp
mov rcx, r15
call fcn.10006e948
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x100070470
cmp r14, rax
je 0x10007046e
lea rdx, [0x100024558]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x10007046e
lea r9, [0x100024558]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x100070470
mov ebx, edi
xor eax, eax
cmp r12d, eax
je 0x1000704d1
lea r8, [0x1000246b8]
xor r9d, r9d
mov rdx, rbp
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.10006e948
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x1000704d1
cmp r14, rax
je 0x1000704cf
lea rdx, [0x100024558]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x1000704cf
lea r9, [0x100024558]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x1000704d1
mov ebx, edi
lea rax, [rsp + 0x80]
test rax, rax
jne 0x1000704e5
mov edi, 0x80004003
jmp 0x10007050a
mov r8, qword [rsp + 0x48]
lea r9, [rsp + 0x50]
lea rcx, [rsp + 0x80]
mov rdx, rbp
call fcn.10006dfc8
cmp eax, esi
mov edi, eax
jge 0x100070511
mov rsi, qword [rsp + 0x50]
mov ebx, edi
jmp 0x100070bab
cmp r12d, esi
je 0x100070537
lea r9, [rsp + 0x50]
lea r8, [0x1000246b8]
lea rcx, [rsp + 0x80]
mov rdx, rbp
call fcn.10006dfc8
cmp eax, esi
cmovl ebx, eax
mov rdi, qword [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rcx, rbp
mov rdx, rdi
call fcn.10006daa4
mov esi, eax
cmp eax, 0xd2af9
je 0x100070587
xor eax, eax
cmp r12d, eax
je 0x100070587
mov rcx, qword [rsp + 0x30]
cmp rcx, rax
je 0x100070571
call fcn.10007faa2
and qword [rsp + 0x30], 0
lea r8, [rsp + 0x30]
lea rdx, [0x1000246b8]
mov rcx, rbp
call fcn.10006daa4
mov esi, eax
mov r8, rdi
mov rdx, rbp
mov rcx, r15
call fcn.10006de54
lea rax, [0x100024638]
test rdi, rdi
cmovne r13, rdi
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x38]
xor ecx, ecx
mov r9, r13
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x20], rax
call fcn.10006c460
xor edi, edi
cmp eax, edi
je 0x1000705de
mov rcx, qword [rsp + 0x38]
lea rdx, [rsp + 0x60]
call fcn.1000639e0
lea rax, [0x100024698]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x38]
mov r9, r13
xor ecx, ecx
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x38], rbp
call fcn.10006c460
cmp eax, edi
je 0x10007063f
lea r8, [r15 + 4]
lea rdx, [0x10002f7a0]
mov r9, r15
xor ecx, ecx
call fcn.100063bdc
cmp eax, edi
je 0x100070630
mov dword [r15 + 8], 1
mov rcx, qword [rsp + 0x38]
lea rdx, [rsp + 0x60]
call fcn.100063d8c
mov r13, qword [rsp + 0x48]
xor r9d, r9d
mov rdx, rbp
mov rcx, r15
mov r8, r13
mov dword [rsp + 0x20], edi
call fcn.10006ed5c
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x10007069a
cmp r14, rax
je 0x100070698
lea rdx, [0x100024538]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x100070698
lea r9, [0x100024538]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x10007069a
mov ebx, edi
xor eax, eax
cmp r12d, eax
je 0x1000706fb
lea r8, [0x1000246b8]
xor r9d, r9d
mov rdx, rbp
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.10006ed5c
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x1000706fb
cmp r14, rax
je 0x1000706f9
lea rdx, [0x100024538]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x1000706f9
lea r9, [0x100024538]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x1000706fb
mov ebx, edi
xor r9d, r9d
mov r8, r13
mov rdx, rbp
mov rcx, r15
call fcn.10006d004
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x10007074d
cmp r14, rax
je 0x10007074b
lea rdx, [0x100024498]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x10007074b
lea r9, [0x100024498]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x10007074d
mov ebx, edi
test r12d, r12d
je 0x1000707a8
lea r8, [0x1000246b8]
xor r9d, r9d
mov rdx, rbp
mov rcx, r15
call fcn.10006d004
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x1000707a8
cmp r14, rax
je 0x1000707a6
lea rdx, [0x100024498]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x1000707a6
lea r9, [0x100024498]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x1000707a8
mov ebx, edi
lea rax, [rsp + 0x50]
xor r9d, r9d
mov r8, r13
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.10006efc0
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x100070835
cmp r14, rax
je 0x100070831
lea rdx, [0x100024470]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x100070831
lea r9, [0x100024470]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
mov rdi, qword [rsp + 0x30]
test r12d, r12d
je 0x100070882
lea rax, [rsp + 0x50]
lea r8, [0x1000246b8]
xor r9d, r9d
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.10006efc0
test eax, eax
jns 0x10007085f
mov ebx, eax
jmp 0x100070882
mov ebx, edi
jmp 0x100070800
cmp esi, 0xd2af8
jne 0x100070800
cmp edi, 1
je 0x100070800
mov rdi, qword [rsp + 0x30]
xor r9d, r9d
lea rcx, [0x100086f40]
lea edx, [r9 + 4]
mov r8, rdi
call fcn.100053d64
jmp 0x100070805
cmp esi, 0xd2af8
jne 0x100070882
cmp eax, 1
je 0x100070882
xor r9d, r9d
lea rcx, [0x100086f40]
mov r8, rdi
lea edx, [r9 + 4]
call fcn.100053d64
lea rax, [rsp + 0x50]
mov r9d, 1
mov r8, r13
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.10006efc0
mov edi, eax
xor eax, eax
cmp edi, eax
jge 0x100070915
cmp r14, rax
je 0x100070911
lea rdx, [0x100024458]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x100070911
lea r9, [0x100024458]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
mov rdi, qword [rsp + 0x30]
test r12d, r12d
je 0x100070962
lea rax, [rsp + 0x50]
lea r8, [0x1000246b8]
mov r9d, 1
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.10006efc0
test eax, eax
jns 0x10007093f
mov ebx, eax
jmp 0x100070962
mov ebx, edi
jmp 0x1000708dd
cmp esi, 0xd2af8
jne 0x1000708dd
cmp edi, 1
je 0x1000708dd
mov rdi, qword [rsp + 0x30]
xor r9d, r9d
lea rcx, [0x100086f40]
lea edx, [r9 + 4]
mov r8, rdi
call fcn.100053d64
jmp 0x1000708e2
cmp esi, 0xd2af8
jne 0x100070962
cmp eax, 1
je 0x100070962
xor r9d, r9d
lea rcx, [0x100086f40]
mov r8, rdi
lea edx, [r9 + 4]
call fcn.100053d64
mov r8, r13
mov rdx, rbp
mov rcx, r15
call fcn.10006d1f0
xor esi, esi
cmp eax, esi
mov edi, eax
jge 0x1000709af
cmp r14, rsi
je 0x1000709ad
lea rdx, [0x1000244a8]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
cmp rax, rsi
je 0x1000709ad
lea r9, [0x1000244a8]
lea rdx, [0x10002ff10]
lea ecx, [rsi + 3]
mov r8d, edi
call fcn.1000527f4
jmp 0x1000709af
mov ebx, edi
cmp r12d, esi
je 0x1000709cb
lea r8, [0x1000246b8]
mov rdx, rbp
mov rcx, r15
call fcn.10006d1f0
cmp eax, esi
cmovl ebx, eax
mov r9d, 1
mov r8, r13
mov rdx, rbp
mov rcx, r15
call fcn.10006d004
cmp eax, esi
mov edi, eax
jge 0x100070a1e
cmp r14, rsi
je 0x100070a1c
lea rdx, [0x100024488]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
cmp rax, rsi
je 0x100070a1c
lea r9, [0x100024488]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x100070a1e
mov ebx, edi
cmp r12d, esi
je 0x100070a40
lea r8, [0x1000246b8]
mov r9d, 1
mov rdx, rbp
mov rcx, r15
call fcn.10006d004
cmp eax, esi
cmovl ebx, eax
mov eax, dword [0x100087148]
mov r9d, 1
mov r8, r13
and eax, 8
mov rdx, rbp
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.10006ed5c
cmp eax, esi
mov edi, eax
jge 0x100070aa0
cmp r14, rsi
je 0x100070a9e
lea rdx, [0x100024518]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_wcsstr]
cmp rax, rsi
je 0x100070a9e
lea r9, [0x100024518]
lea rdx, [0x10002ff10]
mov r8d, edi
mov ecx, 3
call fcn.1000527f4
jmp 0x100070aa0
mov ebx, edi
cmp r12d, esi
je 0x100070acf
mov eax, dword [0x100087148]
lea r8, [0x1000246b8]
mov r9d, 1
and eax, 8
mov rdx, rbp
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.10006ed5c
cmp eax, esi
cmovl ebx, eax
mov r8, r13
mov rdx, rbp
mov rcx, r15
call fcn.10006e7b4
cmp eax, esi
cmovl ebx, eax
cmp r12d, esi
je 0x100070afe
lea r8, [0x1000246b8]
mov rdx, rbp
mov rcx, r15
call fcn.10006e7b4
cmp eax, esi
cmovl ebx, eax
mov eax, dword [0x100087148]
mov r9d, 1
mov r8, r13
and eax, 8
mov rdx, rbp
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.10006e948
cmp eax, esi
mov edi, eax
cmovl ebx, eax
cmp r12d, esi
je 0x100070b57
mov eax, dword [0x100087148]
lea r8, [0x1000246b8]
mov r9d, 1
and eax, 8
mov rdx, rbp
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.10006e948
cmp eax, esi
mov edi, eax
cmovl ebx, eax
test byte [0x100087148], 8
jne 0x100070ba6
mov r8, r13
mov rdx, rbp
mov rcx, r15
call fcn.10006dd78
mov r8, r13
mov rdx, rbp
cmp eax, esi
mov rcx, r15
cmovl ebx, eax
call fcn.10006dbc4
cmp eax, esi
mov edi, eax
cmovl ebx, eax
cmp r12d, esi
je 0x100070ba6
lea r8, [0x1000246b8]
mov rdx, rbp
mov rcx, r15
call fcn.10006dbc4
cmp eax, esi
mov edi, eax
cmovl ebx, eax
mov rsi, qword [rsp + 0x50]
mov rcx, rbp
call qword [sym.imp.SETUPAPI.dll_SetupCloseInfFile]
xor r13d, r13d
jmp 0x100070bf5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x57
lea r8, [rsp + 0x80]
cmp eax, r13d
lea rdx, [0x10002ff68]
cmove eax, ecx
mov ecx, 2
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
mov r9d, edi
call fcn.1000527f4
mov rbp, qword [rsp + 0x40]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
cmp edi, r13d
jl 0x100070c43
cmp ebx, r13d
jl 0x100070c43
lea rcx, [0x100086f40]
call fcn.100053d0c
cmp dword [0x100087148], r13d
je 0x100070c9b
lea rcx, [0x100086f40]
call fcn.100053d0c
movzx ebx, byte [0x100087148]
shr ebx, 3
and ebx, 1
or ebx, 0xd2af8
jmp 0x100070c9b
lea r8, [rsp + 0x80]
lea rdx, [0x10002ffa0]
mov r9d, ebx
mov ecx, 2
call fcn.1000527f4
lea rcx, [0x100086f40]
call fcn.100053d0c
cmp dword [0x100087148], r13d
je 0x100070c95
lea rcx, [0x100086f40]
call fcn.100053d0c
movzx ebx, byte [0x100087148]
shr ebx, 3
and ebx, 1
or ebx, 0xc00d2afa
jmp 0x100070c9b
cmp edi, r13d
cmovl ebx, edi
mov rcx, rbp
call fcn.10007faa2
cmp r14, r13
je 0x100070cb0
mov rcx, r14
call fcn.10007faa2
mov rax, qword [rsp + 0x30]
cmp rax, r13
je 0x100070cc2
mov rcx, rax
call fcn.10007faa2
call fcn.100053c90
mov dword [0x10008714c], 1
mov dword [0x100087144], eax
cmp rsi, r13
je 0x100070d01
mov rcx, qword [rsi + 8]
mov rdi, qword [rsi]
cmp rcx, r13
je 0x100070cf1
call fcn.10007faa2
mov qword [rsi + 8], r13
mov rcx, rsi
call fcn.10007faae
mov rsi, rdi
cmp rdi, r13
jne 0x100070cdc
mov eax, ebx
mov rcx, qword [rsp + 0x4a0]
xor rcx, rsp
call fcn.10007fa70
mov rbx, qword [rsp + 0x508]
add rsp, 0x4b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret