Function at 0x14008c020
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x2b8
mov rax, qword [0x1402126b0]
xor rax, rsp
mov qword [rsp + 0x2a0], rax
mov dword [rsp + 0x44], 0
mov qword [rsp + 0x60], 0
mov dword [rsp + 0x90], 0
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9d, 0x100
lea r8, [rsp + 0x120]
lea rdx, [rsp + 0xc0]
mov rcx, qword [rsp + 0x2d0]
call fcn.14008a290
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
je 0x14008c0d4
mov edx, dword [rsp + 0x44]
lea rcx, str.error__d_with_zipfile_in_unzGetCurrentFileInfo_n
call fcn.140017c00
mov eax, dword [rsp + 0x44]
jmp 0x14008c524
mov dword [rsp + 0x74], 0x200000
mov eax, dword [rsp + 0x74]
mov ecx, eax
call fcn.1401463e0
mov qword [rsp + 0x78], rax
cmp qword [rsp + 0x78], 0
jne 0x14008c10a
lea rcx, str.Error_allocating_memory_n
call fcn.140017c00
mov eax, 0xffffff98
jmp 0x14008c524
lea rax, [rsp + 0x120]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movsx eax, byte [rax]
test eax, eax
je 0x14008c163
mov rax, qword [rsp + 0x68]
movsx eax, byte [rax]
cmp eax, 0x2f
je 0x14008c147
mov rax, qword [rsp + 0x68]
movsx eax, byte [rax]
cmp eax, 0x5c
jne 0x14008c154
mov rax, qword [rsp + 0x68]
inc rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x68]
inc rax
mov qword [rsp + 0x68], rax
jmp 0x14008c121
mov rax, qword [rsp + 0x58]
movsx eax, byte [rax]
test eax, eax
jne 0x14008c1a2
mov rax, qword [rsp + 0x2d8]
cmp dword [rax], 0
jne 0x14008c19d
lea rdx, [rsp + 0x120]
lea rcx, str.creating_directory:__s_n
call fcn.140017c00
lea rcx, [rsp + 0x120]
call fcn.14008b9e0
jmp 0x14008c516
mov dword [rsp + 0x70], 0
mov rax, qword [rsp + 0x2d8]
cmp dword [rax], 0
jne 0x14008c1c6
lea rax, [rsp + 0x120]
mov qword [rsp + 0x50], rax
jmp 0x14008c1d0
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2d0]
call fcn.14008b0a0
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
je 0x14008c200
mov edx, dword [rsp + 0x44]
lea rcx, str.error__d_with_zipfile_in_unzOpenCurrentFilePassword_n
call fcn.140017c00
mov rax, qword [rsp + 0x2e0]
cmp dword [rax], 0
jne 0x14008c317
cmp dword [rsp + 0x44], 0
jne 0x14008c317
mov byte [rsp + 0x40], 0
lea rdx, [0x1401b539c]
mov rcx, qword [rsp + 0x50]
call fcn.140140f2c
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x88], 0
je 0x14008c2ed
mov rcx, qword [rsp + 0x88]
call fcn.140141014
mov rdx, qword [rsp + 0x50]
lea rcx, str.The_file__s_exists._Overwrite____y_es___n_o___A_ll:
call fcn.140017c00
lea rdx, [rsp + 0x220]
lea rcx, [0x1401b53f4]
call fcn.14008b890
mov dword [rsp + 0x80], eax
cmp dword [rsp + 0x80], 1
je 0x14008c296
mov ecx, 1
call fcn.1401480e4
mov eax, 1
imul rax, rax, 0
movzx eax, byte [rsp + rax + 0x220]
mov byte [rsp + 0x40], al
movsx eax, byte [rsp + 0x40]
cmp eax, 0x61
jl 0x14008c2cb
movsx eax, byte [rsp + 0x40]
cmp eax, 0x7a
jg 0x14008c2cb
movsx eax, byte [rsp + 0x40]
sub eax, 0x20
mov byte [rsp + 0x40], al
movsx eax, byte [rsp + 0x40]
cmp eax, 0x59
je 0x14008c2ed
movsx eax, byte [rsp + 0x40]
cmp eax, 0x4e
je 0x14008c2ed
movsx eax, byte [rsp + 0x40]
cmp eax, 0x41
jne 0x14008c256
movsx eax, byte [rsp + 0x40]
cmp eax, 0x4e
jne 0x14008c2ff
mov dword [rsp + 0x70], 1
movsx eax, byte [rsp + 0x40]
cmp eax, 0x41
jne 0x14008c317
mov rax, qword [rsp + 0x2e0]
mov dword [rax], 1
cmp dword [rsp + 0x70], 0
jne 0x14008c3c3
cmp dword [rsp + 0x44], 0
jne 0x14008c3c3
lea rdx, [0x1401b53ac]
mov rcx, qword [rsp + 0x50]
call fcn.140140f2c
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
jne 0x14008c3aa
mov rax, qword [rsp + 0x2d8]
cmp dword [rax], 0
jne 0x14008c3aa
lea rax, [rsp + 0x120]
cmp qword [rsp + 0x58], rax
je 0x14008c3aa
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax - 1]
mov byte [rsp + 0x48], al
mov rax, qword [rsp + 0x58]
mov byte [rax - 1], 0
mov rcx, qword [rsp + 0x50]
call fcn.14008ba10
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rsp + 0x48]
mov byte [rax - 1], cl
lea rdx, [0x1401b53d4]
mov rcx, qword [rsp + 0x50]
call fcn.140140f2c
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
jne 0x14008c3c3
mov rdx, qword [rsp + 0x50]
lea rcx, str.error_opening__s_n
call fcn.140017c00
cmp qword [rsp + 0x60], 0
je 0x14008c4d8
mov rdx, qword [rsp + 0x50]
lea rcx, str._extracting:__s_n
call fcn.140017c00
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140218268]
call fcn.14002c410
mov r8d, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x2d0]
call fcn.14008b0d0
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
jge 0x14008c425
mov edx, dword [rsp + 0x44]
lea rcx, str.error__d_with_zipfile_in_unzReadCurrentFile_n
call fcn.140017c00
jmp 0x14008c489
cmp dword [rsp + 0x44], 0
jle 0x14008c47e
movsxd rax, dword [rsp + 0x44]
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov rdx, rax
mov rcx, qword [rsp + 0x78]
call fcn.140145e24
cmp rax, 1
je 0x14008c465
lea rcx, str.error_in_writing_extracted_file_n
call fcn.140017c00
mov dword [rsp + 0x44], 0xffffffff
jmp 0x14008c489
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [0x1402179c0]
add rcx, rax
mov rax, rcx
mov qword [0x1402179c0], rax
cmp dword [rsp + 0x44], 0
jg 0x14008c3f1
cmp qword [rsp + 0x60], 0
je 0x14008c49b
mov rcx, qword [rsp + 0x60]
call fcn.140141014
cmp dword [rsp + 0x44], 0
jne 0x14008c4d8
lea rax, [rsp + 0xa0]
lea rcx, [rsp + 0x100]
mov rdi, rax
mov rsi, rcx
mov ecx, Ordinal_26
rep movsb byte [rdi], byte [rsi]
lea r8, [rsp + 0xa0]
mov edx, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x50]
call fcn.14008b900
cmp dword [rsp + 0x44], 0
jne 0x14008c509
mov rcx, qword [rsp + 0x2d0]
call fcn.14008b730
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
je 0x14008c507
mov edx, dword [rsp + 0x44]
lea rcx, str.error__d_with_zipfile_in_unzCloseCurrentFile_n
call fcn.140017c00
jmp 0x14008c516
mov rcx, qword [rsp + 0x2d0]
call fcn.14008b730
mov rcx, qword [rsp + 0x78]
call fcn.140145f80
mov eax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x2a0]
xor rcx, rsp
call fcn.140138320
add rsp, 0x2b8
pop rdi
pop rsi
ret