Function at 0x140084ae4
Capabilities:
Clear file content
Read file on windows
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd0
mov rdi, rcx
lea rcx, [rax - 0x58]
mov rbx, rdx
call fcn.140057154
xor r12d, r12d
mov qword [rsp + 0xb8], rdi
lea ebp, [r12 + 9]
mov edi, 0x4b0
mov qword [rsp + 0xc0], r12
mov byte [rsp + 0x43], r12b
lea r13d, [r12 + 0x2d]
lea r15d, [r12 + 0x20]
lea ecx, [rbp + 4]
lea esi, [rdi + 1]
cmp bp, word [rbx]
ja 0x140084b50
cmp word [rbx], cx
jbe 0x140084b56
cmp r15w, word [rbx]
jne 0x140084b5e
mov edi, r12d
jmp 0x140084cb1
lea rcx, str._UNI
mov r8d, 4
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
jne 0x140084cac
mov r11d, 5
lea rcx, str._UNIB
mov rdx, rbx
mov r8d, r11d
call fcn.140050a10
cmp al, r12b
je 0x140084ba0
mov edi, esi
jmp 0x140084cac
lea rcx, str._UNICODE
mov r8d, 8
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
jne 0x140084cac
lea rcx, str._UNICODEB
mov r8d, ebp
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
jne 0x140084b99
lea rcx, str._UTF8
mov r8d, r11d
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
je 0x140084bf6
mov edi, 0xfde9
jmp 0x140084cac
lea rcx, str._UTF7
mov r8d, r11d
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
je 0x140084c17
mov edi, 0xfde8
jmp 0x140084cac
lea rcx, str._GBK
mov r8d, 4
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
je 0x140084c38
mov edi, 0x3a8
jmp 0x140084cac
lea rcx, str._BIG5
mov r8d, r11d
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
je 0x140084c56
mov edi, 0x3b6
jmp 0x140084cac
lea rcx, str._ANSI
mov r8d, r11d
mov rdx, rbx
call fcn.140050a10
cmp al, r12b
je 0x140084c72
mov edi, r12d
jmp 0x140084cac
cmp r13w, word [rbx]
jne 0x140085cca
add rbx, 2
movzx eax, word [rbx]
sub ax, 0x30
cmp ax, bp
ja 0x140085cca
mov rcx, rbx
mov qword [rsp + 0x118], rbx
call fcn.1400583bc
cmp eax, r12d
mov rdi, rax
jl 0x140085cca
mov ecx, 0xd
mov esi, 2
jmp 0x140084cd3
cmp bp, ax
ja 0x140084cc2
cmp ax, cx
jbe 0x140084cdc
cmp r15w, ax
je 0x140084cdc
add rbx, rsi
mov qword [rsp + 0x118], rbx
movzx eax, word [rbx]
cmp ax, r12w
jne 0x140084cb8
lea rcx, [rsp + 0x118]
call fcn.14004f534
mov ebx, 0x2a
mov byte [rsp + 0x128], r12b
mov byte [rsp + 0x44], r12b
mov byte [rsp + 0x41], r12b
mov r14b, r12b
lea r13d, [rbx - 0x29]
mov byte [rsp + 0x42], r12b
jmp 0x140084e48
lea rdx, [rsp + 0x118]
lea rcx, [0x1400f9294]
mov r8d, 4
call fcn.14005992c
cmp al, r12b
je 0x140084d3d
mov byte [rsp + 0x128], sil
jmp 0x140084e48
lea rdx, [rsp + 0x118]
lea rcx, str._nl
mov r8d, 4
call fcn.14005992c
cmp al, r12b
je 0x140084d66
mov byte [rsp + 0x44], r13b
jmp 0x140084e48
lea rdx, [rsp + 0x118]
lea rcx, [0x1400f930c]
mov r8d, esi
call fcn.14005992c
cmp al, r12b
je 0x140084d8c
mov byte [rsp + 0x41], r13b
jmp 0x140084e48
lea rdx, [rsp + 0x118]
lea rcx, [0x1400f9308]
mov r8d, 3
call fcn.14005992c
cmp al, r12b
je 0x140084db3
mov r14b, r13b
jmp 0x140084e48
lea rdx, [rsp + 0x118]
lea rcx, [0x1400f3448]
mov r8d, esi
call fcn.14005992c
cmp al, r12b
je 0x140084dd6
mov byte [rsp + 0x42], r13b
jmp 0x140084e48
lea rdx, [rsp + 0x118]
lea rcx, str.sparse
mov r8d, 7
call fcn.14005992c
cmp al, r12b
je 0x140084dfc
mov byte [rsp + 0x43], r13b
jmp 0x140084e48
mov rcx, qword [rsp + 0x118]
movzx eax, word [rcx]
cmp ax, r12w
je 0x140084e3b
mov ebx, 0xd
cmp bp, ax
ja 0x140084e1c
cmp ax, bx
jbe 0x140084e2e
cmp r15w, ax
je 0x140084e2e
add rcx, rsi
mov ax, word [rcx]
cmp ax, r12w
jne 0x140084e12
mov qword [rsp + 0x118], rcx
mov ebx, 0x2a
lea rcx, [rsp + 0x118]
call fcn.14004f534
mov rax, qword [rsp + 0x118]
cmp bx, word [rax]
je 0x140084d11
lea rbx, [0x1400ee4c4]
lea rcx, [rsp + 0x78]
mov rdx, rbx
call fcn.14006160c
lea rdx, [0x1400f92f4]
lea rcx, [rsp + 0x70]
call fcn.14006160c
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0xb0]
mov r8d, 0x2c
mov r9b, r13b
mov r15, r12
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x60], r12
call fcn.14006de04
lea rdx, [rsp + 0x78]
xor r8d, r8d
mov rcx, rax
call fcn.14005aa6c
mov rcx, qword [rsp + 0x78]
call fcn.140018fa4
mov rbp, rax
mov qword [rsp + 0x90], rax
cmp word [rax], r12w
jne 0x140084ef7
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, 0xffffffff80070057
jmp 0x140085cd0
mov rax, qword [rsp + 0x118]
mov r8d, 0x2c
cmp word [rax], r8w
jne 0x140084f71
add rax, rsi
lea rcx, [rsp + 0x118]
mov qword [rsp + 0x118], rax
call fcn.14004f534
mov rax, qword [rsp + 0x118]
cmp word [rax], r8w
je 0x140084f6d
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0xb0]
mov r9b, r13b
call fcn.14006de04
lea rdx, [rsp + 0x70]
xor r8d, r8d
mov rcx, rax
call fcn.14005aa6c
mov rax, qword [rsp + 0x118]
mov r8d, 0x2c
cmp word [rax], r8w
jne 0x140084f71
lea rbx, [rax + 2]
mov rax, qword [rsp + 0x70]
mov sil, r12b
mov byte [rsp + 0x40], r12b
cmp word [rax], 0x24
mov qword [rsp + 0x118], rax
jne 0x140084f9b
mov sil, byte [rax]
add rax, 2
mov qword [rsp + 0x118], rax
lea rcx, [rsp + 0x118]
call fcn.14004f534
mov rcx, qword [rsp + 0x118]
cmp word [rcx], 0x2b
je 0x140084fc0
mov eax, 0x2d
cmp word [rcx], ax
jne 0x140084fd2
mov al, byte [rcx]
add rcx, 2
mov byte [rsp + 0x40], al
mov qword [rsp + 0x118], rcx
lea rcx, [rsp + 0x118]
call fcn.14004f534
mov rcx, qword [rsp + 0x118]
movzx eax, word [rcx]
mov ecx, 9
sub ax, 0x30
cmp ax, cx
ja 0x140085035
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x118]
call fcn.14005ad44
mov r15, qword [rsp + 0x60]
cmp r15, r12
mov qword [rsp + 0x80], r15
jge 0x140085035
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x78]
call fcn.14004f564
jmp 0x140085cd0
lea rcx, [rsp + 0x48]
call fcn.140057154
mov eax, 0x26
cmp r14b, r12b
je 0x1400850ab
mov rsi, qword [rsp + 0x110]
cmp ax, word [rbx]
je 0x14008506b
test byte [rsi + 0xd], 0xf
jne 0x14008506b
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.140060990
jmp 0x1400850d9
lea rcx, [0x14010ce50]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
or r9d, 0xffffffff
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call fcn.14001b2ac
cmp rax, r12
je 0x14008509c
mov rdx, qword [rax]
lea rcx, [rsp + 0x48]
call fcn.140061724
lea rcx, [0x14010ce50]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400850d9
mov rdx, rbx
cmp sil, r12b
je 0x1400850cf
mov rcx, qword [rsp + 0x110]
lea r8, [rsp + 0x48]
xor r9d, r9d
mov byte [rsp + 0x20], r13b
call fcn.14006a8f4
jmp 0x1400850d9
lea rcx, [rsp + 0x48]
call fcn.14006168c
lea rcx, [0x1400eef64]
mov rbx, r12
mov rdx, rbp
mov rsi, r12
mov r14b, r12b
mov byte [rsp + 0x118], r12b
mov qword [rsp + 0x50], rbx
call fcn.140050aa8
cmp al, r12b
je 0x14008510f
mov rsi, qword [0x1401092f0]
mov r14b, 2
jmp 0x14008512d
lea rcx, [0x1400ef7a8]
mov rdx, rbp
call fcn.140050aa8
cmp al, r12b
je 0x140085135
mov rsi, qword [0x1401092e8]
mov r14b, r13b
mov byte [rsp + 0x118], r14b
cmp byte [rsp + 0x44], r12b
jne 0x140085154
cmp byte [rsp + 0x41], r12b
jne 0x140085154
lea rdx, [0x1400f1a20]
lea rcx, [rsp + 0x48]
call fcn.140057290
mov rbp, r12
cmp byte [rsp + 0x41], r12b
je 0x140085168
mov edi, 0x4b0
jmp 0x140085403
cmp r14b, r12b
jne 0x140085403
mov rsi, qword [rsp + 0x90]
lea rcx, str.CONOUT_
mov r14b, r13b
mov rdx, rsi
call fcn.140050aa8
cmp al, r12b
je 0x14008519f
mov ecx, 0x100
mov r14b, r12b
call fcn.140054a7c
jmp 0x1400851b0
cmp byte [rsp + 0x43], r12b
je 0x1400851b0
xor edx, edx
mov rcx, rsi
call fcn.14005ecd0
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], 0x80
lea rcx, [rsp + 0x50]
mov r9d, 7
mov r8d, 0xc0000000
mov rdx, rsi
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r12
call fcn.140003590
mov rbx, qword [rsp + 0x50]
cmp rbx, r12
jne 0x1400852a3
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], 0x2000080
lea rcx, [rsp + 0x50]
mov r9d, 7
mov r8d, 0xc0000000
mov rdx, rsi
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r12
call fcn.140003590
mov rbx, qword [rsp + 0x50]
cmp rbx, r12
jne 0x1400852a3
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], 0x80
lea rcx, [rsp + 0x50]
mov r9d, 7
mov r8d, 0xc0000000
mov rdx, rsi
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], r12
call fcn.140003590
mov rbx, qword [rsp + 0x50]
cmp rbx, r12
jne 0x1400852a3
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], 0x2000080
lea rcx, [rsp + 0x50]
mov r9d, 7
mov r8d, 0xc0000000
mov rdx, rsi
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], r12
call fcn.140003590
mov rbx, qword [rsp + 0x50]
mov rsi, rbx
cmp rbx, r12
jne 0x1400852c3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12d, eax
lea rcx, [rsp + 0x48]
call fcn.14004f564
jmp 0x14008501c
xor r8d, r8d
mov al, r12b
mov cl, r12b
mov dl, r12b
mov qword [rsp + 0xa0], r12
mov byte [rsp + 0x58], al
mov byte [rsp + 0x59], cl
mov word [rsp + 0x5b], r8w
mov byte [rsp + 0x5a], dl
cmp r14b, r12b
je 0x14008531b
lea r9, [rsp + 0xa0]
lea rdx, [rsp + 0x58]
mov r8d, 3
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov dl, byte [rsp + 0x5a]
mov cl, byte [rsp + 0x59]
mov al, byte [rsp + 0x58]
cmp al, 0xff
jne 0x140085334
cmp cl, 0xfe
jne 0x140085363
mov r8d, 2
mov edi, 0x4b0
mov rbp, r8
jmp 0x14008533a
mov r8d, 2
cmp al, 0xfe
jne 0x14008534b
cmp cl, 0xff
jne 0x140085363
mov edi, 0x4b1
mov rbp, r8
cmp al, 0xef
jne 0x140085363
cmp cl, 0xbb
jne 0x140085363
cmp dl, 0xbf
jne 0x140085363
mov edi, 0xfde9
mov ebp, 3
lea rcx, [rsp + 0xa0]
call fcn.14001ab40
mov r14b, byte [rsp + 0x42]
cmp qword [rax], r12
je 0x14008538f
cmp r14b, r12b
jne 0x14008538f
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140050964
jmp 0x140085403
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140050964
cmp r14b, r12b
je 0x1400853aa
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp edi, 0x4b0
jne 0x1400853c0
mov eax, 2
lea rdx, [0x1400f5248]
jmp 0x1400853ea
cmp edi, 0x4b1
jne 0x1400853d6
mov eax, 2
lea rdx, [0x1400f524c]
jmp 0x1400853ea
cmp edi, 0xfde9
jne 0x140085403
mov eax, 3
lea rdx, [0x1400f5250]
lea r9, [rsp + 0x68]
mov r8d, eax
mov rcx, rbx
mov qword [rsp + 0x20], r12
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd r14, eax
add r14, r14
cmp edi, 0x4b0
je 0x140085484
cmp edi, 0x4b1
jne 0x140085433
mov rcx, qword [rsp + 0x48]
mov edx, r14d
call fcn.140054a5c
jmp 0x140085484
lea rcx, [rsp + 0x48]
cmp edi, 0xfde9
jne 0x14008544a
call fcn.140015228
mov r14, rax
jmp 0x140085484
mov rdx, qword [rsp + 0x48]
movzx r9d, di
or r8, 0xffffffffffffffff
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x48], r12
call fcn.140057090
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
lea rcx, [rsp + 0x88]
movsxd r14, eax
call fcn.14004f564
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x60], rax
cmp byte [rsp + 0x118], r12b
je 0x140085544
cmp rsi, 0xffffffffffffffff
jne 0x1400854db
cmp rbx, r12
je 0x1400854b5
cmp rbx, rsi
je 0x1400854b5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x48]
call fcn.14004f564
lea rcx, [rsp + 0x70]
call fcn.14004f564
lea rcx, [rsp + 0x78]
call fcn.14004f564
mov r12, r13
jmp 0x140085cd0
lea r9, [rsp + 0x118]
mov r8d, r14d
mov rdx, rax
mov rcx, rsi
mov dword [rsp + 0x118], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
cmp rbx, r12
je 0x1400852b4
cmp rbx, 0xffffffffffffffff
je 0x1400852b4
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400852b4
lea rcx, [rsp + 0x88]
call fcn.140057154
lea rcx, [rsp + 0xa8]
call fcn.140057154
lea rcx, [rsp + 0x98]
call fcn.140056f00
lea rcx, [rsp + 0x68]
call fcn.140056f00
cmp byte [rsp + 0x41], r12b
je 0x140085906
lea rcx, [rsp + 0x128]
call fcn.140057154
mov rdi, qword [rsp + 0x90]
mov eax, 0x26
cmp ax, word [rdi]
je 0x1400855bf
mov rax, qword [rsp + 0x110]
test byte [rax + 0xd], 0xf
jne 0x1400855bf
lea rdx, [rsp + 0x128]
mov rcx, rdi
call fcn.140060990
jmp 0x140085605
lea rcx, [0x14010ce50]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rcx, qword [rsp + 0x110]
or r9d, 0xffffffff
xor r8d, r8d
mov rdx, rdi
call fcn.14001b2ac
cmp rax, r12
je 0x1400855f8
mov rdx, qword [rax]
lea rcx, [rsp + 0x128]
call fcn.140061724
lea rcx, [0x14010ce50]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x128]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r11b, byte [rsp + 0x40]
mov rcx, r12
movsxd r8, eax
mov eax, 0x2d
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x80], r8
mov rdi, r8
cmp r11b, al
jne 0x140085645
mov qword [rsp + 0x60], r12
jmp 0x140085655
mov rax, r14
cqo
sub rax, rdx
sar rax, 1
mov qword [rsp + 0x60], rax
mov rbp, r12
mov r14, r12
mov r9d, 0xa
cmp r15, r12
jne 0x1400856fa
cmp r11b, 0x2b
je 0x1400857aa
cmp r8, r12
jle 0x1400856e2
cmp word [rsi + r8*2 - 2], r9w
jne 0x14008569b
lea rdi, [r8 - 1]
cmp rdi, r12
jle 0x1400856e2
lea r10d, [r9 + 3]
cmp word [rsi + rdi*2 - 2], r10w
jne 0x1400856a1
sub rdi, r13
jmp 0x1400856a1
mov r10d, 0xd
cmp rdi, r12
jle 0x1400856e2
lea rax, [rsi + rdi*2 - 2]
cmp rax, rsi
jb 0x1400856e2
mov edx, 2
cmp word [rax], r9w
je 0x1400856c8
sub rax, rdx
sub rdi, r13
cmp rax, rsi
jae 0x1400856b5
jmp 0x1400856e2
cmp r11b, 0x2d
jne 0x1400856e2
sub rax, rdx
sub rdi, r13
cmp rax, rsi
jb 0x1400856e2
cmp word [rax], r10w
jne 0x1400856e2
sub rdi, r13
mov eax, 0x2d
mov word [rsi + rdi*2], r12w
cmp r11b, al
jne 0x1400857b4
jmp 0x1400858a6
cmp r11b, 0x2b
mov eax, r12d
mov rcx, rsi
sete al
mov edx, r12d
mov rbp, r8
add eax, r13d
movsxd r10, eax
cmp r15, r10
jl 0x14008579e
mov edi, 2
lea r14d, [rdi + 0xb]
movzx eax, word [rcx]
cmp ax, r12w
je 0x14008579e
cmp ax, r9w
je 0x140085775
cmp ax, r14w
jne 0x140085743
add rcx, rdi
cmp word [rcx], r9w
je 0x140085751
add rcx, rdi
mov ax, word [rcx]
cmp ax, r12w
je 0x140085799
jmp 0x14008572e
cmp r10, r15
jne 0x140085762
mov rbp, rcx
sub rbp, rsi
sar rbp, 1
sub rbp, r13
cmp r15, rdi
jne 0x140085793
mov rdx, rcx
sub rdx, rsi
sar rdx, 1
sub edx, r13d
jmp 0x140085793
cmp r10, r15
jne 0x140085783
mov rbp, rcx
sub rbp, rsi
sar rbp, 1
cmp r15, rdi
jne 0x140085793
mov rax, rcx
sub rax, rsi
sar rax, 1
mov edx, eax
sub r15, r13
add rcx, rdi
cmp r15, r10
jge 0x140085725
mov r14, r8
movsxd rdi, edx
mov rcx, r12
sub r14, rbp
mov eax, 0x2d
cmp r11b, al
je 0x1400857d0
cmp rdi, r12
jle 0x1400857d0
cmp word [rsi + rdi*2 - 2], r9w
mov eax, 2
cmovne rcx, rax
mov qword [rsp + 0x118], rcx
mov r13, qword [rsp + 0x60]
lea rax, [r14 + r13]
add rax, rcx
lea r15, [rax + rdi + 1]
mov rax, qword [rsp + 0x128]
cmp r8, r15
lea r9, [rax + rdi*2]
jl 0x140085813
cmp r14, r12
jle 0x140085813
mov rax, rbp
lea r8, [r14 + r14]
sub rax, rdi
lea rdx, [r9 + rax*2]
lea rax, [r13 + rcx]
lea rcx, [r9 + rax*2]
call fcn.14001a968
lea rcx, [rsp + 0x128]
mov rdx, r15
call fcn.140057254
cmp qword [rsp + 0x80], r15
mov r11, qword [rsp + 0x128]
lea rsi, [r11 + rdi*2]
jge 0x140085861
cmp r14, r12
jle 0x140085861
sub rbp, rdi
mov rdi, qword [rsp + 0x118]
lea r8, [r14 + r14]
lea rax, [r13 + rdi]
lea rdx, [rsi + rbp*2]
lea rcx, [rsi + rax*2]
call fcn.14001a968
jmp 0x140085869
mov rdi, qword [rsp + 0x118]
cmp rdi, r12
je 0x140085885
mov eax, 0xd
mov word [rsi], ax
lea ecx, [rax - 0xb]
add rsi, rcx
lea eax, [rcx + 8]
mov word [rsi], ax
add rsi, rcx
cmp r13, r12
jle 0x1400858a1
mov rdx, qword [rsp + 0x48]
movsxd r8, r13d
mov rcx, rsi
add r8, r8
call fcn.14001a9b0
lea rsi, [rsi + r13*2]
mov word [rsi + r14*2], r12w
mov r8, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x110]
call fcn.140056790
lea rcx, [rsp + 0x128]
call fcn.14004f564
lea rcx, [rsp + 0x68]
call fcn.14004f564
lea rcx, [rsp + 0x98]
call fcn.14004f564
lea rcx, [rsp + 0xa8]
call fcn.14004f564
lea rcx, [rsp + 0x88]
call fcn.14004f564
jmp 0x140085523
cmp r15, r12
jne 0x1400859c2
cmp byte [rsp + 0x40], 0x2b
mov rcx, rbx
je 0x1400859b1
xor r8d, r8d
mov rdx, rbp
call fcn.140050964
mov r8d, r13d
xor edx, edx
mov rcx, rbx
call fcn.140050964
mov r9b, byte [rsp + 0x128]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov r8d, edi
mov rsi, rax
call fcn.14005e844
cmp eax, r12d
je 0x140085994
mov r15b, byte [rsp + 0x128]
mov r8d, r13d
xor edx, edx
mov rcx, rbx
mov rbp, rsi
call fcn.140050964
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov r9b, r15b
mov r8d, edi
mov rsi, rax
call fcn.14005e844
cmp eax, r12d
jne 0x14008595f
mov r15, qword [rsp + 0x80]
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140050964
lea rcx, [rsp + 0x50]
mov rdx, rbp
call fcn.14005ed64
jmp 0x1400859f8
mov eax, 2
xor edx, edx
mov r8d, eax
call fcn.140050964
jmp 0x1400859f8
cmp r13, r15
mov rsi, r13
jge 0x1400859f8
mov bl, byte [rsp + 0x128]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov r9b, bl
mov r8d, edi
call fcn.14005e844
cmp eax, r12d
je 0x1400859f3
add rsi, r13
cmp rsi, r15
jl 0x1400859d1
mov rbx, qword [rsp + 0x50]
mov al, byte [rsp + 0x40]
cmp al, 0x2b
jne 0x140085ada
mov rcx, rbx
cmp r15, r12
je 0x140085ba5
mov r8d, r13d
xor edx, edx
call fcn.140050964
mov rcx, rbx
mov rdi, rax
call fcn.1400c12e8
lea rcx, [rsp + 0x128]
sub eax, edi
mov esi, eax
cmp eax, r12d
cmovl esi, r12d
add eax, 0xca
movsxd rdx, eax
call fcn.140056f64
movsxd rdi, edi
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.140050964
mov rdx, qword [rsp + 0x128]
lea r9, [rsp + 0x118]
mov r8d, esi
mov rcx, rbx
mov dword [rsp + 0x118], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.140050964
mov rdx, qword [rsp + 0x60]
lea r9, [rsp + 0x110]
mov r8d, r14d
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp esi, r12d
jle 0x140085cb8
mov r8d, esi
mov rdx, qword [rsp + 0x128]
lea r9, [rsp + 0x110]
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x140085cb8
cmp al, 0x2d
jne 0x140085b9d
cmp r15, r12
je 0x1400858d0
mov r8d, r13d
xor edx, edx
mov rcx, rbx
call fcn.140050964
mov r9b, byte [rsp + 0x128]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov r8d, edi
mov rbp, rax
call fcn.14005e844
mov r8d, r13d
xor edx, edx
mov rcx, rbx
call fcn.140050964
mov rcx, rbx
mov rdi, rax
call fcn.1400c12e8
mov rsi, rax
sub esi, edi
lea ecx, [rsi + 0xca]
movsxd rdx, ecx
lea rcx, [rsp + 0x128]
call fcn.140056f64
mov rdx, qword [rsp + 0x128]
lea r8d, [rsi + 0xc8]
lea r9, [rsp + 0x118]
mov rcx, rbx
mov dword [rsp + 0x118], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140050964
lea rcx, [rsp + 0x50]
mov rdx, rbp
call fcn.14005ed64
mov r8d, dword [rsp + 0x118]
jmp 0x140085ab7
mov rcx, rbx
cmp r15, r12
jne 0x140085bc5
mov rdx, qword [rsp + 0x60]
lea r9, [rsp + 0x118]
mov r8d, r14d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x1400858d0
mov r8d, r13d
xor edx, edx
call fcn.140050964
mov r9b, byte [rsp + 0x128]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov r8d, edi
mov rbp, rax
call fcn.14005e844
mov r8d, r13d
xor edx, edx
mov rcx, rbx
call fcn.140050964
mov rcx, rbx
mov rdi, rax
call fcn.1400c12e8
mov rsi, rax
sub esi, edi
lea ecx, [rsi + 0xca]
movsxd rdx, ecx
lea rcx, [rsp + 0x128]
call fcn.140056f64
mov rdx, qword [rsp + 0x128]
lea r8d, [rsi + 0xc8]
lea r9, [rsp + 0x118]
mov rcx, rbx
mov dword [rsp + 0x118], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140050964
mov rdx, qword [rsp + 0x60]
lea r9, [rsp + 0x110]
mov r8d, r14d
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r8d, dword [rsp + 0x118]
mov rdx, qword [rsp + 0x128]
lea r9, [rsp + 0x110]
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r8d, r13d
xor edx, edx
mov rcx, rbx
call fcn.140050964
lea rcx, [rsp + 0x50]
movsxd rdx, eax
call fcn.14005ed64
lea rcx, [rsp + 0x128]
call fcn.14004f564
jmp 0x1400858d0
mov r12d, 1
lea rcx, [rsp + 0xb0]
call fcn.14004f564
mov rbx, qword [rsp + 0x120]
mov rax, r12
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret