Function at 0x1400e03d0
Capabilities:
Read file on windows
Set current directory

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x368]
sub rsp, 0x468
mov rax, qword [0x1401900d0]
xor rax, rsp
mov qword [rbp + 0x350], rax
mov rax, r9
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x48], r8
mov rbx, rdx
mov qword [rbp - 0x38], rdx
mov qword [rbp + 0x88], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], rax
xor r15d, r15d
mov esi, r15d
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
mov qword [rbp + 0x40], r15
mov rcx, r9
cmp qword [r9 + 0x18], 8
jb 0x1400e0441
mov rcx, qword [r9]
xor edx, edx
call fcn.1401216b8
cmp eax, 0xffffffff
je 0x1400e1541
mov ecx, 0x4000
call fcn.14011e2ec
mov r13, rax
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x1400e0533
call fcn.140061ec0
mov rcx, rax
mov r8b, 1
lea rdx, str.Error_allocating_memory
call fcn.1400616d0
nop
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x1400e04ee
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e04aa
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e0495
mov rbx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400e04da
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e163a
mov rcx, rbx
call fcn.140105840
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r15
mov rsi, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x38]
call fcn.14000d260
nop
mov rcx, qword [rbp - 0x48]
call fcn.14000d260
nop
mov rcx, rsi
call fcn.14000d260
xor al, al
mov rcx, qword [rbp + 0x350]
xor rcx, rsp
call fcn.140105820
add rsp, 0x468
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1400e0540
mov rcx, qword [rbx]
xor edx, edx
call fcn.1401216b8
cmp eax, 0xffffffff
jne 0x1400e0561
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1400e0559
mov rdx, qword [rbx]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHCreateDirectory]
mov r14, qword [rbx + 0x10]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r14
cmp rax, 1
jb 0x1400e1646
mov qword [rbp - 0x50], rbx
cmp qword [rbx + 0x18], 8
jb 0x1400e0591
mov rax, qword [rbx]
mov qword [rbp - 0x50], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r15
mov qword [rbp + 8], r15
lea r12, [r14 + 1]
mov r15d, 7
mov ebx, r15d
lea rdi, [rbp - 0x10]
lea eax, [r15 + 3]
cmp r12, r15
jbe 0x1400e05e5
mov rbx, r12
or rbx, r15
cmp rbx, rcx
jbe 0x1400e05ca
mov rbx, rcx
jmp 0x1400e05d1
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x10]
call fcn.14000d940
mov rdi, rax
mov qword [rbp - 0x10], rax
mov qword [rbp], r12
mov qword [rbp + 8], rbx
lea rbx, [r14 + r14]
mov r8, rbx
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
call fcn.1401093a0
mov eax, dword [0x14015dab0]
mov word [rdi + rbx], ax
xor eax, eax
mov word [rdi + r12*2], ax
mov rdx, qword [rbp - 0x48]
lea rcx, [rbp - 0x10]
call fcn.14001d480
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
xor r12d, r12d
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x80], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r15
mov word [rax], r12w
lea rcx, [rbp - 0x10]
call fcn.14000d260
lea rcx, [rbp + 0xc0]
call qword [sym.imp.zlibwapi.dll_Ordinal_110]
lea r8, [rbp + 0x68]
cmp qword [rbp + 0x80], 8
cmovae r8, qword [rbp + 0x68]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor edx, edx
lea ecx, [rdx + 1]
lea r9d, [r12 - 1]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov edi, eax
mov ecx, eax
call fcn.140105884
mov r14, rax
mov r8d, edi
xor edx, edx
mov rcx, rax
call fcn.140109a40
lea r8, [rbp + 0x68]
cmp qword [rbp + 0x80], 8
cmovae r8, qword [rbp + 0x68]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], r14
xor edx, edx
lea ecx, [rdx + 1]
lea r9d, [r12 - 1]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jg 0x1400e0784
call fcn.140061ec0
mov rcx, rax
mov r8b, 1
lea rdx, str.WideCharToMultiByte_Error
call fcn.1400616d0
nop
lea rcx, [rbp + 0x68]
call fcn.14000d260
nop
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x1400e04ee
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e073b
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e0726
mov rbx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400e076b
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e163a
mov rcx, rbx
call fcn.140105840
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r12
jmp 0x1400e04ee
mov rbx, qword [rbp + 0x30]
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e07aa
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e0791
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x38], rax
mov rax, qword [rbp - 0x60]
mov rcx, rax
cmp qword [rax + 0x18], 8
jb 0x1400e07bb
mov rcx, qword [rax]
call fcn.140121b84
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
xor r8d, r8d
lea rdx, [0x14015c210]
lea rcx, [rbp - 0x80]
call fcn.14001c4f0
lea r8, [rbp + 0x30]
lea rdx, [rbp - 0x80]
mov rcx, qword [rbp + 0x88]
call fcn.1400e1ad0
lea r9, [rbp + 0xc0]
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.zlibwapi.dll_Ordinal_88]
mov rbx, rax
mov qword [rbp - 0x50], rax
mov rcx, r14
call fcn.140105840
test rbx, rbx
jne 0x1400e090d
mov r14, qword [rbp + 0x78]
movabs rax, 0x7ffffffffffffffe
mov rcx, rax
sub rcx, r14
cmp rcx, 0xe
jb 0x1400e164c
lea r12, [rbp + 0x68]
cmp qword [rbp + 0x80], 8
cmovae r12, qword [rbp + 0x68]
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
lea rsi, [r14 + 0xe]
mov rbx, r15
lea rdi, [rbp + 0x48]
cmp rsi, r15
jbe 0x1400e089b
mov rbx, rsi
or rbx, 7
cmp rbx, rax
jbe 0x1400e087a
mov rbx, rax
jmp 0x1400e0887
cmp rbx, 0xa
mov eax, 0xa
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp + 0x48]
call fcn.14000d940
mov rdi, rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x58], rsi
mov qword [rbp + 0x60], rbx
movups xmm0, xmmword [0x140168978]
movups xmmword [rdi], xmm0
movsd xmm0, qword [0x140168988]
movsd qword [rdi + 0x10], xmm0
mov ecx, dword [0x140168990]
mov dword [rdi + 0x18], ecx
lea rcx, [rdi + 0x1c]
lea r8, [r14 + r14]
mov rdx, r12
call fcn.1401093a0
xor r12d, r12d
mov word [rdi + rsi*2], r12w
lea rbx, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rbx, qword [rbp + 0x48]
call fcn.140061ec0
mov rcx, rax
mov rdx, rbx
call fcn.1400618a0
nop
lea rcx, [rbp + 0x48]
call fcn.14000d260
lea esi, [r12 - 1]
jmp 0x1400e09e7
mov r12, qword [rbp + 0x78]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r12
cmp rax, 9
jb 0x1400e164c
lea r13, [rbp + 0x68]
cmp qword [rbp + 0x80], 8
cmovae r13, qword [rbp + 0x68]
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
lea r14, [r12 + 9]
mov rbx, r15
lea rdi, [rbp + 0x48]
cmp r14, r15
jbe 0x1400e0986
mov rbx, r14
or rbx, 7
cmp rbx, rcx
jbe 0x1400e0965
mov rbx, rcx
jmp 0x1400e0972
cmp rbx, 0xa
mov eax, 0xa
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp + 0x48]
call fcn.14000d940
mov rdi, rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x58], r14
mov qword [rbp + 0x60], rbx
movups xmm0, xmmword [str.creating]
movups xmmword [rdi], xmm0
movzx ecx, word [0x140168938]
mov word [rdi + 0x10], cx
lea rcx, [rdi + 0x12]
lea r8, [r12 + r12]
mov rdx, r13
call fcn.1401093a0
xor r12d, r12d
mov word [rdi + r14*2], r12w
lea rbx, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rbx, qword [rbp + 0x48]
call fcn.140061ec0
mov rcx, rax
mov rdx, rbx
call fcn.1400618a0
nop
lea rcx, [rbp + 0x48]
call fcn.14000d260
mov r13, qword [rbp - 0x40]
mov rbx, qword [rbp + 0x30]
cmp rbx, qword [rbp + 0x38]
je 0x1400e1309
test esi, esi
jne 0x1400e1309
mov qword [rbp + 0x10], r12
mov rdx, rbx
lea rcx, [rbp + 0x48]
call fcn.14001a120
nop
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0x98], 0
mov qword [rbp + 0x90], 0
mov qword [rbp + 0xa8], 0
mov dword [rbp + 0xb0], r12d
lea rcx, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rcx, qword [rbp + 0x48]
lea rdx, [rbp + 0x100]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x1400e0a9d
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x114]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
lea r8, [rbp + 0xa8]
lea rdx, [rbp + 0xaa]
lea rcx, [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_FileTimeToDosDateTime]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae r8, qword [rbp + 0x48]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor edx, edx
lea ecx, [rdx + 1]
lea r9d, [rdx - 1]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov esi, eax
mov ecx, eax
call fcn.140105884
mov r14, rax
mov r8d, esi
xor edx, edx
mov rcx, rax
call fcn.140109a40
lea r8, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae r8, qword [rbp + 0x48]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], r14
xor edx, edx
lea ecx, [rdx + 1]
lea r9d, [rdx - 1]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jle 0x1400e1255
mov dword [rsp + 0x78], r12d
mov qword [rsp + 0x70], r12
mov dword [rsp + 0x68], r12d
mov dword [rsp + 0x60], 8
mov dword [rsp + 0x58], 0xfffffff1
mov dword [rsp + 0x50], r12d
mov dword [rsp + 0x48], 0xffffffff
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r12d
xor r9d, r9d
lea r8, [rbp + 0x90]
mov rdx, r14
mov rdi, qword [rbp - 0x50]
mov rcx, rdi
call qword [sym.imp.zlibwapi.dll_Ordinal_89]
mov esi, eax
mov rcx, r14
call fcn.140105840
test esi, esi
je 0x1400e0cc5
mov r13, qword [rbp + 0x58]
movabs rdx, 0x7ffffffffffffffe
mov rcx, rdx
sub rcx, r13
cmp rcx, 0x11
jb 0x1400e1652
lea rax, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rax, qword [rbp + 0x48]
mov qword [rbp - 0x58], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
lea r12, [r13 + 0x11]
mov rdi, r15
lea r14, [rbp - 0x80]
cmp r12, 7
jbe 0x1400e0c16
mov rdi, r12
or rdi, 7
cmp rdi, rdx
jbe 0x1400e0bf1
mov rdi, rdx
jmp 0x1400e0bfe
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp - 0x80]
call fcn.14000d940
mov r14, rax
mov qword [rbp - 0x80], rax
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], rdi
movups xmm0, xmmword [str.error_in_opening]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x1401689f0]
movups xmmword [r14 + 0x10], xmm1
movzx ecx, word [0x140168a00]
mov word [r14 + 0x20], cx
lea rcx, [r14 + 0x22]
lea r8, [r13*2]
mov rdx, rax
call fcn.1401093a0
xor eax, eax
mov word [r14 + r12*2], ax
lea rdx, str._in_zipfile
lea rcx, [rbp - 0x80]
call fcn.14001d3f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
xor r12d, r12d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r15
mov word [rax], r12w
lea rdi, [rbp - 0x30]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rdi, rcx
call fcn.140061ec0
mov rcx, rax
mov rdx, rdi
call fcn.1400618a0
nop
lea rcx, [rbp - 0x30]
call fcn.14000d260
nop
jmp 0x1400e122b
lea rdx, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rdx, qword [rbp + 0x48]
lea r8, [0x140168a04]
lea rcx, [rbp + 0x10]
call fcn.140115da4
mov r9, qword [rbp + 0x10]
test r9, r9
jne 0x1400e0e30
lea esi, [r9 - 1]
mov r13, qword [rbp + 0x58]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, 0x11
jb 0x1400e1658
lea rax, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rax, qword [rbp + 0x48]
mov qword [rbp - 0x58], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
lea r12, [r13 + 0x11]
mov rdi, r15
lea r14, [rbp - 0x80]
cmp r12, 7
jbe 0x1400e0d7a
mov rdi, r12
or rdi, 7
cmp rdi, rcx
jbe 0x1400e0d55
mov rdi, rcx
jmp 0x1400e0d62
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp - 0x80]
call fcn.14000d940
mov r14, rax
mov qword [rbp - 0x80], rax
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], rdi
movups xmm0, xmmword [str.error_in_opening]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x1401689f0]
movups xmmword [r14 + 0x10], xmm1
movzx ecx, word [0x140168a00]
mov word [r14 + 0x20], cx
lea rcx, [r14 + 0x22]
lea r8, [r13*2]
mov rdx, rax
call fcn.1401093a0
xor eax, eax
mov word [r14 + r12*2], ax
lea rdx, str._for_reading
lea rcx, [rbp - 0x80]
call fcn.14001d3f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
xor r12d, r12d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r15
mov word [rax], r12w
lea rdi, [rbp - 0x30]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rdi, rcx
call fcn.140061ec0
mov rcx, rax
mov rdx, rdi
call fcn.1400618a0
nop
lea rcx, [rbp - 0x30]
call fcn.14000d260
nop
jmp 0x1400e122b
mov esi, r12d
mov edx, 1
mov r8d, 0x4000
mov rcx, r13
call fcn.14011a7a4
mov r14, rax
cmp eax, 0x4000
jge 0x1400e0f52
mov rcx, qword [rbp + 0x10]
call fcn.14010ec2c
test eax, eax
jne 0x1400e0f52
mov r12, qword [rbp + 0x58]
movabs rax, 0x7ffffffffffffffe
mov rcx, rax
sub rcx, r12
cmp rcx, 0x11
jb 0x1400e165e
lea r13, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae r13, qword [rbp + 0x48]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
lea r15, [r12 + 0x11]
mov edi, 7
lea rsi, [rbp - 0x80]
cmp r15, rdi
jbe 0x1400e0edd
mov rdi, r15
or rdi, 7
cmp rdi, rax
jbe 0x1400e0ebc
mov rdi, rax
jmp 0x1400e0ec9
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp - 0x80]
call fcn.14000d940
mov rsi, rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rdi
movups xmm0, xmmword [str.error_in_reading]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [0x1401689c8]
movups xmmword [rsi + 0x10], xmm1
movzx ecx, word [0x1401689d8]
mov word [rsi + 0x20], cx
lea rcx, [rsi + 0x22]
lea r8, [r12 + r12]
mov rdx, r13
call fcn.1401093a0
xor r12d, r12d
mov word [rsi + r15*2], r12w
lea rdi, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdi, qword [rbp - 0x80]
call fcn.140061ec0
mov rcx, rax
mov rdx, rdi
call fcn.1400618a0
nop
lea rcx, [rbp - 0x80]
call fcn.14000d260
lea esi, [r12 - 1]
mov r13, qword [rbp - 0x40]
mov rdi, qword [rbp - 0x50]
test r14d, r14d
jle 0x1400e0f6c
mov r8d, r14d
mov rdx, r13
mov rcx, rdi
call qword [sym.imp.zlibwapi.dll_Ordinal_82]
mov esi, eax
test eax, eax
js 0x1400e0f86
test esi, esi
jne 0x1400e10c5
test r14d, r14d
jle 0x1400e10c5
mov r9, qword [rbp + 0x10]
jmp 0x1400e0e30
mov r13, qword [rbp + 0x58]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, 0x11
jb 0x1400e1664
lea rax, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rax, qword [rbp + 0x48]
mov qword [rbp - 0x58], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
lea r12, [r13 + 0x11]
mov r15d, 7
mov edi, r15d
lea r14, [rbp - 0x80]
cmp r12, r15
jbe 0x1400e1010
mov rdi, r12
or rdi, r15
cmp rdi, rcx
jbe 0x1400e0feb
mov rdi, rcx
jmp 0x1400e0ff8
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp - 0x80]
call fcn.14000d940
mov r14, rax
mov qword [rbp - 0x80], rax
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], rdi
movups xmm0, xmmword [str.error_in_writing]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x140168a68]
movups xmmword [r14 + 0x10], xmm1
movzx ecx, word [0x140168a78]
mov word [r14 + 0x20], cx
lea rcx, [r14 + 0x22]
lea r8, [r13*2]
mov rdx, rax
call fcn.1401093a0
xor eax, eax
mov word [r14 + r12*2], ax
lea rdx, [0x140168a38]
lea rcx, [rbp - 0x80]
call fcn.14001d3f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
xor r12d, r12d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r15
mov word [rax], r12w
lea rdi, [rbp - 0x30]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rdi, rcx
call fcn.140061ec0
mov rcx, rax
mov rdx, rdi
call fcn.1400618a0
nop
lea rcx, [rbp - 0x30]
call fcn.14000d260
nop
lea rcx, [rbp - 0x80]
call fcn.14000d260
jmp 0x1400e10cb
mov r15d, 7
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x1400e10d9
call fcn.14010ed7c
test esi, esi
jns 0x1400e10e7
mov esi, 0xffffffff
jmp 0x1400e1235
mov rcx, qword [rbp - 0x50]
call qword [sym.imp.zlibwapi.dll_Ordinal_83]
mov esi, eax
test eax, eax
je 0x1400e1235
mov r13, qword [rbp + 0x58]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, 0x11
jb 0x1400e166a
lea rax, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rax, qword [rbp + 0x48]
mov qword [rbp - 0x58], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
lea r12, [r13 + 0x11]
mov rdi, r15
lea r14, [rbp - 0x80]
cmp r12, 7
jbe 0x1400e1181
mov rdi, r12
or rdi, 7
cmp rdi, rcx
jbe 0x1400e115c
mov rdi, rcx
jmp 0x1400e1169
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp - 0x80]
call fcn.14000d940
mov r14, rax
mov qword [rbp - 0x80], rax
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], rdi
movups xmm0, xmmword [str.error_in_closing]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x140168a20]
movups xmmword [r14 + 0x10], xmm1
movzx ecx, word [0x140168a30]
mov word [r14 + 0x20], cx
lea rcx, [r14 + 0x22]
lea r8, [r13*2]
mov rdx, rax
call fcn.1401093a0
xor eax, eax
mov word [r14 + r12*2], ax
lea rdx, [0x140168a38]
lea rcx, [rbp - 0x80]
call fcn.14001d3f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
xor r12d, r12d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r15
mov word [rax], r12w
lea rdi, [rbp - 0x30]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rdi, rcx
call fcn.140061ec0
mov rcx, rax
mov rdx, rdi
call fcn.1400618a0
nop
lea rcx, [rbp - 0x30]
call fcn.14000d260
nop
lea rcx, [rbp - 0x80]
call fcn.14000d260
nop
lea rcx, [rbp + 0x48]
call fcn.14000d260
add rbx, 0x20
cmp rbx, qword [rbp + 0x38]
je 0x1400e1309
mov r13, qword [rbp - 0x40]
jmp 0x1400e09f5
call fcn.140061ec0
mov rcx, rax
mov r8b, 1
lea rdx, str.WideCharToMultiByte_Error
call fcn.1400616d0
nop
lea rcx, [rbp + 0x48]
call fcn.14000d260
nop
lea rcx, [rbp + 0x68]
call fcn.14000d260
nop
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x1400e12ec
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e12a8
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e1293
mov rbx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400e12d8
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e1670
mov rcx, rbx
call fcn.140105840
xorps xmm0, xmm0
mov qword [rbp + 0x40], r12
movdqu xmmword [rbp + 0x30], xmm0
mov rcx, qword [rbp - 0x38]
call fcn.14000d260
nop
mov rcx, qword [rbp - 0x48]
call fcn.14000d260
nop
mov rcx, qword [rbp - 0x60]
jmp 0x1400e0509
xor edx, edx
mov rcx, qword [rbp - 0x50]
call qword [sym.imp.zlibwapi.dll_Ordinal_84]
mov ebx, eax
mov rcx, qword [rbp - 0x40]
call fcn.14011decc
lea rcx, [0x140168a34]
call fcn.140121a50
test ebx, ebx
je 0x1400e1443
mov rsi, qword [rbp + 0x78]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, rsi
cmp rax, 0x11
jb 0x1400e1676
lea r14, [rbp + 0x68]
cmp qword [rbp + 0x80], 8
cmovae r14, qword [rbp + 0x68]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
lea rdi, [rsi + 0x11]
lea rbx, [rbp - 0x80]
cmp rdi, 7
jbe 0x1400e13aa
mov r15, rdi
or r15, 7
cmp r15, rcx
jbe 0x1400e1389
mov r15, rcx
jmp 0x1400e1396
cmp r15, 0xa
mov eax, 0xa
cmovb r15, rax
lea rdx, [r15 + 1]
lea rcx, [rbp - 0x80]
call fcn.14000d940
mov rbx, rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], r15
movups xmm0, xmmword [str.error_in_closing]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [0x140168a20]
movups xmmword [rbx + 0x10], xmm1
movzx ecx, word [0x140168a30]
mov word [rbx + 0x20], cx
lea rcx, [rbx + 0x22]
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1401093a0
mov word [rbx + rdi*2], r12w
lea rbx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rbx, qword [rbp - 0x80]
call fcn.140061ec0
mov rcx, rax
mov rdx, rbx
call fcn.1400618a0
nop
lea rcx, [rbp - 0x80]
call fcn.14000d260
nop
lea rcx, [rbp + 0x68]
call fcn.14000d260
nop
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x1400e12ec
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e147d
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e1430
jmp 0x1400e1479
lea rcx, [rbp + 0x68]
call fcn.14000d260
nop
mov rbx, qword [rbp + 0x30]
cmp esi, 0xffffffff
jne 0x1400e14b6
test rbx, rbx
je 0x1400e12ec
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e147d
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e1468
mov rbx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
mov rax, rbx
jb 0x1400e12d8
mov rbx, qword [rbx - 8]
sub rax, rbx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e1640
jmp 0x1400e12d8
test rbx, rbx
je 0x1400e151d
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e14d9
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e14c4
mov rbx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400e1509
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e1640
mov rcx, rbx
call fcn.140105840
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r12
mov rcx, qword [rbp - 0x38]
call fcn.14000d260
nop
mov rcx, qword [rbp - 0x48]
call fcn.14000d260
nop
mov rcx, qword [rbp - 0x60]
call fcn.14000d260
mov al, 1
jmp 0x1400e0510
mov rsi, qword [rbp - 0x60]
mov r8, rsi
lea rdx, str.The_source_directory
lea rcx, [rbp - 0x80]
call fcn.14001bdf0
nop
lea rdx, str._is_not_found
mov rcx, rax
call fcn.14001d3f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
lea rbx, [rbp - 0x30]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rbx, rcx
call fcn.140061ec0
mov rcx, rax
mov rdx, rbx
call fcn.1400618a0
nop
lea rcx, [rbp - 0x30]
call fcn.14000d260
nop
lea rcx, [rbp - 0x80]
call fcn.14000d260
nop
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x1400e04f2
mov rdi, qword [rbp + 0x38]
cmp rbx, rdi
je 0x1400e15f5
nop dword [rax]
mov rcx, rbx
call fcn.14000d260
add rbx, 0x20
cmp rbx, rdi
jne 0x1400e15e0
mov rbx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400e1621
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e163a
mov rcx, rbx
call fcn.140105840
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r15
jmp 0x1400e04f2
call fcn.14010e2dc
int3
call fcn.14010e2dc
nop
call fcn.14000cc90
nop
call fcn.14000cc90
nop
call fcn.14000cc90
int3
call fcn.14000cc90
int3
call fcn.14000cc90
int3
call fcn.14000cc90
int3
call fcn.14000cc90
nop
call fcn.14010e2dc
nop
call fcn.14000cc90
int3