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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1e0]
sub rsp, 0x2e0
mov rax, qword [0x140023018]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov rbx, rcx
xor r12d, r12d
lea rdx, [rcx + 0x78]
lea rcx, [rsp + 0x48]
call fcn.1400019f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
movdqa xmm1, xmmword [0x140018c40]
movdqu xmmword [rsp + 0x78], xmm1
mov word [rsp + 0x68], r12w
lea rdx, [rbp - 0x50]
mov ecx, 0x105
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea rax, [rbp - 0x50]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140003e20
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x68]
call fcn.140004d80
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
lea rcx, str.python3.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rbx + 0x10], rax
test rax, rax
je 0x140003e7a
lea rdx, str.Py_Main
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 8], rax
lea rcx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
cmp qword [rbx + 0x10], 0
jne 0x140004051
mov rsi, qword [rsp + 0x58]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, rsi
cmp rax, 0x1f
jb 0x14000433b
lea r15, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae r15, qword [rsp + 0x48]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
lea r14, [rsi + 0x1f]
mov ebx, 7
lea rdi, [rsp + 0x28]
cmp r14, rbx
jbe 0x140003f84
mov rbx, r14
or rbx, 7
cmp rbx, rcx
jbe 0x140003f12
mov rbx, rcx
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x140003f41
mov eax, 0xa
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140004341
add rcx, rcx
cmp rcx, 0x1000
jb 0x140003f6d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004341
mov rcx, rax
call fcn.14000545c
test rax, rax
je 0x140004335
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140003f7f
test rcx, rcx
je 0x140003f7c
call fcn.14000545c
mov rdi, rax
jmp 0x140003f7f
mov rdi, r12
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
movaps xmm0, xmmword [str.Cannot_load_python3.dll_from:_r_n]
movups xmmword [rdi], xmm0
movaps xmm1, xmmword [0x140018ae0]
movups xmmword [rdi + 0x10], xmm1
movaps xmm0, xmmword [0x140018af0]
movups xmmword [rdi + 0x20], xmm0
movsd xmm1, qword [0x140018b00]
movsd qword [rdi + 0x30], xmm1
mov eax, dword [0x140018b08]
mov dword [rdi + 0x38], eax
movzx eax, word [0x140018b0c]
mov word [rdi + 0x3c], ax
lea rcx, [rdi + 0x3e]
lea r8, [rsi + rsi]
mov rdx, r15
call fcn.140007170
mov word [rdi + r14*2], r12w
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rdx, qword [rsp + 0x28]
xor r9d, r9d
lea r8, str.ERROR
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x140004268
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004263
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004335
jmp 0x140004263
cmp qword [rbx + 8], 0
jne 0x14000426c
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x68], xmm1
mov r8d, 0x1b
lea rdx, str.Cannot_find_Py_Main___in:_r_n
lea rcx, [rbp - 0x78]
call fcn.1400010f0
nop
mov r14, qword [rsp + 0x58]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r14
cmp rax, 0xc
jb 0x140004347
lea r15, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae r15, qword [rsp + 0x48]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
lea rsi, [r14 + 0xc]
mov ebx, 7
lea rdi, [rsp + 0x28]
cmp rsi, rbx
jbe 0x14000416b
mov rbx, rsi
or rbx, 7
cmp rbx, rcx
jbe 0x1400040f9
mov rbx, rcx
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x140004128
mov eax, 0xa
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140004353
add rcx, rcx
cmp rcx, 0x1000
jb 0x140004154
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004353
mov rcx, rax
call fcn.14000545c
test rax, rax
je 0x14000434d
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140004166
test rcx, rcx
je 0x140004163
call fcn.14000545c
mov rdi, rax
jmp 0x140004166
mov rdi, r12
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rbx
lea rbx, [r14 + r14]
mov r8, rbx
mov rdx, r15
mov rcx, rdi
call fcn.140007170
movups xmm0, xmmword [0x140018a10]
movups xmmword [rdi + rbx], xmm0
movsd xmm1, qword [0x140018a20]
movsd qword [rdi + rbx + 0x10], xmm1
mov word [rdi + rsi*2], r12w
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x38]
lea rcx, [rbp - 0x78]
call fcn.140004c00
nop
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x140004207
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004202
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000434d
call fcn.140005498
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rdx, qword [rbp - 0x78]
xor r9d, r9d
lea r8, str.ERROR
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x140004268
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004263
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004359
call fcn.140005498
xor bl, bl
jmp 0x14000426e
mov bl, 1
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400042af
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400042aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000435f
call fcn.140005498
movdqa xmm0, xmmword [0x140018c40]
movdqu xmmword [rsp + 0x78], xmm0
mov word [rsp + 0x68], r12w
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140004301
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400042fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000432f
call fcn.140005498
movzx eax, bl
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.140005850
lea r11, [rsp + 0x2e0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.14000bad4
nop
call fcn.14000bad4
nop
call fcn.140004a10
int3
call fcn.140004980
nop
call fcn.140004a10
int3
call fcn.14000bad4
int3
call fcn.140004980
nop
call fcn.14000bad4
nop
call fcn.14000bad4
int3