Function at 0x14000eed0
Capabilities:
Delete file
Get file size
Read file on windows
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x120]
sub rsp, 0x220
mov rax, qword [0x1404b0028]
xor rax, rsp
mov qword [rbp + 0x110], rax
mov r13, rcx
mov qword [rbp + 0x100], rcx
mov edx, 1
lea ecx, [rdx + 8]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x88], rax
mov edx, 1
lea ecx, [rdx + 8]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x98], rax
mov edx, 1
lea ecx, [rdx + 8]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0xa0], rax
xor ebx, ebx
mov esi, ebx
lea r15, [0x140653520]
lea rdi, [r15 - 1]
mov r14, rdi
nop dword [rax]
movsxd rdx, esi
add rdx, r15
inc esi
lea r14, [r14 + 1]
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 1
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp byte [r14], bl
jne 0x14000ef70
mov r12, 0xffffffffffffffff
mov rdx, r12
nop dword [rax]
inc rdx
cmp byte [r15 + rdx], bl
jne 0x14000efb0
lea rcx, [rbp + 0x88]
call fcn.14001ef30
mov rcx, qword [rbp + 0x88]
mov eax, dword [rcx - 8]
inc eax
movsxd r8, eax
mov rdx, r15
call fcn.1402d15b0
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 4
lea rdx, [r13 + 0x58]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [r13 + 0x58]
cmp dword [r13 + 0x68], 1
jne 0x14000f02b
mov dword [rsp + 0x58], ecx
movzx eax, byte [rsp + 0x5b]
mov byte [rbp - 0x74], al
movzx eax, byte [rsp + 0x5a]
mov byte [rbp - 0x73], al
movzx eax, byte [rsp + 0x59]
mov byte [rbp - 0x72], al
mov byte [rbp - 0x71], cl
mov ecx, dword [rbp - 0x74]
mov dword [rbp + 0x90], ecx
mov esi, ebx
mov r14, rdi
lea r15, [0x140653520]
nop dword [rax]
movsxd rdx, esi
add rdx, r15
inc esi
lea r14, [r14 + 1]
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 1
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp byte [r14], bl
jne 0x14000f040
mov rdx, r12
lea r14, [0x140653520]
nop dword [rax]
inc rdx
cmp byte [r14 + rdx], bl
jne 0x14000f080
lea rcx, [rbp + 0x98]
call fcn.14001ef30
mov rcx, qword [rbp + 0x98]
mov eax, dword [rcx - 8]
inc eax
movsxd r8, eax
mov rdx, r14
call fcn.1402d15b0
mov esi, ebx
nop
movsxd rdx, esi
add rdx, r14
inc esi
lea rdi, [rdi + 1]
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 1
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp byte [rdi], bl
jne 0x14000f0b0
mov rdx, r12
inc rdx
cmp byte [r14 + rdx], bl
jne 0x14000f0e1
lea rcx, [rbp + 0xa0]
call fcn.14001ef30
mov rcx, qword [rbp + 0xa0]
lea rax, [rcx - 8]
mov qword [rbp + 0xf0], rax
mov eax, dword [rax]
inc eax
movsxd r8, eax
mov rdx, r14
call fcn.1402d15b0
lea rdx, str.UnityWeb
mov r14, qword [rbp + 0x88]
mov rcx, r14
call fcn.1402ec350
mov esi, dword [rbp + 0x90]
test eax, eax
je 0x14000f14a
lea rdx, str.UnityRaw
mov rcx, r14
call fcn.1402ec350
test eax, eax
jne 0x14000f1b7
cmp esi, 6
je 0x14000f1b7
cmp esi, 4
jb 0x14000f19b
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 0x10
lea rdx, [rbp + 0x100]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 4
lea rdx, [r13 + 0x58]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, qword [r13 + 0x20]
test rcx, rcx
je 0x140010a8d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r13 + 0x20], rbx
jmp 0x140010a8d
mov rcx, rbx
lea rdx, str.UnityFS
movzx eax, byte [r14 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x14000f1d7
cmp rcx, 8
jne 0x14000f1c1
jmp 0x14000f20a
lea rdx, str.UnityWeb
mov rcx, r14
call fcn.1402ec350
test eax, eax
je 0x14000f201
lea rdx, str.UnityRaw
mov rcx, r14
call fcn.1402ec350
test eax, eax
jne 0x140010a8d
cmp esi, 6
jne 0x140010a8d
mov qword [rbp + 0x80], rbx
mov r9d, 1
lea r8, [rbp + 0x80]
mov rdx, rbx
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rcx, r13
call fcn.140008150
mov qword [rbp + 0xa8], rax
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 4
lea rdx, [r13 + 0x58]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov edi, dword [r13 + 0x58]
cmp dword [r13 + 0x68], 1
jne 0x14000f28f
mov dword [rsp + 0x58], edi
movzx eax, byte [rsp + 0x5b]
mov byte [rsp + 0x40], al
movzx eax, byte [rsp + 0x5a]
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x59]
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], dil
mov edi, dword [rsp + 0x40]
mov dword [rbp + 0xb0], edi
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 4
lea rdx, [r13 + 0x58]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r12d, dword [r13 + 0x58]
mov dword [rbp - 0x48], r12d
cmp dword [r13 + 0x68], 1
jne 0x14000f2f4
mov dword [rsp + 0x58], r12d
movzx eax, byte [rsp + 0x5b]
mov byte [rsp + 0x40], al
movzx eax, byte [rsp + 0x5a]
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x59]
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], r12b
mov r12d, dword [rsp + 0x40]
mov dword [rbp - 0x48], r12d
mov dword [rbp + 0xb4], r12d
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 4
lea rdx, [r13 + 0x58]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [r13 + 0x58]
mov dword [rsp + 0x58], ecx
cmp dword [r13 + 0x68], 1
jne 0x14000f357
mov dword [rsp + 0x58], ecx
movzx eax, byte [rsp + 0x5b]
mov byte [rsp + 0x40], al
movzx eax, byte [rsp + 0x5a]
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x59]
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], cl
mov ecx, dword [rsp + 0x40]
mov dword [rsp + 0x58], ecx
mov dword [rbp - 0x30], ecx
mov dword [rbp + 0xb8], ecx
mov rcx, rbx
lea rdx, str.UnityFS
nop word [rax + rax]
movzx eax, byte [r14 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x14000f386
cmp rcx, 8
jne 0x14000f370
jmp 0x14000f3a9
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 1
lea rdx, [rsp + 0x74]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r15d, edi
mov edx, 1
mov ecx, edi
call fcn.1402deebc
mov r14, rax
cmp esi, 7
jb 0x14000f40c
mov qword [rsp + 0x78], rbx
mov r9d, 1
lea r8, [rsp + 0x78]
mov rdx, rbx
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rax, qword [rsp + 0x78]
mov edx, eax
and edx, 0xf
je 0x14000f40c
mov ecx, 0x10
sub ecx, edx
mov edx, ecx
add rdx, rax
mov qword [rsp + 0x60], rdx
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov qword [rbp - 0x20], rbx
mov r9d, 1
lea r8, [rbp - 0x20]
mov rdx, rbx
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov esi, dword [rsp + 0x58]
mov eax, esi
and eax, 0x80
mov dword [rsp + 0x68], eax
je 0x14000f4cf
mov qword [rsp + 0x78], rbx
mov r9d, 1
lea r8, [rsp + 0x78]
mov rdx, rbx
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
lea rdx, [rsp + 0x50]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edx, dword [rsp + 0x50]
shl rdx, 0x20
mov eax, eax
add rdx, rax
sub rdx, r15
mov qword [rsp + 0x60], rdx
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [rsp + 0x50], ebx
test edi, edi
je 0x14000f4b1
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, edi
mov rdx, r14
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x60], rdx
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
jmp 0x14000f4f1
mov dword [rsp + 0x50], ebx
test edi, edi
je 0x14000f4f1
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, edi
mov rdx, r14
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, esi
and eax, 0x3f
mov dword [rbp - 0x28], eax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r12d
mov r9d, edi
lea r8, [rbp + 8]
mov rdx, r14
call fcn.14000da30
mov rcx, r14
call fcn.1402d83b4
mov r15, qword [rbp + 8]
movups xmm0, xmmword [r15]
movups xmmword [rbp + 0x38], xmm0
mov ecx, dword [r15 + 0x10]
mov dword [rbp - 4], ecx
mov dword [rsp + 0x48], ecx
mov eax, ecx
shr eax, 0x18
mov dword [rbp - 8], eax
movzx eax, byte [rsp + 0x4b]
mov byte [rsp + 0x40], al
mov eax, ecx
shr eax, 0x10
mov dword [rbp - 0x10], eax
movzx eax, byte [rsp + 0x4a]
mov byte [rsp + 0x41], al
mov eax, ecx
shr eax, 8
mov dword [rbp], eax
movzx eax, byte [rsp + 0x49]
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], cl
mov eax, 0x14
mov dword [rbp - 0x68], eax
mov r14d, eax
mov dword [rbp - 0x64], eax
mov edi, dword [rsp + 0x40]
mov esi, edi
mov eax, ntohs
mul rdi
mov r12, 0xffffffffffffffff
cmovo rax, r12
mov rcx, rax
call fcn.140048ef0
mov qword [rbp + 0x70], rax
test edi, edi
je 0x14000f649
lea r9, [rax + 8]
nop word [rax + rax]
mov r8d, r14d
mov ecx, r14d
mov edx, dword [rcx + r15]
mov ecx, edx
shr ecx, 0x18
mov byte [rsp + 0x40], cl
mov eax, edx
shr eax, 0x10
mov byte [rsp + 0x41], al
mov eax, edx
shr eax, 8
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], dl
mov eax, dword [rsp + 0x40]
mov dword [r9 - 4], eax
add r14d, 4
mov ecx, dword [r14 + r15]
mov eax, ecx
shr eax, 0x18
mov byte [rsp + 0x70], al
mov eax, ecx
shr eax, 0x10
mov byte [rsp + 0x71], al
mov eax, ecx
shr eax, 8
mov byte [rsp + 0x72], al
mov byte [rsp + 0x73], cl
mov eax, dword [rsp + 0x70]
mov dword [r9 - 8], eax
lea edx, [r8 + 8]
mov dword [rbp - 0x78], edx
movzx ecx, word [rdx + r15]
movzx eax, cx
shr ax, 8
mov byte [rsp + 0x74], al
mov byte [rsp + 0x75], cl
movzx eax, word [rsp + 0x74]
mov dword [r9], eax
lea r14d, [rdx + 2]
lea r9, [r9 + 0xc]
sub rsi, 1
jne 0x14000f5b0
mov dword [rbp - 0x64], r14d
mov ecx, r14d
mov edx, dword [rcx + r15]
mov dword [rbp + 0x30], edx
mov dword [rsp + 0x48], edx
mov eax, edx
shr eax, 0x18
mov dword [rbp - 0x38], eax
movzx eax, byte [rsp + 0x4b]
mov byte [rsp + 0x70], al
mov eax, edx
shr eax, 0x10
mov dword [rbp - 0x40], eax
movzx eax, byte [rsp + 0x4a]
mov byte [rsp + 0x71], al
mov eax, edx
shr eax, 8
mov dword [rbp + 0x20], eax
movzx eax, byte [rsp + 0x49]
mov byte [rsp + 0x72], al
mov byte [rsp + 0x73], dl
lea edi, [rcx + 4]
mov r14d, dword [rsp + 0x70]
mov qword [rbp + 0x28], r14
mov qword [rbp - 0x50], r14
mov eax, 0x20
mul r14
cmovo rax, r12
add rax, 8
cmovb rax, r12
mov rcx, rax
call fcn.140048ef0
mov qword [rsp + 0x60], rax
mov qword [rax], r14
lea rsi, [rax + 8]
mov qword [rbp + 0x18], rsi
lea rax, [0x14000eeb0]
mov qword [rsp + 0x20], rax
lea r9, [0x14000ee80]
mov r8d, r14d
mov edx, 0x20
mov rcx, rsi
call fcn.140048f00
nop
cmp dword [rsp + 0x70], 0
jbe 0x14000f83d
add rsi, 0x18
jmp 0x14000f704
mov r15, qword [rbp + 8]
mov edx, edi
mov rcx, qword [rdi + r15]
mov rax, rcx
shr rax, 0x38
mov byte [rbp - 0x70], al
mov rax, rcx
shr rax, 0x30
mov byte [rbp - 0x6f], al
mov rax, rcx
shr rax, 0x28
mov byte [rbp - 0x6e], al
mov rax, rcx
shr rax, 0x20
mov byte [rbp - 0x6d], al
mov rax, rcx
shr rax, 0x18
mov byte [rbp - 0x6c], al
mov rax, rcx
shr rax, 0x10
mov byte [rbp - 0x6b], al
mov rax, rcx
shr rax, 8
mov byte [rbp - 0x6a], al
mov byte [rbp - 0x69], cl
mov rax, qword [rbp - 0x70]
mov qword [rsi - 0x18], rax
add edi, 8
mov rcx, qword [rdi + r15]
mov rax, rcx
shr rax, 0x38
mov byte [rbp - 0x80], al
mov rax, rcx
shr rax, 0x30
mov byte [rbp - 0x7f], al
mov rax, rcx
shr rax, 0x28
mov byte [rbp - 0x7e], al
mov rax, rcx
shr rax, 0x20
mov byte [rbp - 0x7d], al
mov rax, rcx
shr rax, 0x18
mov byte [rbp - 0x7c], al
mov rax, rcx
shr rax, 0x10
mov byte [rbp - 0x7b], al
mov rax, rcx
shr rax, 8
mov byte [rbp - 0x7a], al
mov byte [rbp - 0x79], cl
mov rax, qword [rbp - 0x80]
mov qword [rsi - 0x10], rax
add edx, 0x10
mov ecx, dword [rdx + r15]
mov eax, ecx
shr eax, 0x18
mov byte [rsp + 0x40], al
mov eax, ecx
shr eax, 0x10
mov byte [rsp + 0x41], al
mov eax, ecx
shr eax, 8
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], cl
mov eax, dword [rsp + 0x40]
mov dword [rsi - 8], eax
lea r15d, [rdx + 4]
mov dword [rbp - 0x78], r15d
mov edi, r15d
add rdi, qword [rbp + 8]
mov rdx, r12
inc rdx
cmp byte [rdi + rdx], 0
jne 0x14000f7f2
mov rcx, rsi
call fcn.14001ef30
mov rcx, qword [rsi]
mov eax, dword [rcx - 8]
inc eax
movsxd r8, eax
mov rdx, rdi
call fcn.1402d15b0
mov rax, r12
nop dword [rax]
inc rax
cmp byte [rdi + rax], 0
jne 0x14000f820
lea edi, [r15 + 1]
add edi, eax
add rsi, 0x20
sub r14, 1
jne 0x14000f700
mov eax, dword [rsp + 0x58]
and eax, 0x200
mov dword [rsp + 0x50], eax
je 0x14000f898
mov qword [rsp + 0x78], rbx
mov r9d, 1
lea r8, [rsp + 0x78]
mov rdx, rbx
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rax, qword [rsp + 0x78]
mov edx, eax
and edx, 0xf
je 0x14000f898
mov ecx, 0x10
sub ecx, edx
mov edx, ecx
add rdx, rax
mov qword [rsp + 0x60], rdx
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x10], rax
mov rax, qword [r13 + 0x30]
mov edx, dword [rax - 8]
add edx, 5
lea rcx, [rbp + 0x10]
call fcn.14001e440
mov rdx, qword [r13 + 0x30]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov r15, qword [rbp + 0x10]
mov rcx, r15
call fcn.1402d15b0
mov rax, qword [r13 + 0x30]
movsxd rcx, dword [rax - 8]
movsd xmm0, qword [str..temp]
movsd qword [r15 + rcx*2], xmm0
movzx eax, word [0x1404707b8]
mov word [r15 + rcx*2 + 8], ax
lea rax, vtable.SFile.0
mov qword [rbp + 0xd8], rax
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0xe8], rax
mov qword [rbp + 0xe0], rbx
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp - 0x18], rax
mov rdx, r12
inc rdx
cmp word [r15 + rdx*2], 0
jne 0x14000f940
lea rcx, [rbp - 0x18]
call fcn.14001e440
mov rcx, qword [rbp - 0x18]
mov eax, dword [rcx - 8]
lea eax, [rax*2 + 2]
movsxd r8, eax
mov rdx, r15
call fcn.1402d15b0
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x60]
call fcn.14001da90
mov rdi, rax
mov rcx, qword [rax]
mov edx, dword [rcx - 8]
lea rcx, [rbp + 0xe8]
call fcn.14001e440
mov rdx, qword [rdi]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov rdi, qword [rbp + 0xe8]
mov rcx, rdi
call fcn.1402d15b0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14000f9bd
lea rcx, [rax - 8]
call fcn.1402d83b4
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r14, rax
mov qword [rbp - 0x70], rax
mov qword [rbp + 0xe0], rax
cmp rax, 0xffffffffffffffff
jne 0x14000fa0e
mov r14, rbx
mov qword [rbp - 0x70], rbx
mov qword [rbp + 0xe0], rbx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, dword [rbp - 0x20]
mov ecx, edi
mov edx, 1
call fcn.1402deebc
mov rsi, rax
mov qword [rsp + 0x60], rbx
xor r9d, r9d
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [rbp - 0x60], ebx
test edi, edi
je 0x14000fa72
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x60]
mov r8d, edi
mov rdx, rsi
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov qword [rsp + 0x20], rbx
lea r9, [rbp + 4]
mov r8d, edi
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp - 0x18], rax
mov rax, qword [r13 + 0x30]
mov edx, dword [rax - 8]
add edx, 6
lea rcx, [rbp - 0x18]
call fcn.14001e440
mov rdx, qword [r13 + 0x30]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov rsi, qword [rbp - 0x18]
mov rcx, rsi
call fcn.1402d15b0
mov rax, qword [r13 + 0x30]
movsxd rcx, dword [rax - 8]
movsd xmm0, qword [str..tempc]
movsd qword [rsi + rcx*2], xmm0
mov eax, dword [0x1404709a0]
mov dword [rsi + rcx*2 + 8], eax
lea rax, vtable.SFile.0
mov qword [rbp + 0xc0], rax
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xc8], rbx
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp - 0x58], rax
mov rdx, r12
inc rdx
cmp word [rsi + rdx*2], 0
jne 0x14000fb16
lea rcx, [rbp - 0x58]
call fcn.14001e440
mov rcx, qword [rbp - 0x58]
mov eax, dword [rcx - 8]
lea eax, [rax*2 + 2]
movsxd r8, eax
mov rdx, rsi
call fcn.1402d15b0
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x60]
call fcn.14001da90
mov rdi, rax
mov rcx, qword [rax]
mov edx, dword [rcx - 8]
lea rcx, [rbp + 0xd0]
call fcn.14001e440
mov rdx, qword [rdi]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov rdi, qword [rbp + 0xd0]
mov rcx, rdi
call fcn.1402d15b0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14000fb92
lea rcx, [rax - 8]
call fcn.1402d83b4
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbp - 0x80], rax
mov qword [rbp + 0xc8], rax
cmp rax, 0xffffffffffffffff
jne 0x14000fbdd
mov qword [rbp - 0x80], rbx
mov qword [rbp + 0xc8], rbx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x50], rax
mov rax, qword [r13 + 0x30]
mov edx, dword [rax - 8]
add edx, 5
lea rcx, [rbp + 0x50]
call fcn.14001e440
mov rdx, qword [r13 + 0x30]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov r14, qword [rbp + 0x50]
mov rcx, r14
call fcn.1402d15b0
mov rax, qword [r13 + 0x30]
movsxd rcx, dword [rax - 8]
movsd xmm0, qword [str._OUT_]
movsd qword [r14 + rcx*2], xmm0
movzx eax, word [0x140470990]
mov word [r14 + rcx*2 + 8], ax
mov rax, rbx
mov qword [rsp + 0x78], rbx
mov ecx, dword [rsp + 0x70]
test ecx, ecx
je 0x14000fe4c
mov r15, qword [rbp + 0x18]
add r15, 0x18
mov rax, qword [rbp + 0x28]
mov qword [rbp - 0x20], rax
mov rsi, rbx
jmp 0x14000fc77
mov r12, 0xffffffffffffffff
mov rcx, qword [r15]
call fcn.14001f970
mov r13, rax
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rsp + 0x78], rax
nop dword [rax + rax]
inc r12
cmp word [r13 + r12*2], 0
jne 0x14000fca0
mov edx, dword [r14 - 8]
add edx, r12d
lea rcx, [rsp + 0x78]
call fcn.14001e440
mov eax, dword [r14 - 8]
add eax, eax
movsxd r8, eax
mov rdx, r14
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.1402d15b0
lea eax, [r12 + r12]
movsxd r8, eax
movsxd rax, dword [r14 - 8]
lea rcx, [rdi + rax*2]
mov rdx, r13
call fcn.1402d15b0
lea rax, vtable.SFile.0
mov qword [rbp + 0x58], rax
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x60], rbx
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp - 0x58], rax
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp word [rdi + rdx*2], 0
jne 0x14000fd30
lea rcx, [rbp - 0x58]
call fcn.14001e440
mov rcx, qword [rbp - 0x58]
mov eax, dword [rcx - 8]
lea eax, [rax*2 + 2]
movsxd r8, eax
mov rdx, rdi
call fcn.1402d15b0
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x60]
call fcn.14001da90
mov r12, rax
mov rcx, qword [rax]
mov edx, dword [rcx - 8]
lea rcx, [rbp + 0x68]
call fcn.14001e440
mov rdx, qword [r12]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov r13, qword [rbp + 0x68]
mov rcx, r13
call fcn.1402d15b0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14000fda7
lea rcx, [rax - 8]
call fcn.1402d83b4
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
jne 0x14000fde1
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x14000fe0b
lea rdx, [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edx, dword [rbp - 0x60]
shl rdx, 0x20
mov eax, eax
add rdx, rax
add rsi, rdx
test r12, r12
je 0x14000fe0b
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r13, r13
je 0x14000fe19
lea rcx, [r13 - 8]
call fcn.1402d83b4
test rdi, rdi
je 0x14000fe27
lea rcx, [rdi - 8]
call fcn.1402d83b4
add r15, 0x20
sub qword [rbp - 0x20], 1
jne 0x14000fc70
mov qword [rsp + 0x78], rsi
mov rsi, qword [rbp - 0x18]
mov r15, qword [rbp + 0x10]
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x70]
mov rdi, qword [rbp + 0x18]
mov r12, rdi
shr rax, 0x12
add eax, ecx
lea eax, [rax + rax*4]
add eax, eax
sub eax, dword [rbp - 0x64]
mov ecx, dword [rbp - 0x48]
add ecx, 0x18
add ecx, eax
mov edx, 1
call fcn.1402deebc
mov r13, rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x20], rbx
mov rax, qword [rbp + 0x70]
mov eax, dword [rax + 8]
and eax, 0x3f
mov dword [rbp + 4], eax
movups xmm0, xmmword [rbp + 0x38]
movups xmmword [r13], xmm0
mov eax, dword [rbp - 4]
mov byte [rsp + 0x40], al
mov eax, dword [rbp]
mov byte [rsp + 0x41], al
mov eax, dword [rbp - 0x10]
mov byte [rsp + 0x42], al
mov eax, dword [rbp - 8]
mov byte [rsp + 0x43], al
mov eax, dword [rsp + 0x40]
mov dword [r13 + 0x10], eax
mov ecx, ebx
mov dword [rsp + 0x40], ebx
add r12, 0x18
cmp dword [rsp + 0x70], ebx
jbe 0x140010268
lea r15, [rdi + 8]
mov qword [rbp - 0x58], r15
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x60], rax
nop
mov rcx, qword [r15 + 0x10]
call fcn.14001f970
mov r15, rax
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x48], rax
mov rsi, 0xffffffffffffffff
mov r12, rsi
nop dword [rax + rax]
inc r12
cmp word [r15 + r12*2], 0
jne 0x14000ff10
mov edx, dword [r14 - 8]
add edx, r12d
lea rcx, [rbp + 0x48]
call fcn.14001e440
mov eax, dword [r14 - 8]
add eax, eax
movsxd r8, eax
mov rdx, r14
mov rdi, qword [rbp + 0x48]
mov rcx, rdi
call fcn.1402d15b0
lea eax, [r12 + r12]
movsxd r8, eax
movsxd rax, dword [r14 - 8]
lea rcx, [rdi + rax*2]
mov rdx, r15
call fcn.1402d15b0
nop
lea rax, vtable.SFile.0
mov qword [rbp + 0x58], rax
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x60], rbx
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rbp - 0x10], rax
mov rdx, rsi
nop word [rax + rax]
inc rdx
cmp word [rdi + rdx*2], 0
jne 0x14000ffa0
lea rcx, [rbp - 0x10]
call fcn.14001e440
mov rcx, qword [rbp - 0x10]
mov eax, dword [rcx - 8]
lea eax, [rax*2 + 2]
movsxd r8, eax
mov rdx, rdi
call fcn.1402d15b0
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x50]
call fcn.14001da90
mov r12, rax
mov rcx, qword [rax]
mov edx, dword [rcx - 8]
lea rcx, [rbp + 0x68]
call fcn.14001e440
mov rdx, qword [r12]
mov eax, dword [rdx - 8]
add eax, eax
movsxd r8, eax
mov rsi, qword [rbp + 0x68]
mov rcx, rsi
call fcn.1402d15b0
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x140010015
lea rcx, [rax - 8]
call fcn.1402d83b4
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r13, rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x60], rax
cmp rax, 0xffffffffffffffff
jne 0x140010061
mov r13, rbx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r15, qword [rbp - 0x58]
jmp 0x140010210
mov r15, qword [rbp - 0x58]
mov rax, qword [rbp - 0x20]
mov qword [r15 - 8], rax
lea rdx, [rbp - 8]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ecx, dword [rbp - 8]
shl rcx, 0x20
mov eax, eax
add rcx, rax
mov qword [r15], rcx
mov edx, 1
mov ecx, 0x40000
call fcn.1402deebc
mov rsi, rax
mov r12d, dword [r15]
mov dword [rbp - 0x60], ebx
test r12d, r12d
je 0x1400101e8
mov r15, qword [rbp + 0x38]
mov r14, qword [rsp + 0x78]
mov edi, dword [rbp - 0x68]
nop word [rax + rax]
mov dword [rbp - 0x10], edi
mov dword [rbp - 0x48], ebx
cmp r12d, 0x40000
jae 0x1400100d9
mov r13d, r12d
test r12d, r12d
je 0x1400100f7
jmp 0x1400100df
mov r13d, 0x40000
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x48]
mov r8d, r13d
mov rdx, rsi
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [rbp + 4]
mov dword [rsp + 0x28], eax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
mov r9d, r13d
lea r8, [rbp + 0x78]
mov rdx, rsi
call fcn.14000db70
mov eax, r13d
shr eax, 0x18
mov byte [rbp - 0x64], al
mov eax, r13d
shr eax, 0x10
mov byte [rbp - 0x63], al
mov eax, r13d
shr eax, 8
mov byte [rbp - 0x62], al
mov byte [rbp - 0x61], r13b
mov ecx, edi
mov eax, dword [rbp - 0x64]
mov dword [rcx + r14], eax
add edi, 4
mov r8d, dword [rbp - 0x60]
mov eax, r8d
shr eax, 0x18
mov byte [rsp + 0x48], al
mov eax, r8d
shr eax, 0x10
mov byte [rsp + 0x49], al
mov eax, r8d
shr eax, 8
mov byte [rsp + 0x4a], al
mov byte [rsp + 0x4b], r8b
mov eax, dword [rsp + 0x48]
mov dword [rdi + r14], eax
mov edx, dword [rbp - 0x10]
add edx, 8
mov dword [rbp - 0x78], edx
mov rax, qword [rbp + 0x70]
movzx ecx, word [rax + 8]
movzx eax, cx
shr ax, 8
mov byte [rsp + 0x74], al
mov byte [rsp + 0x75], cl
movzx eax, word [rsp + 0x74]
mov word [rdx + r14], ax
lea edi, [rdx + 2]
inc dword [rsp + 0x40]
mov rax, qword [rbp + 0x78]
test r8d, r8d
je 0x1400101c4
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 4]
mov rdx, rax
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rax, qword [rbp + 0x78]
mov rcx, rax
call fcn.1402d83b4
sub r12d, r13d
jne 0x1400100c0
mov dword [rbp - 0x68], edi
mov rdi, qword [rbp + 0x48]
mov r14, qword [rbp + 0x50]
mov r13, qword [rbp + 0x38]
mov r15, qword [rbp - 0x58]
mov rcx, rsi
call fcn.1402d83b4
test r13, r13
je 0x140010201
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13, rbx
mov rax, qword [rbp - 0x20]
add rax, qword [r15]
mov qword [rbp - 0x20], rax
mov rsi, qword [rbp + 0x68]
test r13, r13
je 0x14001021e
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test rsi, rsi
je 0x14001022d
lea rcx, [rsi - 8]
call fcn.1402d83b4
nop
test rdi, rdi
je 0x14001023b
lea rcx, [rdi - 8]
call fcn.1402d83b4
add r15, 0x20
mov qword [rbp - 0x58], r15
sub qword [rsp + 0x60], 1
jne 0x14000fee0
mov r12, qword [rbp + 0x18]
add r12, 0x18
mov rsi, qword [rbp - 0x18]
mov r15, qword [rbp + 0x10]
mov r13, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x40]
movzx eax, byte [rsp + 0x43]
mov byte [rsp + 0x48], al
movzx eax, byte [rsp + 0x42]
mov byte [rsp + 0x49], al
movzx eax, byte [rsp + 0x41]
mov byte [rsp + 0x4a], al
mov byte [rsp + 0x4b], cl
mov eax, dword [rsp + 0x48]
mov dword [r13 + 0x10], eax
mov eax, dword [rbp + 0x30]
mov byte [rsp + 0x48], al
mov eax, dword [rbp + 0x20]
mov byte [rsp + 0x49], al
mov eax, dword [rbp - 0x40]
mov byte [rsp + 0x4a], al
mov eax, dword [rbp - 0x38]
mov byte [rsp + 0x4b], al
mov edx, dword [rbp - 0x68]
mov eax, dword [rsp + 0x48]
mov dword [rdx + r13], eax
add edx, 4
mov dword [rbp - 0x68], edx
mov dword [rbp - 0x78], edx
cmp dword [rsp + 0x70], 0
jbe 0x1400103e9
mov rbx, qword [rbp + 0x28]
nop
mov edi, edx
mov rcx, qword [r12 - 0x18]
mov rax, rcx
shr rax, 0x38
mov byte [rbp - 0x38], al
mov rax, rcx
shr rax, 0x30
mov byte [rbp - 0x37], al
mov rax, rcx
shr rax, 0x28
mov byte [rbp - 0x36], al
mov rax, rcx
shr rax, 0x20
mov byte [rbp - 0x35], al
mov rax, rcx
shr rax, 0x18
mov byte [rbp - 0x34], al
mov rax, rcx
shr rax, 0x10
mov byte [rbp - 0x33], al
mov rax, rcx
shr rax, 8
mov byte [rbp - 0x32], al
mov byte [rbp - 0x31], cl
mov rax, qword [rbp - 0x38]
mov qword [rdx + r13], rax
add edx, 8
mov rcx, qword [r12 - 0x10]
mov rax, rcx
shr rax, 0x38
mov byte [rbp - 0x40], al
mov rax, rcx
shr rax, 0x30
mov byte [rbp - 0x3f], al
mov rax, rcx
shr rax, 0x28
mov byte [rbp - 0x3e], al
mov rax, rcx
shr rax, 0x20
mov byte [rbp - 0x3d], al
mov rax, rcx
shr rax, 0x18
mov byte [rbp - 0x3c], al
mov rax, rcx
shr rax, 0x10
mov byte [rbp - 0x3b], al
mov rax, rcx
shr rax, 8
mov byte [rbp - 0x3a], al
mov byte [rbp - 0x39], cl
mov rax, qword [rbp - 0x40]
mov qword [rdx + r13], rax
add edi, 0x10
mov ecx, dword [r12 - 8]
mov eax, ecx
shr eax, 0x18
mov byte [rsp + 0x48], al
mov eax, ecx
shr eax, 0x10
mov byte [rsp + 0x49], al
mov eax, ecx
shr eax, 8
mov byte [rsp + 0x4a], al
mov byte [rsp + 0x4b], cl
mov eax, dword [rsp + 0x48]
mov dword [rdi + r13], eax
add edi, 4
mov rdx, qword [r12]
mov eax, dword [rdx - 8]
inc eax
movsxd r8, eax
mov ecx, edi
add rcx, r13
call fcn.1402d15b0
mov rax, qword [r12]
mov edx, dword [rax - 8]
inc edx
add edx, edi
mov dword [rbp - 0x78], edx
lea r12, [r12 + 0x20]
sub rbx, 1
jne 0x1400102d0
mov dword [rbp - 0x68], edx
mov rcx, qword [rbp + 8]
call fcn.1402d83b4
mov dword [rsp + 0x40], ebx
mov eax, dword [rbp - 0x28]
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp - 0x68]
lea r8, [rbp + 0x38]
mov rdx, r13
call fcn.14000db70
mov r13, qword [rbp + 0x38]
cmp dword [rsp + 0x68], 0
je 0x14001059c
cmp dword [rsp + 0x50], 0
je 0x1400104c6
mov qword [rsp + 0x60], rbx
mov r9d, 1
lea r8, [rsp + 0x60]
mov rdx, rbx
mov r12, qword [rbp - 0x70]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rdi, qword [rsp + 0x60]
test dil, 0xf
je 0x140010464
and rdi, 0xfffffffffffffff0
add rdi, 0x10
mov qword [rsp + 0x60], rbx
mov r9d, 1
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
cmp rdi, qword [rsp + 0x60]
je 0x1400104c6
mov qword [rsp + 0x60], rbx
mov r9d, 1
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
sub edi, dword [rsp + 0x60]
je 0x1400104c6
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, edi
lea rdx, [0x1404709a8]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea rdx, [rsp + 0x68]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ecx, dword [rsp + 0x68]
shl rcx, 0x20
add rcx, rax
mov edi, ecx
mov ecx, ecx
mov edx, 1
call fcn.1402deebc
mov r12, rax
mov qword [rbp - 0x50], rbx
xor r9d, r9d
lea r8, [rbp - 0x50]
mov rdx, rbx
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [rsp + 0x68], ebx
test edi, edi
je 0x14001052b
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, edi
mov rdx, r12
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x140010541
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x80], rbx
test edi, edi
je 0x140010564
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, edi
mov rdx, r12
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x140010568
mov rdi, qword [rbp - 0x70]
mov rcx, r12
call fcn.1402d83b4
mov r12d, dword [rsp + 0x40]
test r12d, r12d
je 0x14001070a
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, r12d
mov rdx, r13
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x14001070a
mov r12d, dword [rsp + 0x40]
test r12d, r12d
je 0x1400105c5
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, r12d
mov rdx, r13
mov r13, qword [rbp - 0x70]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x1400105c9
mov r13, qword [rbp - 0x70]
cmp dword [rsp + 0x50], 0
je 0x140010665
mov qword [rsp + 0x60], rbx
mov r9d, 1
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rdi, qword [rsp + 0x60]
test dil, 0xf
je 0x140010603
and rdi, 0xfffffffffffffff0
add rdi, 0x10
mov qword [rsp + 0x60], rbx
mov r9d, 1
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
cmp rdi, qword [rsp + 0x60]
je 0x140010665
mov qword [rsp + 0x60], rbx
mov r9d, 1
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
sub edi, dword [rsp + 0x60]
je 0x140010665
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, edi
lea rdx, [0x1404709a8]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea rdx, [rsp + 0x68]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ecx, dword [rsp + 0x68]
shl rcx, 0x20
add rcx, rax
mov edi, ecx
mov ecx, ecx
mov edx, 1
call fcn.1402deebc
mov r13, rax
mov qword [rbp - 0x50], rbx
xor r9d, r9d
lea r8, [rbp - 0x50]
mov rdx, rbx
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [rsp + 0x68], ebx
test edi, edi
je 0x1400106ca
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, edi
mov rdx, r13
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x1400106e0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x80], rbx
test edi, edi
je 0x1400106fe
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, edi
mov rdx, r13
mov rcx, qword [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, r13
call fcn.1402d83b4
mov r13, qword [rbp + 0x38]
mov rcx, qword [rsp + 0x78]
call fcn.1402d83b4
mov rcx, r13
call fcn.1402d83b4
mov rcx, rsi
call fcn.1400214e0
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rsp + 0x78], rax
mov r13, 0xffffffffffffffff
mov rdx, r13
inc rdx
cmp word [rsi + rdx*2], 0
jne 0x140010744
lea rcx, [rsp + 0x78]
call fcn.14001e440
mov rcx, qword [rsp + 0x78]
mov eax, dword [rcx - 8]
lea eax, [rax*2 + 2]
movsxd r8, eax
mov rdx, rsi
call fcn.1402d15b0
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x50]
call fcn.14001da90
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x14001079b
lea rcx, [rax - 8]
call fcn.1402d83b4
lea rdx, [rsp + 0x68]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ecx, dword [rsp + 0x68]
shl rcx, 0x20
mov eax, eax
add rcx, rax
mov qword [rbp - 0x28], rcx
movzx eax, byte [rbp - 0x21]
mov byte [rsp + 0x68], al
movzx eax, byte [rbp - 0x22]
mov byte [rsp + 0x69], al
movzx eax, byte [rbp - 0x23]
mov byte [rsp + 0x6a], al
movzx eax, byte [rbp - 0x24]
mov byte [rsp + 0x6b], al
movzx eax, byte [rbp - 0x25]
mov byte [rsp + 0x6c], al
movzx eax, byte [rbp - 0x26]
mov byte [rsp + 0x6d], al
movzx eax, byte [rbp - 0x27]
mov byte [rsp + 0x6e], al
mov byte [rsp + 0x6f], cl
mov rax, qword [rsp + 0x68]
mov qword [rbp + 0xf8], rax
mov rdx, qword [rbp + 0x80]
mov qword [rbp - 0x50], rdx
xor r9d, r9d
lea r8, [rbp - 0x50]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, 8
lea rdx, [rbp + 0xf8]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
movzx eax, byte [rsp + 0x43]
mov byte [rsp + 0x48], al
movzx eax, byte [rsp + 0x42]
mov byte [rsp + 0x49], al
movzx eax, byte [rsp + 0x41]
mov byte [rsp + 0x4a], al
mov byte [rsp + 0x4b], r12b
mov eax, dword [rsp + 0x48]
mov dword [rbp - 0x74], eax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, 4
lea rdx, [rbp - 0x74]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
movzx eax, byte [rbp - 0x75]
mov byte [rsp + 0x48], al
movzx eax, byte [rbp - 0x76]
mov byte [rsp + 0x49], al
movzx eax, byte [rbp - 0x77]
mov byte [rsp + 0x4a], al
mov eax, dword [rbp - 0x68]
mov byte [rsp + 0x4b], al
mov eax, dword [rsp + 0x48]
mov dword [rbp - 0x74], eax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, 4
lea rdx, [rbp - 0x74]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
movzx eax, byte [rbp - 0x2d]
mov byte [rsp + 0x48], al
movzx eax, byte [rbp - 0x2e]
mov byte [rsp + 0x49], al
movzx eax, byte [rbp - 0x2f]
mov byte [rsp + 0x4a], al
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x4b], al
mov eax, dword [rsp + 0x48]
mov dword [rbp - 0x74], eax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, 4
lea rdx, [rbp - 0x74]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov qword [rbp - 0x50], rbx
mov r9d, 2
lea r8, [rbp - 0x50]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x68]
mov r8d, 0x10
lea rdx, [0x140470a40]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test rdi, rdi
je 0x140010959
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r12, rbx
jmp 0x14001095d
mov r12, qword [rbp - 0x70]
mov rdi, qword [rbp + 0x100]
mov rcx, qword [rdi + 0x20]
test rcx, rcx
je 0x140010977
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x20], rbx
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.1400214e0
mov edx, 1
lea ecx, [rdx + 9]
call fcn.1402deebc
add rax, 8
mov qword [rsp + 0x78], rax
nop dword [rax]
inc r13
cmp word [rbx + r13*2], 0
jne 0x1400109a0
mov rdx, r13
lea rcx, [rsp + 0x78]
call fcn.14001e440
mov rcx, qword [rsp + 0x78]
mov eax, dword [rcx - 8]
lea eax, [rax*2 + 2]
movsxd r8, eax
mov rdx, rbx
call fcn.1402d15b0
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x100]
call fcn.14001da90
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rax, qword [rbp + 0x100]
test rax, rax
je 0x140010a01
lea rcx, [rax - 8]
call fcn.1402d83b4
mov rdx, qword [rdi + 0x30]
mov rcx, r15
call fcn.14001dcb0
nop
test r14, r14
je 0x140010a1d
lea rcx, [r14 - 8]
call fcn.1402d83b4
nop
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x140010a2f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rbp + 0xd0]
test rax, rax
je 0x140010a45
lea rcx, [rax - 8]
call fcn.1402d83b4
nop
test rsi, rsi
je 0x140010a54
lea rcx, [rsi - 8]
call fcn.1402d83b4
nop
test r12, r12
je 0x140010a62
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rbp + 0xe8]
test rax, rax
je 0x140010a78
lea rcx, [rax - 8]
call fcn.1402d83b4
nop
test r15, r15
je 0x140010a86
lea rcx, [r15 - 8]
call fcn.1402d83b4
mov r14, qword [rbp + 0x88]
mov rcx, qword [rbp + 0xf0]
call fcn.1402d83b4
mov rcx, qword [rbp + 0x98]
test rcx, rcx
je 0x140010aae
add rcx, 0xfffffffffffffff8
call fcn.1402d83b4
test r14, r14
je 0x140010abc
lea rcx, [r14 - 8]
call fcn.1402d83b4
mov eax, 1
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.140048b40
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret