Function at 0x40f45f
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe58
mov qword [rsp + 0x200], r9
mov qword [rsp + 0x1f8], r8
mov rbp, rdx
mov qword [rsp + 0x78], rcx
movabs r13, 0x8000000000000000
mov al, 1
mov dword [rsp + 0x3c], eax
lea rcx, [rsp + 0x240]
call fcn.00489ea0
cmp qword [rsp + 0x240], r13
jne 0x40f4c8
mov qword [rsp + 0x180], r13
lea rcx, [rsp + 0x240]
call fcn.00406d14
jmp 0x40f4e8
movups xmm0, xmmword [rsp + 0x240]
movups xmm1, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x190], xmm1
movaps xmmword [rsp + 0x180], xmm0
lea rdx, [rsp + 0x240]
and qword [rdx], 0
mov qword [rdx + 8], 8
and qword [rdx + 0x10], 0
lea r9, [0x006c9730]
lea rcx, [rsp + 0x730]
mov r8d, 1
call fcn.004c236b
lea r9, [0x006c9750]
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x730]
mov r8d, 1
call fcn.004c236b
lea rdx, str.PATHlibrary_std_src_sys_commonprocess.rs
lea rcx, [rsp + 0x50]
mov r8d, 4
call fcn.004a72b0
movaps xmm0, xmmword [rsp + 0x180]
movaps xmm1, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [rsp + 0x228]
movaps xmmword [rsp + 0x120], xmm0
lea rdx, str.magiskbootcopy_magiskboot_failed_is_not_exist
lea rcx, [rsp + 0x4e0]
mov r8d, 0xa
call fcn.004bfb80
mov r12, qword [rsp + 0x80]
cmp r12, r13
je 0x40f6df
mov r15, qword [rsp + 0x4e8]
mov r14, qword [rsp + 0x4f0]
xor esi, esi
lea rcx, [rsp + 0x240]
mov rdx, r15
mov r8, r14
call case.0x4ac350.25
xor ebx, ebx
lea rsi, [rsp + 0x730]
lea rdi, [rsp + 0x240]
mov rcx, rsi
mov rdx, rdi
call fcn.0048b1e0
cmp byte [rsp + 0x730], 0xa
je 0x40f610
inc rbx
jmp 0x40f5f6
cmp rbx, 2
jb 0x40f6df
mov rdi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x4f8]
mov qword [rsp + 0x48], rax
mov rcx, r15
mov rdx, r14
mov qword [rsp + 0x30], rbp
call fcn.0048aa20
test al, al
jne 0x40f6b5
lea rcx, [rsp + 0x240]
mov rdx, rdi
mov r8, rbx
call fcn.004bfb80
lea rcx, [rsp + 0x240]
mov rdx, r15
mov r8, r14
call case.0x4aa970.58
mov rcx, qword [rsp + 0x40]
mov rdx, r15
call fcn.00470f46
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0x248]
mov r14, qword [rsp + 0x250]
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x48], rax
mov rcx, r12
mov rdx, rdi
call fcn.00470f46
lea rax, [r13 + 1]
mov qword [rsp + 0x158], rax
mov al, 1
xor ebp, ebp
mov r8, r12
xor ebx, ebx
xor esi, esi
mov rdx, r13
jmp 0x40f9a0
mov rax, qword [rsp + 0x50]
cmp rax, r13
je 0x40fb2a
mov cl, byte [rsp + 0x58]
movups xmm0, xmmword [rsp + 0x59]
movups xmmword [rsp + 0xc09], xmm0
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0xc18], rdx
mov qword [rsp + 0xc00], rax
mov byte [rsp + 0xc08], cl
mov rax, qword [rsp + 0xc08]
mov rcx, qword [rsp + 0xc10]
add rcx, rax
lea rdx, [rsp + 0x9a0]
mov qword [rdx], rax
mov qword [rdx + 8], rcx
and word [rdx + 0x10], 0
mov byte [rdx + 0x18], 1
lea rcx, [rsp + 0x240]
mov qword [rsp + 0x30], rbp
call fcn.004a86e0
mov rsi, qword [rsp + 0x240]
cmp rsi, r13
mov qword [rsp + 0x70], r12
jne 0x40f796
and qword [rsp + 0x140], 0
mov qword [rsp + 0x148], 8
and qword [rsp + 0x150], 0
mov ebx, 8
xor r12d, r12d
xor ebp, ebp
jmp 0x40f944
mov rdi, qword [rsp + 0x248]
mov al, byte [0x006e0338]
mov edx, pe_nt_image_headers64
xor ecx, ecx
call fcn.004b9480
test rax, rax
je 0x410c5d
mov rbx, rax
mov qword [rax], rsi
mov qword [rax + 8], rdi
lea r15, [rsp + 0x250]
movups xmm0, xmmword [r15]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [rsp + 0x9a0]
movups xmm1, xmmword [rsp + 0x9b0]
lea r14, [rsp + 0x730]
movaps xmmword [r14 + 0x10], xmm1
movaps xmmword [r14], xmm0
mov ebp, 1
mov edi, 0x30
xor eax, eax
mov qword [rsp + 0x48], rax
mov r12d, 4
lea rcx, [rsp + 0x240]
mov rdx, r14
call fcn.004a86e0
mov r13, qword [rsp + 0x240]
movabs rax, 0x8000000000000000
cmp r13, rax
je 0x40f922
mov rsi, qword [rsp + 0x248]
movups xmm0, xmmword [r15]
movaps xmmword [rsp + 0x4d0], xmm0
cmp rbp, r12
jne 0x40f900
mov rcx, r12
mov r12, r14
mov r14, r15
mov r15, rcx
inc r15
mov qword [rsp + 0x40], rcx
je 0x410c3a
lea rax, [rcx + rcx]
cmp rax, r15
cmova r15, rax
xor edx, edx
mov rax, r15
shr rax, 0x3a
sete al
cmp r15, 5
mov r8d, 4
cmovb r15, r8
test rcx, rcx
je 0x40f8b2
shl rcx, 5
mov qword [rsp + 0x208], rbx
mov qword [rsp + 0x218], rcx
mov ecx, 8
jmp 0x40f8b4
xor ecx, ecx
mov r8, r15
shl r8, 5
mov dl, al
shl edx, 3
mov qword [rsp + 0x210], rcx
lea rcx, [rsp + 0x100]
lea r9, [rsp + 0x208]
call fcn.004724c9
cmp qword [rsp + 0x100], 0
jne 0x410c3c
mov rbx, qword [rsp + 0x108]
mov rax, r15
mov r15, r14
mov r14, r12
mov r12, rax
mov qword [rbx + rdi - 0x10], r13
mov qword [rbx + rdi - 8], rsi
movaps xmm0, xmmword [rsp + 0x4d0]
movups xmmword [rbx + rdi], xmm0
inc rbp
add rdi, 0x20
jmp 0x40f80b
mov qword [rsp + 0x140], r12
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x150], rbp
movabs r13, 0x8000000000000000
lea rcx, [rsp + 0xc00]
call fcn.00405faa
test rbp, rbp
je 0x40fb10
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x4e8]
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0x4f0]
mov r14, qword [rsp + 0x4f8]
shl rbp, 5
add rbp, rbx
mov sil, 1
xor eax, eax
mov qword [rsp + 0x48], rbx
mov rdx, r13
mov r8, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x120]
mov r13b, byte [rsp + 0x128]
mov rcx, qword [rsp + 0x129]
mov qword [rsp + 0x1e8], rcx
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0x1ef], rcx
cmp r8, rdx
je 0x40f9e6
test al, al
jne 0x40f9e6
lea rcx, [rsp + 0x80]
call fcn.00405faa
test sil, sil
jne 0x40f9f5
lea rcx, [rsp + 0x50]
call fcn.004067ff
movabs rdx, 0x8000000000000000
cmp rdi, rdx
jne 0x40fa0e
mov rbp, qword [rsp + 0x30]
jmp 0x40fb54
mov qword [rsp + 0x80], rdi
mov byte [rsp + 0x88], r13b
mov rax, qword [rsp + 0x1e8]
mov rcx, qword [rsp + 0x1ef]
mov qword [rsp + 0x89], rax
mov qword [rsp + 0x90], rcx
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 0x98], rcx
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0xb0], r14
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], r12
mov qword [rsp + 0xd0], rbp
and qword [rsp + 0xe8], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xd8], xmm0
lea r14, [rdx + 1]
cmp rcx, r14
mov r13, rdx
lea rax, [rsp + 0x80]
jne 0x40fd48
mov qword [rsp + 0x50], rax
test rbx, rbx
je 0x410453
lea rcx, [rsp + 0x240]
lea rdx, [rsp + 0x80]
mov r8, rbx
mov r9, r12
mov rbp, qword [rsp + 0x30]
call fcn.00401bfd
mov rsi, qword [rsp + 0x240]
cmp rsi, r13
jne 0x410819
mov rcx, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xc8]
jmp 0x41045a
mov sil, 1
lea rcx, [rsp + 0x140]
mov rbp, qword [rsp + 0x30]
call fcn.004067ac
mov r12, qword [rsp + 0x70]
lea rcx, [rsp + 0x4e0]
call fcn.00405faa
lea rcx, [rsp + 0x120]
call fcn.004064f0
lea rcx, [rsp + 0x80]
call fcn.00405dae
mov r13b, 1
mov byte [rsp + 0x1d0], r13b
movabs r13, 0x8000000000000000
mov qword [rsp + 0x1c8], r13
lea rcx, [rsp + 0x1c8]
call fcn.004067ff
mov r14, qword [rbp]
cmp r14, r13
setne bl
je 0x40fbdb
mov rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x10]
lea rcx, [rsp + 0x240]
call fcn.004bebe0
mov rcx, rbp
call fcn.00405faa
mov rax, qword [rsp + 0x240]
mov rcx, qword [rsp + 0x248]
cmp rax, r13
jne 0x40fcc1
mov dword [rsp + 0x3c], 0
call fcn.004094df
mov rcx, qword [rsp + 0x78]
mov qword [rcx + 8], rax
mov qword [rcx], r13
jmp 0x410c25
mov qword [rsp + 0x20], 0xa
lea rsi, str.magiskbootcopy_magiskboot_failed_is_not_exist
lea rcx, [rsp + 0xc00]
mov rdx, qword [rsp + 0x1f8]
mov r8, qword [rsp + 0x200]
mov r9, rsi
call fcn.004ae530
mov qword [rsp + 0x180], rsi
mov qword [rsp + 0x188], 0xa
lea rcx, [rsp + 0x240]
mov r8d, 0xa
mov rdx, rsi
call fcn.00423ea0
lea rax, [rsp + 0x180]
lea rcx, [rsp + 0x50]
mov qword [rcx], rax
lea rax, [0x004cbab8]
lea rdx, [rsp + 0x9a0]
mov qword [rdx], rax
mov eax, 1
mov qword [rdx + 8], rax
and qword [rdx + 0x20], 0
lea r8, [fcn.004c30be]
mov qword [rcx + 8], r8
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], rax
lea rcx, [rsp + 0x80]
call fcn.00408058
lea rcx, [rsp + 0x80]
call fcn.00431254
lea rcx, [rsp + 0x730]
lea rdx, [rsp + 0x240]
mov r8, rax
call fcn.00407662
cmp dword [rsp + 0x730], 2
jne 0x40fcee
mov rcx, qword [rsp + 0x738]
jmp 0x40fd8d
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x4f0], xmm0
mov qword [rsp + 0x4e0], rax
mov qword [rsp + 0x4e8], rcx
mov dword [rsp + 0x3c], 0
jmp 0x40fdf2
lea rsi, [rsp + 0x740]
lea rdi, [rsp + 0x240]
mov ecx, 9
rep movsq qword [rdi], qword [rsi]
lea rsi, [rsp + 0x270]
mov r8, qword [rsi + 8]
mov r9, qword [rsi + 0x10]
mov rcx, qword [rsp + 0xc08]
mov rdx, qword [rsp + 0xc10]
call fcn.004a9f70
mov rdi, rax
mov rcx, rsi
call fcn.00406163
test rdi, rdi
je 0x40fd8b
mov rcx, rdi
call fcn.004094df
mov rcx, rax
jmp 0x40fd8d
mov qword [rsp + 0x140], rax
lea rsi, [rsp + 0xd8]
xor ecx, ecx
call fcn.00405bf5
and qword [rsp + 0xd8], 0
xor r15d, r15d
cmp qword [rsp + 0x98], r13
lea r14, [rsp + 0x240]
jne 0x40feaf
mov rbp, qword [rsp + 0x30]
jmp 0x4106de
xor ecx, ecx
lea rdx, [0x004cc40a]
mov r8d, 0x16
call fcn.004098cd
test rax, rax
je 0x40fdc4
mov rcx, qword [rsp + 0x78]
mov qword [rcx + 8], rax
mov qword [rcx], r13
lea rcx, [rsp + 0xc00]
call fcn.00405faa
xor ebx, ebx
jmp 0x40fe98
movups xmm0, xmmword [rsp + 0xc00]
movups xmm1, xmmword [rsp + 0xc10]
movaps xmmword [rsp + 0x4f0], xmm1
movaps xmmword [rsp + 0x4e0], xmm0
mov al, 1
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x4e8]
mov rdx, qword [rsp + 0x4f0]
call fcn.00403a8d
test al, al
je 0x40fe28
movaps xmm0, xmmword [rsp + 0x4e0]
movaps xmm1, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x4c0], xmm1
movaps xmmword [rsp + 0x4b0], xmm0
jmp 0x410bf8
lea rax, [rsp + 0x4e0]
mov qword [rsp + 0x730], rax
lea rax, [0x004cc430]
lea rcx, [rsp + 0x240]
mov qword [rcx], rax
mov qword [rcx + 8], 2
and qword [rcx + 0x20], 0
lea rax, [0x004a8070]
mov qword [rsp + 0x738], rax
lea rax, [rsp + 0x730]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 1
call fcn.00409919
mov rcx, qword [rsp + 0x78]
mov qword [rcx + 8], rax
mov qword [rcx], r13
lea rcx, [rsp + 0x4e0]
call fcn.00405faa
test bl, bl
jne 0x410c25
cmp qword [rbp], r13
jne 0x410c1d
jmp 0x410c25
lea rbp, [rsp + 0x9a0]
lea r13, [0x004c7510]
lea r12, [rsp + 0x4e0]
mov rax, qword [rsp + 0xc0]
cmp rax, qword [rsp + 0xd0]
je 0x4106bf
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x190], xmm1
movaps xmmword [rsp + 0x180], xmm0
add rax, 0x20
mov qword [rsp + 0xc0], rax
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x730]
call case.0x4ac350.25
lea rcx, [rsp + 0xc00]
lea rdx, [rsp + 0x730]
call fcn.0048b1e0
cmp byte [rsp + 0xc00], 9
jne 0x40ffc6
mov rcx, qword [rsp + 0xc08]
mov rdx, qword [rsp + 0xc10]
mov r9d, 1
lea r8, [0x006c96b7]
call fcn.0046ae0c
test al, al
je 0x40ffc6
mov r8d, 0xb
mov rcx, r14
lea rdx, [0x006c0f2f]
call fcn.004a72b0
mov rsi, qword [rsp + 0x240]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x40fff5
mov rdx, qword [rsp + 0x248]
mov rax, qword [rsp + 0x250]
test rax, rax
je 0x40ffed
mov rbx, qword [rsp + 0x258]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x48], rdx
jmp 0x4100d0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x9a8], rax
movabs rdx, 0x8000000000000000
mov qword [rsp + 0x9a0], rdx
mov rcx, rdx
jmp 0x4101f3
mov rcx, rsi
call fcn.00470f46
and qword [rsp + 0x9a0], 0
lea rcx, [0x006c0f3c]
mov edx, 0x4000
xor r8d, r8d
mov r9, rbp
call sub.shell32.dll_SHGetKnownFolderPath
mov rsi, qword [rsp + 0x9a0]
test eax, eax
je 0x410035
mov rcx, rsi
call sub.ole32.dll_CoTaskMemFree
movabs rsi, 0x8000000000000000
jmp 0x410082
mov rcx, rsi
call sub.msvcrt.dll_wcslen
mov rcx, r14
mov rdx, rsi
mov r8, rax
call fcn.0048a770
mov rcx, qword [rsp + 0x9a0]
call sub.ole32.dll_CoTaskMemFree
mov rsi, qword [rsp + 0x240]
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x70], rax
mov rbx, qword [rsp + 0x258]
movabs rdi, 0x8000000000000000
mov rcx, rdi
mov rdx, qword [rsp + 0x40]
call fcn.0046d79b
cmp rsi, rdi
jne 0x4100c6
and qword [rsp + 0x4e0], 0
mov qword [rsp + 0x4e8], 1
and qword [rsp + 0x4f0], 0
mov byte [rsp + 0x4f8], 1
jmp 0x4100f0
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x4e0], rsi
mov qword [rsp + 0x4e8], rdx
mov qword [rsp + 0x4f0], rax
mov qword [rsp + 0x4f8], rbx
movups xmm0, xmmword [rsp + 0x730]
movups xmm1, xmmword [rsp + 0x740]
movups xmm2, xmmword [rsp + 0x750]
movups xmm3, xmmword [rsp + 0x760]
movaps xmmword [rsp + 0x270], xmm3
movaps xmmword [rsp + 0x260], xmm2
movaps xmmword [rsp + 0x250], xmm1
movaps xmmword [rsp + 0x240], xmm0
mov rcx, rbp
mov rdx, r14
call fcn.0048b1e0
mov al, byte [rsp + 0x9a0]
cmp al, 0xa
je case.default.0x410161
lea ecx, [rax - 6]
add al, 0xfb
cmp cl, 4
movzx eax, al
cmovae eax, r15d
mov dword [r15 + r9 - 0x4a], 0x44634bc0
test dword [rax], eax
add rax, r13
jmp rax
mov rdx, qword [rsp + 0x9c8]
mov r8, qword [rsp + 0x9d0]
jmp 0x4101ac
mov rdx, qword [rsp + 0x9a8]
mov r8, qword [rsp + 0x9b0]
jmp 0x4101ac
invalid
mov r8d, 1
lea rdx, [0x006c9a18]
jmp 0x4101ac
invalid
mov r8d, 2
lea rdx, [0x006c9523]
jmp 0x4101ac
lea rdx, [0x006c9522]
mov rcx, r12
call case.0x4aa970.58
jmp 0x410130
movups xmm0, xmmword [rsp + 0x4e0]
movups xmm1, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x9a0], xmm0
movaps xmmword [rsp + 0x9b0], xmm1
mov rcx, qword [rsp + 0x9a0]
mov rax, qword [rsp + 0x9a8]
movabs rdx, 0x8000000000000000
cmp rcx, rdx
cmovne rax, rbp
mov rdi, qword [rax + 8]
mov r14, qword [rax + 0x10]
lea rcx, [rsp + 0x240]
lea rdx, [rsp + 0x98]
call fcn.00407a07
mov rsi, qword [rsp + 0x248]
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xc00]
mov rdx, rdi
mov r8, r14
mov r9, rsi
call fcn.004ae530
mov rcx, qword [rsp + 0x240]
mov rdx, rsi
call fcn.00470f46
mov rcx, rbp
call fcn.004067ff
lea rcx, [rsp + 0x50]
call fcn.00405faa
movups xmm0, xmmword [rsp + 0xc00]
movups xmm1, xmmword [rsp + 0xc10]
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x1b0], xmm1
mov rax, qword [0x006e02f0]
cmp rax, 3
lea r14, [rsp + 0x240]
je 0x4102f6
mov rax, qword [0x006e02f0]
cmp rax, 3
je 0x4102f6
lea rax, [0x006e02f8]
mov qword [rsp + 0x240], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x248], rax
mov qword [rsp + 0x730], r14
lea rax, str._rustc_3f5fd8dd41153bc5fdca9427e9e05be2c767ba23library_std_src_synconce.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x006e02f0]
mov dl, 1
lea r8, [rsp + 0x730]
lea r9, [0x006c9528]
call fcn.004880d0
mov r8, qword [0x006e0300]
mov r9, qword [0x006e0308]
mov rcx, qword [rsp + 0x1a8]
mov rdx, qword [rsp + 0x1b0]
call fcn.004c16bc
test al, al
je 0x41034a
mov ecx, 0x20
call fcn.00408188
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmm1, xmmword [rsp + 0x1b0]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rcx, [0x004caa80]
jmp 0x4103df
lea rcx, [rsp + 0x730]
lea rdx, [rsp + 0x1a0]
call fcn.00407a07
movups xmm0, xmmword [rsp + 0x730]
movups xmm1, xmmword [rsp + 0x740]
lea rax, [rsp + 0x270]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
imul rax, qword [0x006e0308], 0x18
mov rcx, qword [0x006e0300]
add rax, rcx
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmm1, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x250], xmm1
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x268], rax
mov ecx, 0x50
call fcn.00408188
mov ecx, 0xa
mov rdi, rax
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
lea rcx, fcn.00405d72
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x208]
lea rdx, [rsp + 0x140]
lea r8, [rsp + 0xd8]
mov r9, rax
call fcn.004073ca
mov rsi, qword [rsp + 0x208]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x40fec6
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x748], rax
movups xmm0, xmmword [rsp + 0x210]
movups xmmword [rsp + 0x738], xmm0
mov rbp, qword [rsp + 0x30]
movabs r13, 0x8000000000000000
jmp 0x410781
xor ecx, ecx
mov rbp, qword [rsp + 0x30]
lea rsi, [rsp + 0xc0]
mov rdx, r12
call fcn.00405bf5
and qword [rsp + 0xc0], 0
cmp qword [rsp + 0xa0], r14
jne 0x410484
xor ecx, ecx
jmp 0x4107c5
mov r12, rsi
mov qword [rsp + 0x30], rbp
lea r13, [rsp + 0xa0]
lea rbp, [rsp + 0x270]
lea rbx, [rsp + 0x9a0]
lea r14, [rsp + 0x50]
lea r15, [rsp + 0x730]
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movaps xmmword [rsp + 0xc00], xmm0
movaps xmmword [rsp + 0xc10], xmm1
movabs rax, 0x8000000000000000
mov qword [rsp + 0xa0], rax
cmp qword [rsp + 0xc00], rax
je 0x41079e
movaps xmm0, xmmword [rsp + 0xc00]
movaps xmm1, xmmword [rsp + 0xc10]
movaps xmmword [rsp + 0x170], xmm1
movaps xmmword [rsp + 0x160], xmm0
mov rax, qword [0x006e02f0]
cmp rax, 3
je 0x410578
mov rax, qword [0x006e02f0]
cmp rax, 3
je 0x410578
lea rax, [0x006e02f8]
mov qword [rsp + 0x240], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x248], rax
lea rax, [rsp + 0x240]
mov qword [rsp + 0x730], rax
lea rax, str._rustc_3f5fd8dd41153bc5fdca9427e9e05be2c767ba23library_std_src_synconce.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x006e02f0]
mov dl, 1
mov r8, r15
lea r9, [0x006c95b8]
call fcn.004880d0
mov r8, qword [0x006e0300]
mov r9, qword [0x006e0308]
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x170]
call fcn.004c16bc
test al, al
je 0x4105cc
mov ecx, 0x20
call fcn.00408188
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rcx, [0x004caa80]
jmp 0x41065a
mov rcx, r15
lea rdx, [rsp + 0x160]
call fcn.00407a07
movups xmm0, xmmword [rsp + 0x730]
movups xmm1, xmmword [rsp + 0x740]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
imul rax, qword [0x006e0308], 0x18
mov rcx, qword [0x006e0300]
add rax, rcx
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x250], xmm1
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x268], rax
mov ecx, 0x50
call fcn.00408188
mov ecx, 0xa
mov rdi, rax
lea rsi, [rsp + 0x240]
rep movsq qword [rdi], qword [rsi]
lea rcx, fcn.00405d72
mov qword [rsp + 0x20], rcx
mov rcx, rbx
mov rdx, r14
mov r8, r12
mov r9, rax
call fcn.004073ca
mov rsi, qword [rsp + 0x9a0]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x4104b1
mov rax, qword [rsp + 0x9b8]
mov qword [rsp + 0x4f8], rax
movups xmm0, xmmword [rsp + 0x9a8]
movups xmmword [rsp + 0x4e8], xmm0
mov rbp, qword [rsp + 0x30]
movabs r13, 0x8000000000000000
jmp 0x410839
mov r15, qword [rsp + 0xd8]
mov rbp, qword [rsp + 0x30]
movabs r13, 0x8000000000000000
lea rsi, [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
mov rcx, r15
call fcn.00405bf5
and qword [rsp + 0xd8], 0
mov r8, qword [rsp + 0xe8]
test r8, r8
je 0x410738
mov rdx, qword [rsp + 0x140]
mov r9, qword [rsp + 0xf0]
lea rcx, [rsp + 0x240]
call fcn.00401bfd
mov rsi, qword [rsp + 0x240]
cmp rsi, r13
jne 0x410761
mov rcx, qword [rsp + 0xe8]
jmp 0x41073a
xor ecx, ecx
lea rsi, [rsp + 0xe8]
mov rdx, qword [rsi + 8]
call fcn.00405bf5
and qword [rsp + 0xe8], 0
lea rcx, [rsp + 0x730]
jmp 0x41087f
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x748], rax
movups xmm0, xmmword [rsp + 0x248]
movups xmmword [rsp + 0x738], xmm0
movups xmm0, xmmword [rsp + 0x738]
movaps xmmword [rsp + 0x100], xmm0
mov rax, qword [rsp + 0x748]
jmp 0x410851
lea rcx, [rsp + 0xc00]
call fcn.00405dae
mov rcx, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0x30]
movabs r13, 0x8000000000000000
mov rsi, r12
mov rdx, qword [rsp + 0xc8]
call fcn.00405bf5
and qword [rsp + 0xc0], 0
mov r8, qword [rsp + 0xd0]
test r8, r8
je 0x41085b
mov rdx, qword [rsp + 0x50]
mov r9, qword [rsp + 0xd8]
lea rcx, [rsp + 0x240]
call fcn.00401bfd
mov rsi, qword [rsp + 0x240]
cmp rsi, r13
jne 0x410819
mov rcx, qword [rsp + 0xd0]
jmp 0x41085d
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x4f8], rax
movups xmm0, xmmword [rsp + 0x248]
movups xmmword [rsp + 0x4e8], xmm0
movups xmm0, xmmword [rsp + 0x4e8]
movaps xmmword [rsp + 0x100], xmm0
mov rax, qword [rsp + 0x4f8]
mov qword [rsp + 0x110], rax
jmp 0x41088a
xor ecx, ecx
lea rsi, [rsp + 0xd0]
mov rdx, qword [rsi + 8]
call fcn.00405bf5
and qword [rsp + 0xd0], 0
lea rcx, [rsp + 0x4e0]
mov qword [rcx], r13
call fcn.004067ff
mov rsi, r13
cmp rsi, r13
jne 0x4108a7
mov byte [rsp + 0x1d0], 0
mov qword [rsp + 0x1c8], r13
mov sil, 1
jmp 0x410b9b
movaps xmm0, xmmword [rsp + 0x100]
movups xmmword [rsp + 0x58], xmm0
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x50], rsi
mov rdi, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rcx, rdi
mov qword [rsp + 0x48], rdx
call fcn.004abdb0
mov r15, rax
mov r12, rdx
mov rcx, rdi
mov rdx, qword [rsp + 0x48]
call fcn.004ae0f0
mov qword [rsp + 0x40], rdx
test r15, r15
je 0x41093f
mov rbx, rax
test rax, rax
je 0x41093f
lea rcx, [rsp + 0x240]
mov rdx, r15
mov r8, r12
call fcn.004bda80
cmp dword [rsp + 0x250], 2
jne 0x410960
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x730], rax
mov dword [rsp + 0x740], 2
jmp 0x410b3a
lea rcx, [rsp + 0x58]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x250], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x240], xmm0
jmp 0x410b71
lea r15, [rsp + 0x730]
lea rdx, [rsp + 0x240]
mov r8d, 0x268
mov rcx, r15
call sub.msvcrt.dll_memcpy
cmp dword [r15 + 0x10], 2
je 0x410b3a
mov qword [rsp + 0x30], rbp
lea r15, [rsp + 0x240]
lea rdx, [rsp + 0x730]
mov r8d, 0x268
mov rcx, r15
call sub.msvcrt.dll_memcpy
lea rbp, [rsp + 0x9a0]
lea r12, [rsp + 0x4e0]
lea r14, [rsp + 0xc00]
mov rcx, rbp
mov rdx, r15
call fcn.004aa320
cmp qword [rsp + 0x9a0], 0
je 0x410aa0
cmp qword [rsp + 0x9a8], 0
je 0x410a8e
mov rsi, qword [rsp + 0x9a8]
mov r8d, 0x250
mov rcx, r12
lea rdx, [rsp + 0x9b0]
call sub.msvcrt.dll_memcpy
test rsi, rsi
je 0x4109c4
mov r8d, 0x250
lea rcx, [rsp + 0xc08]
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xc00], rsi
mov rcx, rbp
mov rsi, r14
mov rdx, r14
call fcn.004aa640
mov r13, qword [rsp + 0x9a8]
mov rdx, qword [rsp + 0x9b0]
mov rcx, r13
mov r8, rbx
mov r9, qword [rsp + 0x40]
call fcn.004c1793
mov r14d, eax
mov rcx, qword [rsp + 0x9a0]
mov rdx, r13
call fcn.00470f46
test r14b, r14b
jne 0x410aa7
mov r14, rsi
mov rcx, rsi
call fcn.004c1de5
movabs r13, 0x8000000000000000
jmp 0x4109c4
mov rcx, qword [rsp + 0x9b0]
call fcn.004c1df4
jmp 0x4109c4
mov rbp, qword [rsp + 0x30]
jmp 0x410b23
mov rcx, rdi
mov rdx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x30]
movabs r13, 0x8000000000000000
call fcn.004abdb0
test rax, rax
je 0x410ad4
cmp qword [rsp + 0x48], rdx
jb 0x410ad4
mov qword [rsp + 0x60], rdx
lea rcx, [rsp + 0x9a0]
lea rdx, [rsp + 0xc00]
call fcn.004aa640
mov rsi, qword [rsp + 0x9a8]
mov r8, qword [rsp + 0x9b0]
lea rcx, [rsp + 0x50]
mov rdx, rsi
call case.0x4aa970.58
mov rcx, qword [rsp + 0x9a0]
mov rdx, rsi
call fcn.00470f46
lea rcx, [rsp + 0xc00]
call fcn.004c1de5
lea rcx, [rsp + 0x240]
call fcn.004c1ea6
cmp dword [rsp + 0x740], 2
jne 0x410b47
lea rcx, [rsp + 0x730]
call fcn.004c1ec4
mov rsi, qword [rsp + 0x50]
lea rax, [rsp + 0x58]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x240], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x250], rax
cmp rsi, r13
je 0x41088f
mov qword [rsp + 0x1c8], rsi
movaps xmm0, xmmword [rsp + 0x240]
movups xmmword [rsp + 0x1d0], xmm0
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x1e0], rax
xor esi, esi
lea rcx, [rsp + 0x80]
call fcn.00405920
test sil, sil
jne 0x40fb6e
lea rcx, [rsp + 0x1c8]
call fcn.004067ff
mov al, 1
mov dword [rsp + 0x3c], eax
mov cl, 1
call fcn.0040da55
test rax, rax
je 0x410bd8
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx]
lea rdx, str.magiskbootcopy_magiskboot_failed_is_not_exist
lea rcx, [rsp + 0x4b0]
mov r8d, 0xa
call fcn.004bfb80
mov r14, qword [rbp]
xor ebx, ebx
movaps xmm0, xmmword [rsp + 0x4b0]
movaps xmm1, xmmword [rsp + 0x4c0]
mov rax, qword [rsp + 0x78]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
test bl, bl
jne 0x410c25
cmp r14, r13
je 0x410c25
mov rcx, rbp
call fcn.00405faa
nop
add rsp, 0xe58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x410c51
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x48], rax
mov rdx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x48]
call fcn.0042cfb0
jmp 0x410c6c
mov ecx, 8
mov edx, pe_nt_image_headers64
call fcn.0042cfb0
ud2