Function at 0x14001c47f
Capabilities:
Check if file exists
Create directory
Delete file
Get common file path
Move file
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa68
lea rax, [0x14008f0a4]
mov qword [rsp + 0x88], rax
lea rax, [0x14008f0a9]
mov qword [rsp + 0x90], rax
lea rax, [0x14008f0af]
mov qword [rsp + 0x98], rax
mov eax, dword [0x1400817a8]
mov qword [rsp + 0xab0], rcx
mov qword [rsp + 0xab8], rdx
test eax, eax
je 0x14001d852
test rcx, rcx
je 0x14001d850
test rdx, rdx
je 0x14001d850
test r8d, r8d
lea rax, [0x14008f08f]
lea rsi, [0x14008e5db]
mov dword [0x1400ff640], r8d
lea rcx, [0x140018c52]
cmovne rsi, rax
call fcn.140073e69
mov rax, qword [rsp + 0xab8]
cmp dword [0x1400ff640], 0
mov qword [0x1400ff668], rax
je 0x14001c5ad
lea rcx, str.ISO_analysis:
xor edi, edi
xor ebp, ebp
call fcn.1400380b9
mov rax, qword [0x1400b4b90]
xor r9d, r9d
mov r8d, 8
mov edx, 0x8002
mov rcx, qword [rax]
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, 8
lea rcx, [0x1400ff630]
mov qword [0x1400ff658], rdi
mov qword [0x1400ff650], rdi
mov dword [0x1400fee00], ebp
call fcn.140036916
mov edx, 8
lea rcx, [0x1400ff620]
call fcn.140036916
mov r9d, 0xc82
xor r8d, r8d
xor edx, edx
mov ecx, 1
call fcn.14001e4cb
jmp 0x14001c63a
lea rcx, str.Extracting_files..._n
call fcn.1400380b9
mov rcx, qword [0x1400b46e0]
call fcn.140019c5f
mov rbx, rax
mov rcx, rax
call qword [sym.imp.msvcrt.dll__wchdir]
test rbx, rbx
je 0x14001c5de
mov rcx, rbx
call sub.msvcrt.dll_free
cmp qword [0x1400ff658], 0
jne 0x14001c612
lea rcx, str.Error:_ISO_has_not_been_properly_scanned._n
xor esi, esi
call fcn.1400380b9
mov rax, qword [0x1400b42b0]
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x58], rsi
mov dword [rax], 0xe0031207
jmp 0x14001c75b
xor ebx, ebx
mov edx, 8
lea rcx, [0x1400ff610]
mov byte [0x1400ff500], 0
mov qword [0x1400ff648], rbx
mov qword [0x1400817b0], rbx
call fcn.140036916
mov rcx, qword [rsp + 0xab0]
call fcn.140072e7e
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14001c6e8
mov rdx, rsi
lea rcx, str._sImage_is_a_UDF_image
call fcn.1400380b9
mov rcx, qword [rsp + 0x60]
xor r8d, r8d
mov edx, 1
call fcn.140073108
mov rbx, rax
test rax, rax
jne 0x14001c68f
mov rdx, rsi
lea rcx, str._sCould_not_locate_UDF_root_directory
call fcn.1400380b9
jmp 0x14001c6e8
xor r11d, r11d
cmp dword [0x1400ff640], 0
mov qword [rsp + 0x58], r11
je 0x14001c6d4
mov rcx, qword [rsp + 0x60]
mov r8d, 0xc0
lea rdx, [0x1400fee20]
call fcn.140073075
test eax, eax
jg 0x14001c6c2
mov byte [0x1400fee20], 0
mov rcx, qword [rsp + 0xab0]
call fcn.140071364
mov qword [rsp + 0x58], rax
lea rdx, [0x14008e5db]
mov rcx, rbx
call fcn.140019ea4
jmp 0x14001c865
cmp dword [0x1400817a4], 0
mov eax, dword [0x1400817a0]
je 0x14001c71d
test eax, eax
je 0x14001c725
cmp dword [0x1400ff640], 0
mov bl, 0xf8
jne 0x14001c72a
cmp byte [0x1400ff382], 0
jne 0x14001c72a
cmp byte [0x1400ff380], 1
mov al, 0xff
cmovne ebx, eax
jmp 0x14001c72a
mov bl, 0xf8
test eax, eax
jne 0x14001c72a
jmp 0x14001c727
mov bl, 0xff
and ebx, 0xfffffff7
mov rcx, qword [rsp + 0xab0]
movzx edx, bl
call fcn.140071356
mov qword [rsp + 0x58], rax
test rax, rax
jne 0x14001c765
mov r8, qword [rsp + 0xab0]
mov rdx, rsi
lea rcx, str._s_s_doesnt_look_like_an_ISO_image
call fcn.1400380b9
mov ebx, 1
jmp 0x14001c867
mov rdx, rsi
lea rcx, str._sImage_is_an_ISO9660_image
call fcn.1400380b9
mov rcx, qword [rsp + 0x58]
call fcn.1400706ce
cmp dword [0x1400ff640], 0
mov byte [0x1400ff660], al
je 0x14001c81a
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x70]
call fcn.140070745
test al, al
je 0x14001c811
mov rbx, qword [rsp + 0x70]
mov ecx, 1
test rbx, rbx
je 0x14001c7cb
mov rcx, rbx
call sub.msvcrt.dll_strlen
lea rcx, [rax + 1]
mov eax, 0xc0
cmp rcx, rax
cmova rcx, rax
lea rbp, [0x1400fee20]
mov ecx, ecx
mov rsi, rbx
mov rdi, rbp
rep movsb byte [rdi], byte [rsi]
mov rcx, rbx
call sub.msvcrt.dll_strlen
lea rdx, [rbp + 0xbf]
lea rcx, [rax + 1]
cmp rcx, 0xbf
ja 0x14001c7fc
lea rdx, [rax + rbp]
mov byte [rdx], 0
mov rcx, rbx
call sub.msvcrt.dll_free
xor r10d, r10d
mov qword [rsp + 0x70], r10
jmp 0x14001c854
mov byte [0x1400fee20], 0
jmp 0x14001c854
test bl, 0xf
je 0x14001c845
and bl, 7
lea rax, str.Joliet
mov rdx, rsi
lea r8, str.Rock_Ridge
lea rcx, str._sThis_image_will_be_extracted_using__s_extensions__if_present_
cmovne r8, rax
call fcn.1400380b9
jmp 0x14001c854
mov rdx, rsi
lea rcx, str._sThis_image_will_not_be_extracted_using_any_ISO_extensions
call fcn.1400380b9
mov rcx, qword [rsp + 0x58]
lea rdx, [0x14008e5db]
call fcn.14001a44c
mov ebx, eax
cmp dword [0x1400ff640], 0
mov qword [0x1400817b0], 0xffffffffffffffff
je 0x14001d174
lea rbp, [rsp + 0x260]
mov rcx, qword [rsp + 0x58]
mov rdx, rbp
call fcn.1400709b5
test al, al
je 0x14001c8e9
mov rcx, qword [rsp + 0xab0]
call fcn.140019c5f
lea rdx, [rsp + 0xa0]
mov rsi, rax
mov rcx, rax
call qword [sym.imp.msvcrt.dll__wstat64]
mov edi, eax
test rsi, rsi
je 0x14001c8c8
mov rcx, rsi
call sub.msvcrt.dll_free
test edi, edi
jne 0x14001c8e9
mov rcx, rbp
call fcn.14006fb27
cdqe
shl rax, 0xb
sub rax, qword [rsp + 0xb8]
mov qword [0x1400ff368], rax
lea rdi, [0x1400fee20]
mov rcx, rdi
call sub.msvcrt.dll_strlen
mov rbp, qword [sym.imp.msvcrt.dll_isspace]
lea esi, [rax - 1]
movsxd rsi, esi
test esi, esi
jle 0x14001c91c
movzx ecx, byte [rdi + rsi]
call rbp
test eax, eax
je 0x14001c91c
mov byte [rdi + rsi], 0
dec rsi
jmp 0x14001c905
mov rax, qword [0x1400ff658]
shl rax, 0xb
cmp dword [0x1400ff638], 0
mov qword [0x1400ff360], rax
je 0x14001ce0f
lea r15, [0x1400fefa0]
mov ecx, 0x7f
mov al, 0x5f
xor ebp, ebp
mov rdi, r15
mov byte [0x1400ff01f], 0
mov r13, qword [sym.imp.msvcrt.dll__stricmp]
lea r14, str._boot_i386_loader_isolinux.cfg
rep stosb byte [rdi], al
mov eax, dword [0x1400ff638]
cmp rbp, rax
jae 0x14001ca9b
mov rax, qword [0x1400ff630]
lea r12, [rbp*8]
mov rdx, r14
mov rcx, qword [rax + rbp*8]
call r13
test eax, eax
jne 0x14001c9c0
add r12, qword [0x1400ff630]
mov ecx, 1
mov rsi, qword [r12]
test rsi, rsi
je 0x14001c9db
mov rcx, rsi
call sub.msvcrt.dll_strlen
lea rcx, [rax + 1]
mov eax, pe_nt_image_headers64
cmp rcx, rax
cmova rcx, rax
jmp 0x14001c9db
mov rax, qword [0x1400ff630]
lea rdx, str._boot_x86_64_loader_isolinux.cfg
mov rcx, qword [rax + rbp*8]
call r13
test eax, eax
jne 0x14001ca1c
jmp 0x14001c991
mov ecx, ecx
lea rdi, [0x1400fefa0]
lea rdx, [0x1400fefa0]
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [r12]
test rcx, rcx
je 0x14001ca10
call sub.msvcrt.dll_strlen
lea rdx, [0x1400ff01f]
lea rcx, [rax + 1]
cmp rcx, 0x7f
ja 0x14001ca10
lea rdx, [r15 + rax]
mov byte [rdx], 0
mov byte [0x1400ff38f], 1
jmp 0x14001ca9b
mov rcx, r15
call sub.msvcrt.dll_strlen
add r12, qword [0x1400ff630]
mov rsi, qword [r12]
mov rdi, rax
test rsi, rsi
je 0x14001ca56
mov rcx, rsi
call sub.msvcrt.dll_strlen
cmp rdi, rax
jb 0x14001ca93
lea rcx, [rax + 1]
mov eax, pe_nt_image_headers64
cmp rcx, rax
cmova rcx, rax
jmp 0x14001ca5b
mov ecx, 1
mov ecx, ecx
lea rdi, [0x1400fefa0]
lea rdx, [0x1400fefa0]
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [r12]
test rcx, rcx
je 0x14001ca90
call sub.msvcrt.dll_strlen
lea rdx, [0x1400ff01f]
lea rcx, [rax + 1]
cmp rcx, 0x7f
ja 0x14001ca90
lea rdx, [r15 + rax]
mov byte [rdx], 0
inc rbp
jmp 0x14001c965
mov rdx, r15
lea rcx, str.__Will_use__s_for_Syslinux
xor esi, esi
xor ebp, ebp
call fcn.1400380b9
mov eax, dword [0x1400ff628]
cmp rbp, rax
jae 0x14001cd35
lea r13, [rsp + 0x15c]
mov r9, qword [0x1400b4f20]
lea r8, str._sisolinux.tmp
mov edx, 0x104
mov rcx, r13
lea rdi, [rbp*8]
call qword [sym.imp.msvcrt.dll__snprintf]
mov rax, qword [0x1400ff620]
mov r8, r13
mov byte [rsp + 0x25f], 0
mov rcx, qword [rsp + 0xab0]
mov r9d, pe_nt_image_headers64
mov rdx, qword [rax + rbp*8]
call fcn.14001b66b
mov r12, rax
test rax, rax
jne 0x14001cb36
mov rax, qword [0x1400ff620]
lea rcx, str.__Could_not_access__s
mov rdx, qword [rax + rbp*8]
call fcn.1400380b9
jmp 0x14001cd20
mov edx, 1
mov rcx, rax
call sub.msvcrt.dll_calloc
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14001cd35
mov rcx, r13
lea rdx, [0x14008f281]
call sub.msvcrt.dll_fopen
mov r13, rax
test rax, rax
jne 0x14001cb77
mov rcx, qword [rsp + 0x50]
call sub.msvcrt.dll_free
jmp 0x14001cd2d
mov rcx, qword [rsp + 0x50]
mov r9, rax
mov r8, r12
mov edx, 1
call sub.msvcrt.dll_fread
mov rcx, r13
lea r13, [0x1400ff3aa]
call sub.msvcrt.dll_fclose
mov rcx, qword [rsp + 0x50]
mov rdx, r12
lea r8, [rsp + 0x80]
call fcn.140040924
mov r9d, dword [0x1400ff39c]
mov r14, qword [rsp + 0x80]
mov r12d, eax
test r9w, r9w
jne 0x14001cbf4
mov ecx, 1
test r14, r14
je 0x14001cbea
mov rcx, r14
call sub.msvcrt.dll_strlen
lea rcx, [rax + 1]
mov eax, 0x20
cmp rcx, rax
cmova rcx, rax
mov ecx, ecx
mov rdi, r13
jmp 0x14001cce5
cmp r9w, ax
jne 0x14001cc22
test r14, r14
lea rdx, [0x14008e3c0]
mov rcx, r13
mov dword [rsp + 0x6c], r9d
cmovne rdx, r14
call sub.msvcrt.dll_strcmp
mov r9d, dword [rsp + 0x6c]
test eax, eax
je 0x14001cd16
mov rax, qword [0x1400ff620]
mov edx, r9d
movzx ecx, r12b
lea r13, [0x1400ff3aa]
movzx edx, dh
movzx r9d, r9b
mov r8d, edx
mov rdx, qword [rax + rsi*8]
mov dword [rsp + 0x38], ecx
mov ecx, r12d
movzx ecx, ch
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x30], ecx
mov rax, qword [rax + rdi]
lea rcx, str.__Found_conflicting_isolinux_versions:_n___s___d._02d_s__vs__s___d._02d_s_
mov qword [rsp + 0x20], r13
mov qword [rsp + 0x28], rax
call fcn.1400380b9
mov rcx, r15
call sub.msvcrt.dll_strlen
mov r8, rax
test r8, r8
je 0x14001cc8e
cmp byte [r15 + r8], 0x2f
je 0x14001cc8e
dec r8
jmp 0x14001cc7d
mov rax, qword [0x1400ff620]
mov rdx, qword [rax + rdi]
test rdx, rdx
jne 0x14001cca5
lea rdx, [0x14008e3c0]
mov rcx, r15
call qword [sym.imp.msvcrt.dll__strnicmp]
test eax, eax
jne 0x14001cd16
mov r14, qword [rsp + 0x80]
mov ecx, 1
test r14, r14
je 0x14001ccdc
mov rcx, r14
call sub.msvcrt.dll_strlen
lea rcx, [rax + 1]
mov eax, 0x20
cmp rcx, rax
cmova rcx, rax
mov ecx, ecx
lea rdi, [0x1400ff3aa]
mov rsi, r14
rep movsb byte [rdi], byte [rsi]
mov rcx, r14
call sub.msvcrt.dll_strlen
lea rdx, [0x1400ff3c9]
lea rcx, [rax + 1]
cmp rcx, 0x1f
ja 0x14001cd08
lea rdx, [r13 + rax]
mov byte [rdx], 0
mov rsi, rbp
mov word [0x1400ff39c], r12w
mov rcx, qword [rsp + 0x50]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x15c]
call fcn.14001afc4
inc rbp
jmp 0x14001caae
mov eax, dword [0x1400ff39c]
lea rdi, [0x1400ff39e]
test ax, ax
je 0x14001cdb9
movzx edx, ah
movzx eax, al
lea r8, [0x14008f2d2]
mov rcx, rdi
mov r9d, edx
mov dword [rsp + 0x20], eax
mov edx, 0xc
call qword [sym.imp.msvcrt.dll__snprintf]
mov rax, qword [0x1400ff620]
lea r8, [rdi + 0xc]
mov rdx, rdi
mov byte [0x1400ff3a9], 0
lea rcx, str.__Detected_Syslinux_version:__s_s__from__s_
mov r9, qword [rax + rsi*8]
call fcn.1400380b9
cmp dword [0x1400fee00], 0
mov eax, dword [0x1400ff39c]
je 0x14001cda5
cmp ax, 0x4ff
jbe 0x14001cdab
jmp 0x14001ce0f
cmp ax, 0x4ff
jbe 0x14001ce0f
lea rcx, str.__Warning:_Conflict_between_Isolinux_version_and_the_presence_of_ldlinux.c32...
call fcn.1400380b9
jmp 0x14001ce0f
mov rax, qword [0x1400b48f0]
xor edx, edx
cmp dword [0x1400fee00], 0
mov rcx, rdi
setne dl
lea r8, [0x14008f2d2]
mov ax, word [rax + rdx*2]
mov edx, 0xc
mov word [0x1400ff39c], ax
movzx esi, ah
movzx eax, al
mov dword [rsp + 0x20], eax
mov r9d, esi
call qword [sym.imp.msvcrt.dll__snprintf]
mov rdx, rdi
lea rcx, str.__Warning:_Could_not_detect_Isolinux_version___Forcing_to__s__embedded_
mov byte [0x1400ff3a9], 0
call fcn.1400380b9
cmp word [0x1400ff37c], 0
jne 0x14001ce34
cmp byte [0x1400ff2cc], 0
je 0x14001ce34
call fcn.14001bbbe
test eax, eax
je 0x14001ce34
mov word [0x1400ff37c], 0x8000
mov ax, word [0x1400ff37a]
mov edx, eax
not edx
and dl, 7
je 0x14001ce60
mov edx, eax
not edx
test dl, 0x23
je 0x14001ce64
mov eax, edx
test ax, 0x1c0
jne 0x14001cf48
mov eax, 2
jmp 0x14001ce69
xor eax, eax
jmp 0x14001ce69
mov eax, 1
lea rsi, [rsp + 0x15c]
mov r9, qword [rsp + rax*8 + 0x88]
xor edi, edi
lea r8, str.__s_txtsetup.sif
mov edx, 0x104
mov rcx, rsi
lea rbp, str.._txtsetup.sif
call qword [sym.imp.msvcrt.dll__snprintf]
mov rcx, qword [rsp + 0xab0]
mov r9d, pe_nt_image_headers64
lea r8, str.._txtsetup.sif
mov rdx, rsi
mov byte [rsp + 0x25f], 0
call fcn.14001b66b
mov r8d, 1
mov rdx, rbp
lea rcx, str.OsLoadOptions
call fcn.1400231ca
mov r12, qword [sym.imp.msvcrt.dll_tolower]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x14001cf2e
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
call sub.msvcrt.dll_strlen
cmp rdi, rax
jae 0x14001cf04
add rsi, rdi
inc rdi
movsx ecx, byte [rsi]
call r12
mov byte [rsi], al
jmp 0x14001cee2
mov rdx, rsi
lea rcx, str.__Checking_txtsetup.sif:_n__OsLoadOptions___s
call fcn.1400380b9
mov rcx, qword [rsp + 0x70]
lea rdx, str._minint
call sub.msvcrt.dll_strstr
test rax, rax
setne byte [0x1400ff392]
mov rcx, rbp
call fcn.14001afc4
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
xor r9d, r9d
mov qword [rsp + 0x70], r9
cmp byte [0x1400ff37f], 0
je 0x14001cf64
mov rcx, qword [rsp + 0xab0]
call fcn.14001b9c9
mov dword [0x1400ff370], eax
movzx eax, byte [0x1400ff38c]
test al, al
je 0x14001d13c
dec eax
lea rdx, str._boot_grub_i386_pc
lea r14, [rsp + 0xdc]
cdqe
lea r8, str._s_normal.mod
mov rcx, r14
mov rax, qword [rdx + rax*8]
mov edx, pe_nt_image_headers64
lea r9, [rax + 1]
call qword [sym.imp.msvcrt.dll__snprintf]
mov rcx, qword [0x1400b4f20]
mov byte [rsp + 0x15b], 0
mov byte [0x1400ff3ca], 0
call fcn.140019c5f
lea rcx, [0x14008e7c2]
mov r12, rax
call fcn.140019c5f
mov edx, 2
mov ecx, 0x104
mov r13, rax
call sub.msvcrt.dll_calloc
xor r8d, r8d
mov rdx, r13
mov rcx, r12
mov r9, rax
mov rbp, rax
call qword [sym.imp.KERNEL32.DLL_GetTempFileNameW]
mov r15, qword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
call r15
mov edi, eax
test esi, esi
je 0x14001d047
xor r8d, r8d
or r9d, 0xffffffff
xor edx, edx
mov ecx, 0xfde9
lea rax, [rsp + 0x15c]
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r8
mov r8, rbp
mov dword [rsp + 0x28], 0x104
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov esi, eax
test eax, eax
jne 0x14001d047
call r15
mov edi, eax
test rbp, rbp
je 0x14001d054
mov rcx, rbp
call sub.msvcrt.dll_free
test r13, r13
je 0x14001d061
mov rcx, r13
call sub.msvcrt.dll_free
test r12, r12
je 0x14001d06e
mov rcx, r12
call sub.msvcrt.dll_free
mov ecx, edi
call qword [sym.imp.KERNEL32.DLL_SetLastError]
test esi, esi
je 0x14001d120
mov rcx, qword [rsp + 0xab0]
lea rbp, [rsp + 0x15c]
mov r9d, pe_nt_image_headers64
mov rdx, r14
mov r8, rbp
call fcn.14001b66b
mov edx, 1
mov rcx, rax
mov rdi, rax
call sub.msvcrt.dll_calloc
lea rdx, [0x14008f281]
mov rcx, rbp
mov rsi, rax
call sub.msvcrt.dll_fopen
test rsi, rsi
mov r12, rax
sete al
test r12, r12
sete dl
or al, dl
jne 0x14001d0d9
test rdi, rdi
jne 0x14001d0ea
mov rdx, r14
lea rcx, str.__Could_not_read_Grub_version_from__s
call fcn.1400380b9
jmp 0x14001d110
mov edx, 1
mov r9, r12
mov r8, rdi
mov rcx, rsi
call sub.msvcrt.dll_fread
mov rcx, r12
call sub.msvcrt.dll_fclose
mov rdx, rdi
mov rcx, rsi
call fcn.14001b404
mov rcx, rsi
call sub.msvcrt.dll_free
mov rcx, rbp
call fcn.14001afc4
cmp byte [0x1400ff3ca], 0
jne 0x14001d13c
lea rcx, str.__Could_not_detect_Grub_version
call fcn.1400380b9
mov byte [0x1400ff38c], 0
lea rcx, [0x1400ff630]
call fcn.140036a83
lea rcx, [0x1400ff620]
call fcn.140036a83
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8003
mov rax, qword [0x1400b4b90]
mov rcx, qword [rax]
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x14001d812
cmp word [0x1400ff37c], 0x8000
jne 0x14001d18e
mov rcx, qword [rsp + 0xab8]
xor edx, edx
call fcn.14001be72
lea rax, [rsp + 0x15c]
cmp word [0x1400ff39c], 0
mov rbp, qword [sym.imp.msvcrt.dll__snprintf]
mov qword [rsp + 0x50], rax
je 0x14001d4df
mov r9, qword [rsp + 0xab8]
lea r8, str._s_syslinux.cfg
mov edx, 0x104
mov rcx, rax
call rbp
mov rcx, qword [rsp + 0x50]
lea rdx, [0x14008f46b]
mov byte [rsp + 0x25f], 0
call sub.msvcrt.dll_fopen
mov rsi, rax
test rax, rax
je 0x14001d249
cmp byte [0x1400ff38f], 0
je 0x14001d2fe
lea rsi, [rsp + 0xa0]
mov rcx, rax
call sub.msvcrt.dll_fclose
mov r9, qword [rsp + 0xab8]
mov edx, 0x10
mov rcx, rsi
lea r8, str._s_syslinux.org
call rbp
mov rdx, qword [rsp + 0x50]
mov r8, rsi
lea rcx, str.Renaming:__s___s
mov byte [rsp + 0xaf], 0
call fcn.1400380b9
mov rcx, qword [rsp + 0x50]
mov rdx, rsi
call sub.msvcrt.dll_rename
mov rcx, qword [rsp + 0x50]
lea rdx, [0x14008f491]
call sub.msvcrt.dll_fopen
mov rsi, rax
test rax, rax
jne 0x14001d27d
mov rdx, qword [rsp + 0x50]
lea rcx, str.Unable_to_create__s___booting_from_USB_will_not_work
mov ebx, 1
call fcn.1400380b9
jmp 0x14001d306
lea r8, [0x1400fefa0]
lea rdx, str.DEFAULT_loadconfig_n_nLABEL_loadconfig_n__CONFIG__s_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
lea r12, [0x1400fefa0]
mov rcx, r12
call sub.msvcrt.dll_strlen
mov rdi, rax
test rdi, rdi
je 0x14001d2e6
cmp byte [r12 + rdi], 0x2f
je 0x14001d2b6
dec rdi
jmp 0x14001d2a5
lea r12, [0x1400fee20]
lea rdx, str.__APPEND__s__n
mov rcx, rsi
lea r8, [r12 + 0x180]
mov byte [r12 + rdi + 0x180], 0
call sub.msvcrt.dll_fprintf
mov byte [r12 + rdi + 0x180], 0x2f
mov rdx, qword [rsp + 0x50]
lea r8, [0x1400fefa0]
lea rcx, str.Created:__s___s
call fcn.1400380b9
mov rcx, rsi
call sub.msvcrt.dll_fclose
cmp byte [0x1400ff500], 0
lea r12, [0x1400ff500]
je 0x14001d512
mov rcx, r12
mov rsi, r12
call sub.msvcrt.dll_strlen
mov r13, rax
lea rax, [rsp + 0x260]
mov rdi, rax
lea ecx, [r13 + 1]
rep movsb byte [rdi], byte [rsi]
mov rcx, r12
call sub.msvcrt.dll_strlen
mov r8d, 0x525
lea rdx, str.iso.c
lea rcx, str.len___8
mov byte [rsp + rax + 0x260], 0
cmp r13, 8
jbe 0x14001d5fa
mov rcx, r12
xor r14d, r14d
mov byte [rsp + r13 + 0x258], 0x69
lea rsi, str.syslnx32.cfg
mov byte [rsp + r13 + 0x259], 0x73
mov byte [rsp + r13 + 0x25a], 0x6f
call qword [sym.imp.KERNEL32.DLL_DeleteFileA]
xor edx, edx
mov rcx, r12
call qword [sym.imp.KERNEL32.DLL_CreateDirectoryA]
mov rdi, qword [sym.imp.SHLWAPI.dll_PathFileExistsA]
mov r13, qword [rsi + r14*8]
lea r15, [rsp + 0x260]
mov rcx, qword [rsp + 0x50]
lea r8, [0x14008ea39]
mov r9, r15
mov edx, 0x104
mov qword [rsp + 0x20], r13
call rbp
mov byte [rsp + 0x25f], 0
mov rcx, qword [rsp + 0x50]
call rdi
test eax, eax
je 0x14001d4cf
mov rcx, qword [rsp + 0x50]
mov edx, 0x104
mov qword [rsp + 0x20], r13
lea r9, [0x1400ff500]
lea r8, [0x14008ea39]
call rbp
mov rcx, qword [rsp + 0x50]
lea rdx, [0x14008f491]
mov byte [rsp + 0x25f], 0
call sub.msvcrt.dll_fopen
mov r12, rax
test rax, rax
jne 0x14001d440
mov rdx, qword [rsp + 0x50]
lea rcx, str.Unable_to_create__s___booting_from_USB_may_not_work
mov ebx, 1
call fcn.1400380b9
jmp 0x14001d4cf
mov r9, r15
mov rcx, qword [rsp + 0x50]
mov edx, 0x104
lea r15, [rsp + 0x15e]
lea r8, [0x14008ea39]
mov qword [rsp + 0x20], r13
call rbp
lea r9, [rsp + 0x262]
mov r8, r15
mov rcx, r12
lea rdx, str.DEFAULT_loadconfig_n_nLABEL_loadconfig_n__CONFIG__s_n__APPEND__s_n
mov byte [rsp + 0x25f], 0
call sub.msvcrt.dll_fprintf
mov rcx, r12
lea r12, [0x1400ff500]
call sub.msvcrt.dll_fclose
mov edx, 0x2f
mov rcx, r12
mov r9, r15
mov r8d, 0x5c
call fcn.140019632
mov r8, r13
mov rdx, r12
lea rcx, str.Created:__s_s___s
call fcn.1400380b9
mov r8d, 0x2f
mov edx, 0x5c
mov rcx, r12
call fcn.140019632
test r14, r14
jne 0x14001d512
mov r14d, 1
jmp 0x14001d3a7
cmp word [0x1400ff384], 0
je 0x14001d512
mov rax, qword [0x1400b4970]
cmp dword [rax], 0
je 0x14001d512
xor r9d, r9d
mov rdx, qword [rsp + 0xab8]
mov r8d, 1
lea rcx, str.compact__u_bootmgr_efi_boot_.efi
call fcn.140036fa1
mov rcx, qword [rsp + 0x50]
mov r9, qword [rsp + 0xab8]
mov edx, 0x104
lea r8, str._s_slax_bootEFI
call rbp
mov byte [rsp + 0x25f], 0
mov rcx, qword [rsp + 0x50]
mov rdi, qword [sym.imp.SHLWAPI.dll_PathFileExistsA]
call rdi
test eax, eax
je 0x14001d5bd
lea rsi, [rsp + 0x260]
mov r9, qword [rsp + 0xab8]
mov edx, 0x10
lea r8, str._sEFI
mov rcx, rsi
call rbp
mov byte [rsp + 0x26f], 0
mov rcx, rsi
call rdi
test eax, eax
jne 0x14001d5bd
mov rcx, qword [rsp + 0x50]
mov rdx, rsi
call qword [sym.imp.KERNEL32.DLL_MoveFileA]
test eax, eax
je 0x14001d5a1
mov rdx, qword [rsp + 0x50]
mov r8, rsi
lea rcx, str.Moved:__s___s
call fcn.1400380b9
jmp 0x14001d5bd
call fcn.140038579
mov rdx, qword [rsp + 0x50]
mov r8, rsi
lea rcx, str.Could_not_move__s___s
mov r9, rax
call fcn.1400380b9
movzx eax, byte [0x1400ff37e]
xor ecx, ecx
lea rdi, [0x1400ff610]
mov qword [rsp + 0x78], rcx
test al, al
mov qword [rsp + 0x80], rcx
je 0x14001d7a8
cmp al, 2
jbe 0x14001d600
mov r8d, 0x1e3
lea rdx, str.iso.c
lea rcx, str.img_report.has_md5sum___ARRAYSIZE_md5sum_name_
call qword [sym.imp.msvcrt.dll__wassert]
dec eax
lea rdx, str.MD5SUMS
lea rsi, [rsp + 0x260]
mov r9, qword [0x1400ff668]
cdqe
lea r8, [0x14008f67a]
mov rcx, rsi
mov qword [rsp + 0x50], rsi
mov rax, qword [rdx + rax*8]
mov edx, 0x40
mov qword [rsp + 0x20], rax
call rbp
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0x80]
mov byte [rsp + 0x29f], 0
call fcn.140038237
mov ebp, eax
test eax, eax
je 0x14001d7a8
xor r12d, r12d
mov r14d, 1
lea r15, [rsp + 0x78]
cmp r12d, dword [0x1400ff618]
mov rcx, qword [rsp + 0x80]
jae 0x14001d78b
mov rax, qword [rdi]
mov r13d, r12d
mov rdx, qword [rax + r13*8]
add rdx, 2
call sub.msvcrt.dll_strstr
mov rsi, rax
test rax, rax
je 0x14001d783
test r14d, r14d
je 0x14001d6b5
mov rdx, qword [rsp + 0x50]
lea rcx, str.Updating__s:
call fcn.1400380b9
mov rax, qword [rdi]
lea rcx, [0x14008f68d]
mov rdx, qword [rax + r13*8]
add rdx, 2
call fcn.1400380b9
mov rax, qword [rdi]
mov rdx, r15
mov r14, qword [rsp + 0x80]
mov rcx, qword [rax + r13*8]
call fcn.140038237
test eax, eax
jne 0x14001d6ef
xor r14d, r14d
jmp 0x14001d783
mov rdx, qword [rsp + 0x78]
mov r8d, eax
xor ecx, ecx
sub rsi, r14
lea r13, [rsp + 0xdc]
mov r9, r13
call fcn.140017ee8
mov rcx, qword [rsp + 0x78]
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x80]
test rsi, rsi
jle 0x14001d72f
cmp byte [rax + rsi - 1], 0xa
je 0x14001d72f
dec rsi
jmp 0x14001d71e
lea rax, [rsi + 1]
add rsi, 0x21
mov dl, byte [r13]
shr dl, 4
lea ecx, [rdx + 0x57]
cmp dl, 9
ja 0x14001d749
lea ecx, [rdx + 0x30]
mov rdx, qword [rsp + 0x80]
mov byte [rdx + rax - 1], cl
mov dl, byte [r13]
and edx, 0xf
lea ecx, [rdx + 0x57]
cmp dl, 9
ja 0x14001d767
lea ecx, [rdx + 0x30]
mov rdx, qword [rsp + 0x80]
inc r13
mov byte [rdx + rax], cl
add rax, 2
cmp rax, rsi
jne 0x14001d737
jmp 0x14001d6e7
inc r12d
jmp 0x14001d66b
mov rdx, rcx
mov rcx, qword [rsp + 0x50]
mov r8d, ebp
call fcn.140038317
mov rcx, qword [rsp + 0x80]
call sub.msvcrt.dll_free
mov rcx, rdi
call fcn.140036a83
mov rsi, qword [0x1400b4710]
mov rdx, qword [rsi]
test rdx, rdx
je 0x14001d812
lea rcx, str._Adding_files_from__s
call fcn.1400380b9
xor eax, eax
xor edx, edx
xor r9d, r9d
mov qword [rsp + 0x30], rax
lea rax, [0x140018c5e]
xor r8d, r8d
mov ecx, 0x40000
mov qword [rsp + 0x20], rdx
xor edx, edx
mov qword [rsp + 0x28], rax
call fcn.14004bf1d
mov rdx, qword [rsp + 0xab8]
mov rcx, qword [rsi]
mov r8d, 1
call fcn.14004bceb
call fcn.14004bfb4
mov rcx, qword [rsp + 0x58]
call fcn.140070683
mov rcx, qword [rsp + 0x60]
call fcn.14007327d
test ebx, ebx
je 0x14001d847
mov rdx, qword [0x1400b42b0]
cmp dword [rdx], 0
jne 0x14001d847
mov eax, dword [0x1400ff640]
neg eax
sbb eax, eax
sub eax, 0x1ffcedf8
mov dword [rdx], eax
xor eax, eax
test ebx, ebx
sete al
jmp 0x14001d852
xor eax, eax
add rsp, 0xa68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret