Function at 0x1400a7ab0
Capabilities:
Write file on windows

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov ebx, dword [rcx + 0x168]
mov ebp, ebx
and ebp, 3
mov rsi, rcx
test ebx, 0x20000000
je 0x1400a6320
mov dword [rsp + 0x60], ebx
mov qword [rsp + 0x78], 0
cmp ebp, 1
je 0x1400a64c8
test bl, 8
jne 0x1400a64db
xor ecx, ecx
call sub.msvcrt.dll__umask
mov ecx, eax
mov edi, eax
call sub.msvcrt.dll__umask
cmp ebp, 3
je 0x1400a63eb
lea rax, [0x14029d918]
mov r10d, dword [rax + rbp*4]
jmp 0x1400a6354
xor ecx, ecx
call sub.msvcrt.dll__umask
mov ecx, eax
mov edi, eax
call sub.msvcrt.dll__umask
cmp ebp, 3
je 0x1400a63eb
lea rax, [0x14029d918]
mov r10d, dword [rax + rbp*4]
mov eax, r10d
and eax, 0xfffffffd
or eax, 4
test bl, 8
cmovne r10d, eax
mov eax, ebx
and eax, 0x10000000
cmp eax, 1
mov eax, ebx
sbb r8d, r8d
and eax, 0x700
and r8d, 7
cmp eax, 0x300
je 0x1400a6580
jg 0x1400a6510
cmp eax, 0x100
je 0x1400a6550
cmp eax, 0x200
jne 0x1400a64fc
mov edx, 5
mov eax, pe_nt_image_headers64
test bh, 1
je 0x1400a63b8
not edi
and edi, dword [rsi + 0x158]
xor eax, eax
and edi, 0x80
sete al
sub eax, 0xffffff80
test bl, 0x40
je 0x1400a63c9
or eax, 0x4000100
or r10d, 0x10000
mov ecx, eax
or ch, 1
test bh, 0x10
cmovne eax, ecx
mov ecx, ebx
and ecx, 0x30
cmp ecx, 0x10
je 0x1400a6410
cmp ecx, 0x20
je 0x1400a6560
test ecx, ecx
je 0x1400a6415
mov qword [rsi + 0x88], 0xfffffffffffff019
mov dword [rsi + 0x14c], 0x57
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
or eax, 0x10000000
test ebx, 0x2000000
je 0x1400a6432
test r10b, 4
je 0x1400a642d
test r10b, 2
je 0x1400a63eb
and r10d, 0xfffffffb
or eax, 0x20000000
mov ecx, ebx
and ecx, 0xc000000
lea r9d, [rcx - 0x4000000]
and r9d, 0xf8000000
je 0x1400a6570
test ecx, ecx
jne 0x1400a63eb
or eax, 0x2000000
mov dword [rsp + 0x20], edx
xor r9d, r9d
mov edx, r10d
mov qword [rsp + 0x30], 0
mov rcx, qword [rsi + 0x150]
mov dword [rsp + 0x28], eax
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400a6760
mov edx, ebx
mov rcx, rax
call qword [sym.imp.msvcrt.dll__open_osfhandle]
mov edi, eax
test eax, eax
js 0x1400a66c9
and ebx, 0x20000000
jne 0x1400a65b0
movsxd rdi, edi
mov qword [rsi + 0x88], rdi
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov ebp, ebx
and ebp, 0xfffffffc
or ebp, 2
and ebx, 8
je 0x1400a6590
mov ebx, ebp
xor ecx, ecx
and ebx, 0xfffffff4
call sub.msvcrt.dll__umask
or ebx, 2
mov ecx, eax
mov edi, eax
call sub.msvcrt.dll__umask
mov r10d, 0x12019f
jmp 0x1400a6354
test eax, eax
jne 0x1400a63eb
mov edx, 3
jmp 0x1400a6398
cmp eax, 0x600
je 0x1400a6393
jle 0x1400a6538
cmp eax, 0x700
jne 0x1400a63eb
mov edx, 1
jmp 0x1400a6398
cmp eax, 0x400
je 0x1400a6504
cmp eax, 0x500
je 0x1400a6528
jmp 0x1400a63eb
mov edx, 4
jmp 0x1400a6398
or eax, 0x8000000
jmp 0x1400a6415
or eax, 0x80000000
jmp 0x1400a6452
mov edx, 2
jmp 0x1400a6398
xor ecx, ecx
mov ebx, ebp
mov ebp, 2
call sub.msvcrt.dll__umask
mov ecx, eax
mov edi, eax
call sub.msvcrt.dll__umask
jmp 0x1400a630d
mov r9d, 0x18
lea r8, [rsp + 0x40]
mov edx, 1
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetFileInformationByHandleEx]
test eax, eax
je 0x1400a673d
movzx eax, byte [rsp + 0x55]
mov byte [rsp + 0x64], al
test al, al
je 0x1400a682f
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0xffffffffffffffff
lea r12, [0x140587f00]
movzx ebx, dil
lea rbp, [0x1402fef00]
mov rcx, r12
call sub.KERNEL32.dll_EnterCriticalSection
mov rax, rbx
shl rax, 4
add rax, rbp
mov r8, qword [rax]
test r8, r8
mov rcx, r8
setne r9b
and ecx, 0xf
jne 0x1400a679d
test r9b, r9b
je 0x1400a679d
mov r10, qword [rax + 8]
mov ecx, 0x10
mov rdx, r10
xor eax, eax
jmp 0x1400a6661
add rax, 1
add rdx, 0x28
cmp rax, rcx
jae 0x1400a67b2
cmp edi, dword [rdx]
jne 0x1400a6650
lea rax, [rax + rax*4]
lea rax, [r10 + rax*8]
test rax, rax
jne 0x1400a66a8
mov r13d, r8d
and r13d, 0xf
jne 0x1400a6684
test r9b, r9b
jne 0x1400a688d
shl rbx, 4
mov eax, r13d
add r8, 1
lea rdx, [rbp + rbx]
lea rax, [rax + rax*4]
mov rcx, qword [rdx + 8]
mov qword [rdx], r8
lea rax, [rcx + rax*8]
mov dword [rax], edi
nop dword [rax]
movdqu xmm0, xmmword [rsp + 0x60]
mov rcx, r12
movups xmmword [rax + 8], xmm0
movdqu xmm1, xmmword [rsp + 0x70]
movups xmmword [rax + 0x18], xmm1
call fcn.1400bc310
jmp 0x1400a64a9
call qword [sym.imp.msvcrt.dll__errno]
cmp dword [rax], 0x18
jne 0x1400a6805
mov qword [rsi + 0x88], 0xfffffffffffff01e
mov dword [rsi + 0x14c], 4
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400a6400
mov eax, dword [rsp + 0x60]
mov edx, dword [rsp + 0x70]
mov rcx, r12
mov qword [rsp + 0x28], 0
mov r9d, dword [rsp + 0x74]
and eax, 3
mov dword [rsp + 0x20], edx
cmp eax, 1
sbb eax, eax
xor edx, edx
and eax, 0xfffffffe
lea r8d, [rax + 4]
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x1400a65f4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rsi + 0x88], rax
jmp 0x1400a66ed
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
call rdi
cmp eax, 0x50
jne 0x1400a6780
and ebx, 0x500
cmp ebx, 0x100
je 0x1400a685f
call rdi
mov dword [rsi + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rsi + 0x88], rax
jmp 0x1400a6400
mov rax, rbx
shl rax, 4
mov r10, qword [rbp + rax + 8]
test rcx, rcx
jne 0x1400a6640
mov rcx, qword [r10 + 0x280]
test rcx, rcx
je 0x1400a6672
nop word [rax + rax]
mov rdx, rcx
xor eax, eax
nop dword [rax]
cmp edi, dword [rdx]
je 0x1400a67f8
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400a67d0
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400a67c8
jmp 0x1400a6672
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
jmp 0x1400a66a8
mov rbx, qword [sym.imp.KERNEL32.dll_GetLastError]
call rbx
test eax, eax
je 0x1400a6879
call rbx
mov dword [rsi + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rsi + 0x88], rax
jmp 0x1400a66ed
lea rdx, [rsp + 0x70]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x1400a673d
cmp qword [rsp + 0x70], 0
jne 0x1400a66fb
mov qword [rsp + 0x68], 0xffffffffffffffff
jmp 0x1400a65f4
mov qword [rsi + 0x88], 0xfffffffffffff01c
mov dword [rsi + 0x14c], 0x50
jmp 0x1400a6400
mov dword [rsi + 0x14c], 0xfffff002
mov ecx, 0xfffff002
jmp 0x1400a674b
mov ecx, 0x288
call fcn.14009f970
mov rdx, rax
test rax, rax
je 0x1400a68c0
mov rax, rbx
shl rax, 4
add rax, rbp
mov rcx, qword [rax + 8]
mov qword [rdx + 0x280], rcx
mov r8, qword [rax]
mov qword [rax + 8], rdx
jmp 0x1400a6684
lea rdx, [0x14029d747]
mov ecx, 0xe
call fcn.1400a4140
nop
nop word cs:[rax + rax]
nop dword [rax]
push r14
push r13
push r12
push rsi
push rbx
sub rsp, 0x20
mov r12d, dword [rcx + 0x150]
mov rbx, rcx
cmp r12d, 0xffffffff
je 0x1400a6a5e
lea r13, [0x140587f00]
movzx esi, r12b
mov rcx, r13
call sub.KERNEL32.dll_EnterCriticalSection
mov r8d, esi
lea r11, [0x1402fef00]
mov rax, r8
shl rax, 4
add rax, r11
mov r9, qword [rax]
mov rcx, r9
and ecx, 0xf
test r9, r9
je 0x1400a6a80
test rcx, rcx
jne 0x1400a6a80
mov r10, qword [rax + 8]
mov ecx, 0x10
mov rdx, r10
xor eax, eax
jmp 0x1400a6969
add rax, 1
add rdx, 0x28
cmp rax, rcx
jae 0x1400a6a95
cmp r12d, dword [rdx]
jne 0x1400a6958
lea rax, [rax + rax*4]
lea rax, [r10 + rax*8]
test rax, rax
jne 0x1400a69b0
mov rcx, r13
call fcn.1400bc310
cmp r12d, 2
jg 0x1400a6a27
mov qword [rbx + 0x88], 0
add rsp, 0x20
pop rbx
pop rsi
pop r12
pop r13
pop r14
ret
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
sub r9, 1
mov rdx, r8
mov r14, qword [rax + 0x10]
mov rcx, r9
shl rdx, 4
and ecx, 0xf
add rdx, r11
lea rcx, [rcx + rcx*4]
mov qword [rdx], r9
lea rcx, [r10 + rcx*8]
cmp rax, rcx
je 0x1400a69f3
movdqu xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movdqu xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
mov rcx, qword [rcx + 0x20]
mov qword [rax + 0x20], rcx
mov r9, qword [rdx]
test r9, r9
je 0x1400a6a02
and r9d, 0xf
je 0x1400a6ae0
mov rcx, r13
call fcn.1400bc310
cmp r14, 0xffffffffffffffff
je 0x1400a6983
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp r12d, 2
jle 0x1400a698d
mov ecx, r12d
call qword [sym.imp.msvcrt.dll__close]
cmp eax, 0xffffffff
jne 0x1400a698d
call qword [sym.imp.msvcrt.dll__errno]
cmp dword [rax], 9
je 0x1400a6a5e
mov r8d, 0x2d1
lea rdx, str.src_win_fs.c
lea rcx, str.errno__EBADF
call qword [sym.imp.msvcrt.dll__assert]
mov qword [rbx + 0x88], 0xfffffffffffff00d
mov dword [rbx + 0x14c], 6
add rsp, 0x20
pop rbx
pop rsi
pop r12
pop r13
pop r14
ret
mov rax, r8
shl rax, 4
mov r10, qword [r11 + rax + 8]
test rcx, rcx
jne 0x1400a694b
mov rcx, qword [r10 + 0x280]
test rcx, rcx
je 0x1400a697b
nop dword [rax]
mov rdx, rcx
xor eax, eax
nop dword [rax]
cmp r12d, dword [rdx]
je 0x1400a69a8
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400a6ab0
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400a6aa8
jmp 0x1400a697b
mov rax, r8
shl rax, 4
add rax, r11
mov rcx, qword [rax + 8]
mov rdx, qword [rcx + 0x280]
mov qword [rax + 8], rdx
call fcn.14009f990
jmp 0x1400a6a02
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov r12d, dword [rcx + 0x150]
mov rdi, qword [rcx + 0x180]
mov r13, rcx
cmp r12d, 0xffffffff
je 0x1400a7163
lea r14, [0x140587f00]
movzx ebx, r12b
mov rcx, r14
call sub.KERNEL32.dll_EnterCriticalSection
mov eax, ebx
lea r9, [0x1402fef00]
mov rdx, rax
shl rdx, 4
add rdx, r9
mov r8, qword [rdx]
mov rcx, r8
and ecx, 0xf
test r8, r8
je 0x1400a717a
test rcx, rcx
jne 0x1400a717a
mov r8, qword [rdx + 8]
mov ecx, 0x10
mov rdx, r8
xor eax, eax
jmp 0x1400a7021
add rax, 1
add rdx, 0x28
cmp rax, rcx
jae 0x1400a718c
cmp r12d, dword [rdx]
jne 0x1400a7010
lea rax, [rax + rax*4]
lea rax, [r8 + rax*8]
test rax, rax
jne 0x1400a7128
mov rcx, r14
call fcn.1400bc310
mov ecx, r12d
call qword [sym.imp.msvcrt.dll__get_osfhandle]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x1400a726e
cmp rdi, 0xffffffffffffffff
jne 0x1400a71d0
mov dword [rsp + 0x38], 0
xor ebp, ebp
xor r12d, r12d
xor esi, esi
lea r14, [rsp + 0x44]
jmp 0x1400a7085
cmp dword [r13 + 0x170], r12d
jbe 0x1400a723f
cmp rdi, 0xffffffffffffffff
je 0x1400a7095
mov eax, esi
add rax, rdi
mov qword [rsp + 0x60], rax
mov eax, r12d
mov r9, r14
mov rcx, r15
add r12d, 1
shl rax, 4
add rax, qword [r13 + 0x178]
mov rdx, qword [rax + 8]
mov qword [rsp + 0x20], rbp
mov r8d, dword [rax]
call qword [sym.imp.KERNEL32.dll_ReadFile]
add esi, dword [rsp + 0x44]
mov ebx, eax
mov r10d, esi
test eax, eax
jne 0x1400a7078
mov edx, dword [rsp + 0x38]
test edx, edx
jne 0x1400a7247
mov eax, dword [rsp + 0x38]
or eax, r10d
jne 0x1400a7230
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x1400a7291
cmp eax, 0x26
je 0x1400a7220
cmp eax, 0x6d
je 0x1400a7220
mov ecx, eax
mov dword [r13 + 0x14c], eax
call fcn.1400a4200
cdqe
mov qword [r13 + 0x88], rax
jmp 0x1400a7152
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
movdqu xmm0, xmmword [rax + 8]
mov rcx, r14
movups xmmword [rsp + 0x50], xmm0
movdqu xmm1, xmmword [rax + 0x18]
movups xmmword [rsp + 0x60], xmm1
call fcn.1400bc310
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.1400a6b90
nop
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rcx + 0x88], 0xfffffffffffff00d
mov dword [rcx + 0x14c], 6
jmp 0x1400a7152
shl rax, 4
mov r8, qword [r9 + rax + 8]
test rcx, rcx
jne 0x1400a7005
mov rcx, qword [r8 + 0x280]
test rcx, rcx
je 0x1400a7037
nop dword [rax]
mov rdx, rcx
xor eax, eax
nop dword [rax]
cmp r12d, dword [rdx]
je 0x1400a7120
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400a71a8
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400a71a0
jmp 0x1400a7037
xor edx, edx
mov r9d, 1
lea r8, [rsp + 0x48]
mov rcx, r15
mov qword [rsp + 0x50], 0
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
test eax, eax
setne al
movzx eax, al
mov dword [rsp + 0x38], eax
jmp 0x1400a7069
mov qword [r13 + 0x88], 0
jmp 0x1400a7152
mov eax, r10d
mov qword [r13 + 0x88], rax
jmp 0x1400a7152
mov eax, dword [rsp + 0x38]
test eax, eax
je 0x1400a7230
mov dword [rsp + 0x3c], r10d
mov rdx, qword [rsp + 0x48]
xor r9d, r9d
xor r8d, r8d
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [rsp + 0x38], ebx
mov r10d, dword [rsp + 0x3c]
jmp 0x1400a70d8
mov dword [r13 + 0x14c], 6
mov ecx, 6
call fcn.1400a4200
cdqe
mov qword [r13 + 0x88], rax
jmp 0x1400a7152
mov ecx, 0x3ec
mov eax, 0x3ec
jmp 0x1400a7108
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov ebx, dword [rcx + 0x150]
mov rdi, qword [rcx + 0x180]
mov r12, rcx
cmp ebx, 0xffffffff
je 0x1400a7c56
mov ecx, ebx
call qword [sym.imp.msvcrt.dll__get_osfhandle]
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x1400a7d80
lea r14, [0x140587f00]
movzx esi, bl
mov rcx, r14
call sub.KERNEL32.dll_EnterCriticalSection
mov eax, esi
lea r9, [0x1402fef00]
mov rdx, rax
shl rdx, 4
add rdx, r9
mov r8, qword [rdx]
mov rcx, r8
and ecx, 0xf
test r8, r8
je 0x1400a7c6d
test rcx, rcx
jne 0x1400a7c6d
mov r8, qword [rdx + 8]
mov ecx, 0x10
mov rdx, r8
xor eax, eax
jmp 0x1400a7b51
add rax, 1
add rdx, 0x28
cmp rax, rcx
jae 0x1400a7c7f
cmp ebx, dword [rdx]
jne 0x1400a7b40
lea rax, [rax + rax*4]
lea rax, [r8 + rax*8]
test rax, rax
jne 0x1400a7c28
mov rcx, r14
call fcn.1400bc310
cmp rdi, 0xffffffffffffffff
jne 0x1400a7cc0
mov dword [rsp + 0x38], 0
xor ebp, ebp
xor ebx, ebx
xor r14d, r14d
lea r15, [rsp + 0x44]
jmp 0x1400a7b9e
cmp dword [r12 + 0x170], ebx
jbe 0x1400a7d43
cmp rdi, 0xffffffffffffffff
je 0x1400a7baf
mov eax, r14d
add rax, rdi
mov qword [rsp + 0x60], rax
mov eax, ebx
mov r9, r15
mov rcx, r13
add ebx, 1
shl rax, 4
add rax, qword [r12 + 0x178]
mov rdx, qword [rax + 8]
mov qword [rsp + 0x20], rbp
mov r8d, dword [rax]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11d, dword [rsp + 0x44]
mov esi, eax
add r11d, r14d
mov r14d, r11d
test eax, eax
jne 0x1400a7b90
mov edx, dword [rsp + 0x38]
test edx, edx
jne 0x1400a7d4f
mov eax, dword [rsp + 0x38]
or eax, r11d
je 0x1400a7d10
mov eax, r11d
mov qword [r12 + 0x88], rax
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
movdqu xmm0, xmmword [rax + 8]
mov rcx, r14
movups xmmword [rsp + 0x50], xmm0
movdqu xmm1, xmmword [rax + 0x18]
movups xmmword [rsp + 0x60], xmm1
call fcn.1400bc310
lea r8, [rsp + 0x50]
mov rdx, r13
mov rcx, r12
call fcn.1400a72a0
jmp 0x1400a7c0d
mov qword [rcx + 0x88], 0xfffffffffffff00d
mov dword [rcx + 0x14c], 6
jmp 0x1400a7c0d
shl rax, 4
mov r8, qword [r9 + rax + 8]
test rcx, rcx
jne 0x1400a7b37
mov rcx, qword [r8 + 0x280]
test rcx, rcx
je 0x1400a7b66
nop
mov rdx, rcx
xor eax, eax
nop dword [rax]
cmp ebx, dword [rdx]
je 0x1400a7c20
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400a7c98
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400a7c90
jmp 0x1400a7b66
xor edx, edx
mov r9d, 1
lea r8, [rsp + 0x48]
mov rcx, r13
mov qword [rsp + 0x50], 0
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
test eax, eax
setne al
movzx eax, al
mov dword [rsp + 0x38], eax
jmp 0x1400a7b82
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
cmp eax, 5
jne 0x1400a7d27
mov ecx, 0x3ec
mov eax, 0x3ec
mov dword [r12 + 0x14c], eax
call fcn.1400a4200
cdqe
mov qword [r12 + 0x88], rax
jmp 0x1400a7c0d
mov eax, dword [rsp + 0x38]
test eax, eax
je 0x1400a7c02
mov dword [rsp + 0x3c], r11d
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [rsp + 0x38], esi
mov r11d, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x38]
or eax, r11d
jne 0x1400a7c02
jmp 0x1400a7d10
mov dword [r12 + 0x14c], 6
mov ecx, 6
call fcn.1400a4200
cdqe
mov qword [r12 + 0x88], rax
jmp 0x1400a7c0d
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0xc0
xor r9d, r9d
mov r8d, 7
mov edx, 0x10180
mov rbx, rcx
mov rcx, qword [rcx + 0x150]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2200000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400a7fa0
lea rdx, [rsp + 0x80]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileInformationByHandle]
test eax, eax
je 0x1400a7fd0
mov eax, dword [rsp + 0x80]
test al, 0x10
je 0x1400a7eab
test ah, 4
je 0x1400a7fe0
xor r8d, r8d
xor edx, edx
mov rcx, r12
call fcn.1400a5860
test eax, eax
js 0x1400a7ff8
mov eax, dword [rsp + 0x80]
mov rsi, qword [0x1402b0d00]
mov r10, qword [rsi]
test al, 1
jne 0x1400a7f10
lea rdi, [rsp + 0x50]
lea r13, [rsp + 0x40]
mov rcx, r12
mov byte [rsp + 0x50], 1
mov r8, rdi
mov rdx, r13
mov dword [rsp + 0x20], 0xd
mov r9d, 1
call qword [rsi]
mov ecx, eax
test eax, eax
js 0x1400a7f75
mov qword [rbx + 0x40], 0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
add rsp, 0xc0
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret
and eax, 0xffffffde
lea rdi, [rsp + 0x50]
lea r13, [rsp + 0x40]
mov rcx, r12
or eax, 0x20
mov r9d, 0x28
mov r8, rdi
mov rdx, r13
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x20], 4
call r10
mov ecx, eax
test eax, eax
jns 0x1400a7ec3
mov rax, qword [0x1402b0d30]
call qword [rax]
mov dword [rbx + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx + 0x88], rax
jmp 0x1400a7ef3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx + 0x88], rax
add rsp, 0xc0
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400a7f7e
mov dword [rbx + 0x14c], 5
mov ecx, 5
jmp 0x1400a7f86
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
cmp eax, 0x5b8
jne 0x1400a8011
mov ecx, 5
mov eax, 5
mov dword [rbx + 0x14c], eax
jmp 0x1400a7f86
push rbx
sub rsp, 0x20
xor edx, edx
mov rbx, rcx
mov rcx, qword [rcx + 0x150]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
je 0x1400a8050
mov qword [rbx + 0x88], 0
add rsp, 0x20
pop rbx
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx + 0x88], rax
mov eax, dword [rbx + 0x14c]
cmp eax, 0x7b
je 0x1400a807e
cmp eax, 0x10b
jne 0x1400a8046
mov qword [rbx + 0x88], 0xfffffffffffff019
add rsp, 0x20
pop rbx
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rax, qword [rcx + 0x98]
mov rbx, rcx
mov rcx, qword [rcx + 0x150]
mov qword [rsp + 0x28], rax
mov rdi, rdx
call sub.msvcrt.dll_wcslen
mov r15, qword [rbx + 0x150]
cmp rax, 5
ja 0x1400a8100
mov qword [rbx + 0x88], 0xfffffffffffff019
mov dword [rbx + 0x14c], 0x57
mov rax, qword [rsp + 0x28]
mov byte [rax], 0
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r14, [rax + rax]
mov r8d, 6
lea rdx, str.XXXXXX
lea r12, [r15 + r14 - 0xc]
mov rcx, r12
call sub.msvcrt.dll_wcsncmp
test eax, eax
jne 0x1400a80cb
add r15, r14
mov esi, 0x7fff
lea rbp, [rsp + 0x38]
movabs r14, 0x8421084210842109
lea r13, str.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
mov edx, 8
mov rcx, rbp
call fcn.1400c6400
test eax, eax
js 0x1400a81dd
mov rcx, qword [rsp + 0x38]
mov r9, r12
nop dword [rax]
mov rdx, rcx
add r9, 2
shr rdx, 1
mov rax, rdx
mul r14
shr rdx, 4
mov rax, rdx
shl rax, 5
sub rax, rdx
add rax, rax
sub rcx, rax
movzx eax, word [r13 + rcx*2]
mov word [r9 - 2], ax
mov rdx, qword [rsp + 0x38]
shr rdx, 1
mov rax, rdx
mul r14
mov rcx, rdx
shr rcx, 4
mov qword [rsp + 0x38], rcx
cmp r9, r15
jne 0x1400a8160
mov rcx, rbx
call rdi
test eax, eax
jne 0x1400a81f7
sub esi, 1
jne 0x1400a8140
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx + 0x88], rax
jmp 0x1400a80e0
mov qword [rbx + 0x88], 0xfffffffffffff01a
mov dword [rbx + 0x14c], 0x45d
jmp 0x1400a80e0
cmp qword [rbx + 0x88], 0
js 0x1400a80e8
mov rsi, qword [rsp + 0x28]
mov rcx, rsi
call sub.msvcrt.dll_strlen
mov r8d, 6
mov rdx, r12
lea rcx, [rsi + rax - 6]
call sub.msvcrt.dll_wcstombs
jmp 0x1400a80e8
push r15
mov eax, 0x20a8
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.140115230
sub rsp, rax
xor r9d, r9d
mov r8d, 7
mov edx, 0x100001
mov qword [rsp + 0x20f0], rcx
mov rcx, qword [rcx + 0x150]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsp + 0x78], rax
mov rcx, rax
cmp rax, 0xffffffffffffffff
je 0x1400a8728
lea rax, [rsp + 0xa0]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x20], rax
mov rax, qword [0x1402b0cb0]
mov dword [rsp + 0x50], 1
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x2000
call qword [rax]
cmp eax, 0xc000000d
je 0x1400a8759
test eax, eax
js 0x1400a8799
mov qword [rsp + 0x70], 0
xor r15d, r15d
xor r14d, r14d
mov r13, qword [rsp + 0x80]
xor ebx, ebx
nop word [rax + rax]
add r13, rbx
mov r9d, dword [r13 + 0x3c]
mov ebx, dword [r13]
shr r9d, 1
jmp 0x1400a8374
cmp word [r13 + r9*2 + 0x3e], 0
lea rax, [r9 - 1]
jne 0x1400a8430
mov r9, rax
test r9, r9
jne 0x1400a8360
test rbx, rbx
jne 0x1400a8350
mov rax, qword [rsp + 0x80]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x50], 0
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x20], rax
mov rax, qword [0x1402b0cb0]
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x2000
call qword [rax]
test eax, eax
jne 0x1400a86a8
cmp qword [rsp + 0x98], 0
jne 0x1400a833d
mov eax, 0x80000005
mov ecx, eax
mov rax, qword [0x1402b0d30]
call qword [rax]
mov ecx, eax
mov rax, qword [rsp + 0x20f0]
mov r12, r14
mov dword [rax + 0x14c], ecx
call fcn.1400a4200
mov rsi, qword [rsp + 0x20f0]
cdqe
mov qword [rsi + 0x88], rax
jmp 0x1400a85f2
cmp r9, 1
je 0x1400a8590
cmp r9, 2
jne 0x1400a844e
cmp dword [r13 + 0x40], 0x2e002e
je 0x1400a8379
lea rbp, [r13 + 0x40]
mov dword [rsp + 0x64], r9d
xor edx, edx
mov ecx, 0xfde9
mov qword [rsp + 0x38], 0
mov r8, rbp
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd rdi, eax
mov rsi, rdi
test rdi, rdi
je 0x1400a878e
mov rax, qword [rsp + 0x70]
cmp rax, r15
ja 0x1400a8640
test rax, rax
je 0x1400a85b0
add rax, rax
mov rcx, r14
lea rdx, [rax*8]
mov qword [rsp + 0x70], rax
call fcn.14009f9d0
mov r12, rax
test rax, rax
je 0x1400a85d2
lea rcx, [rdi + 8]
call fcn.14009f970
mov r14, rax
test rax, rax
je 0x1400a85d5
lea rax, [r15 + 1]
mov qword [r12 + r15*8], r14
xor edx, edx
mov r9d, dword [rsp + 0x64]
mov qword [rsp + 0x68], rax
lea rax, [r14 + 4]
mov r8, rbp
mov ecx, 0xfde9
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
je 0x1400a8786
mov byte [r14 + rdi + 4], 0
mov eax, dword [r13 + 0x38]
test al, 0x40
je 0x1400a8560
mov dword [r14], 6
mov r15, qword [rsp + 0x68]
mov r14, r12
test rbx, rbx
jne 0x1400a8350
jmp 0x1400a837e
test ah, 4
je 0x1400a8650
mov dword [r14], 3
mov r15, qword [rsp + 0x68]
mov r14, r12
test rbx, rbx
jne 0x1400a8350
jmp 0x1400a837e
cmp word [r13 + 0x40], 0x2e
jne 0x1400a844e
test rbx, rbx
jne 0x1400a8350
jmp 0x1400a837e
mov edx, 0x100
mov rcx, r14
mov qword [rsp + 0x70], 0x20
call fcn.14009f9d0
mov r12, rax
test rax, rax
jne 0x1400a84d4
mov r12, r14
mov rax, qword [rsp + 0x20f0]
mov qword [rax + 0x88], 0xfffffffffffff027
mov dword [rax + 0x14c], 0xe
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15, r15
je 0x1400a8698
nop word cs:[rax + rax]
sub r15, 1
mov rcx, qword [r12 + r15*8]
call fcn.14009f990
test r15, r15
jne 0x1400a8610
mov rcx, r12
call fcn.14009f990
nop
add rsp, 0x20a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r12, r14
jmp 0x1400a84d4
test al, 0x10
je 0x1400a8678
mov dword [r14], 2
mov r15, qword [rsp + 0x68]
mov r14, r12
test rbx, rbx
jne 0x1400a8350
jmp 0x1400a837e
mov dword [r14], 1
mov r15, qword [rsp + 0x68]
mov r14, r12
test rbx, rbx
jne 0x1400a8350
jmp 0x1400a837e
test r12, r12
je 0x1400a862b
jmp 0x1400a8622
jns 0x1400a833d
cmp eax, 0x80000006
jne 0x1400a83f3
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rsp + 0x20f0]
mov qword [rax + 0x90], r14
test r14, r14
je 0x1400a86df
or dword [rax + 0x148], 8
mov rax, qword [rsp + 0x20f0]
mov qword [rax + 0x88], r15
cmp r15, 0xffffffffffffffff
jne 0x1400a870e
mov r8d, 0x607
lea rdx, str.src_win_fs.c
lea rcx, str.req__result____1
call qword [sym.imp.msvcrt.dll__assert]
mov rax, qword [rsp + 0x20f0]
mov dword [rax + 0x170], 0
jmp 0x1400a862b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov rax, qword [rsp + 0x20f0]
mov dword [rax + 0x14c], ecx
call fcn.1400a4200
mov rsi, qword [rsp + 0x20f0]
cdqe
mov qword [rsi + 0x88], rax
jmp 0x1400a862b
mov rax, qword [rsp + 0x20f0]
mov rcx, qword [rsp + 0x78]
mov qword [rax + 0x88], 0xfffffffffffff02c
mov dword [rax + 0x14c], 0x10b
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400a862b
mov r15, qword [rsp + 0x68]
mov r14, r12
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400a83fe
cmp eax, 0x80000006
jne 0x1400a87ce
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rsp + 0x20f0]
mov qword [rax + 0x90], 0
mov qword [rax + 0x88], 0
jmp 0x1400a870e
xor r15d, r15d
xor r14d, r14d
jmp 0x1400a83f3
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rsi, qword [rcx + 0x150]
mov rbx, rcx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 0x10
jne 0x1400a8848
mov qword [rbx + 0x88], 0xfffffffffffff02c
xor r12d, r12d
mov dword [rbx + 0x14c], 0x10b
mov rcx, r12
call fcn.14009f990
xor ecx, ecx
call fcn.14009f990
mov qword [rbx + 0x90], 0
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov ecx, 0x290
call fcn.14009f970
mov r12, rax
test rax, rax
je 0x1400a88f0
mov rcx, rsi
lea rbp, [0x14029d83e]
call sub.msvcrt.dll_wcslen
mov rdi, rax
test rax, rax
jne 0x1400a8910
lea rcx, [rdi + rdi + 8]
call fcn.14009f970
mov r13, rax
test rax, rax
je 0x1400a88f0
mov r9, rsi
mov r8, rbp
lea rdx, [rdi + 3]
mov rcx, rax
call qword [sym.imp.msvcrt.dll__snwprintf]
lea rdx, [r12 + 0x38]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rcx, r13
mov qword [r12 + 0x30], rax
call fcn.14009f990
cmp qword [r12 + 0x30], 0xffffffffffffffff
je 0x1400a8940
mov dword [r12 + 0x288], 0
mov qword [rbx + 0x90], r12
mov qword [rbx + 0x88], 0
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov qword [rbx + 0x88], 0xfffffffffffff027
mov dword [rbx + 0x14c], 0xe
jmp 0x1400a881b
movzx eax, word [rsi + rax*2 - 2]
cmp ax, 0x5c
je 0x1400a892c
lea rbp, str._s
cmp ax, 0x2f
jne 0x1400a8879
lea rbp, [0x14029d846]
jmp 0x1400a8879
mov rsi, qword [sym.imp.KERNEL32.dll_GetLastError]
call rsi
cmp eax, 2
je 0x1400a88c1
call rsi
mov dword [rbx + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx + 0x88], rax
jmp 0x1400a881b
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
xor edx, edx
mov r15, qword [rcx + 0x90]
or dword [rcx + 0x148], 8
mov rdi, qword [r15]
mov r8, qword [r15 + 8]
lea r14, [r15 + 0x38]
shl r8, 4
mov r13, rcx
mov rcx, rdi
call sub.msvcrt.dll_memset
cmp qword [r15 + 8], 0
je 0x1400a8b0b
xor esi, esi
lea rbp, [r15 + 0x64]
lea r12, [rsp + 0x28]
xor ebx, ebx
jmp 0x1400a8a56
cmp word [r15 + 0x64], 0x2e
jne 0x1400a89ec
movzx eax, word [r15 + 0x66]
test ax, ax
je 0x1400a8a43
cmp ax, 0x2e
je 0x1400a8ab0
shl rbx, 4
mov edx, 0xffffffff
mov rcx, rbp
add rbx, rdi
mov r8, rbx
call fcn.1400c4e40
test eax, eax
jne 0x1400a8ac0
mov edx, dword [r15 + 0x38]
mov eax, 2
test dl, 0x10
jne 0x1400a8a31
mov eax, 3
test dh, 4
jne 0x1400a8a31
and edx, 0x40
cmp edx, 1
sbb eax, eax
and eax, 0xfffffffb
add eax, 6
mov rcx, r12
mov dword [rsp + 0x28], eax
add esi, 1
call fcn.1400a22c0
mov dword [rbx + 8], eax
mov dword [r15 + 0x288], 1
mov ebx, esi
cmp rbx, qword [r15 + 8]
jae 0x1400a8a90
mov eax, dword [r15 + 0x288]
test eax, eax
je 0x1400a89d0
mov rcx, qword [r15 + 0x30]
mov rdx, r14
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1400a89d0
mov rbx, qword [sym.imp.KERNEL32.dll_GetLastError]
call rbx
cmp eax, 0x12
jne 0x1400a8ac7
mov ebx, esi
nop word [rax + rax]
mov qword [r13 + 0x88], rbx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp word [r15 + 0x68], 0
jne 0x1400a89ec
jmp 0x1400a8a43
mov rbx, qword [sym.imp.KERNEL32.dll_GetLastError]
call rbx
mov dword [r13 + 0x14c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [r13 + 0x88], rax
test esi, esi
je 0x1400a8a97
lea eax, [rsi - 1]
shl rax, 4
lea rbx, [rdi + rax + 0x10]
mov rcx, qword [rdi]
add rdi, 0x10
call fcn.14009f990
mov qword [rdi - 0x10], 0
cmp rdi, rbx
jne 0x1400a8af0
jmp 0x1400a8a97
xor ebx, ebx
jmp 0x1400a8a90
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1b8
movups xmmword [rsp + 0x160], xmm6
movups xmmword [rsp + 0x170], xmm7
movups xmmword [rsp + 0x180], xmm8
movups xmmword [rsp + 0x190], xmm9
movups xmmword [rsp + 0x1a0], xmm10
cmp dword [rcx - 0x118], 6
mov rbx, rcx
lea r12, [rcx - 0x120]
je 0x1400a8b7b
mov r8d, 0xaec
lea rdx, str.src_win_fs.c
lea rcx, str.req__type__UV_FS
call qword [sym.imp.msvcrt.dll__assert]
cmp dword [rbx - 0xb0], 0x24
ja case.0x1400a8b9c.0
mov eax, dword [rbx - 0xb0]
lea rdx, [0x14029d880]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
movsd xmm6, qword [rbx + 0x40]
movsd xmm7, qword [rbx + 0x38]
xor r9d, r9d
mov edx, 0x100
mov rcx, qword [rbx + 0x30]
mov r8d, 7
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa04b
movsd xmm2, qword [0x14029d970]
movsd xmm1, qword [0x14029d978]
xor edx, edx
mov rcx, r12
movsd xmm0, qword [0x14029d980]
lea r9, [rsp + 0xe0]
lea r8, [rsp + 0x60]
mulsd xmm7, xmm2
mulsd xmm6, xmm2
mulsd xmm7, xmm1
mulsd xmm6, xmm1
addsd xmm7, xmm0
addsd xmm6, xmm0
cvttsd2si rax, xmm7
mov qword [rsp + 0x60], rax
cvttsd2si rax, xmm6
mov qword [rsp + 0xe0], rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
je 0x1400a9ee3
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx - 0x98], 0
movups xmm6, xmmword [rsp + 0x160]
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, dword [rbx + 0x30]
cmp ecx, 0xffffffff
je 0x1400a8ce0
call qword [sym.imp.msvcrt.dll__get_osfhandle]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
test eax, eax
jne case.0x1400a8b9c.26
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
mov qword [rbx - 0x98], 0xfffffffffffff00d
mov dword [rbx + 0x2c], 6
jmp 0x1400a8c63
mov rcx, qword [rbx + 0x30]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2000080
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x1400a8cc3
mov rbp, qword [sym.imp.KERNEL32.dll_GetFinalPathNameByHandleW]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rax
lea rdi, [rbx - 0x90]
call rbp
mov esi, eax
test eax, eax
je 0x1400aa212
lea ecx, [rax + 1]
add rcx, rcx
call fcn.14009f970
mov r12, rax
test rax, rax
je 0x1400aa8df
xor r9d, r9d
mov r8d, esi
mov rdx, rax
mov rcx, r13
call rbp
test eax, eax
je 0x1400aa1ff
mov r8d, 8
lea rdx, str._UNC_
mov rcx, r12
call sub.msvcrt.dll_wcsncmp
test eax, eax
jne 0x1400aa075
mov r8d, 0x5c
lea rcx, [r12 + 0xc]
lea edx, [rsi - 6]
mov word [r12 + 0xc], r8w
xor r9d, r9d
mov r8, rdi
call fcn.1400a5750
mov rcx, r12
mov esi, eax
call fcn.14009f990
cmp esi, 0xffffffff
je 0x1400aa212
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
or dword [rbx + 0x28], 8
mov qword [rbx - 0x98], 0
jmp 0x1400a8c63
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a87e0
mov r8d, dword [rbx + 0x48]
test r8b, 4
je 0x1400a9b70
mov qword [rbx - 0x98], 0xfffffffffffff02a
mov dword [rbx + 0x2c], 0x32
jmp 0x1400a8c63
mov r15d, dword [rbx + 0x30]
cmp r15d, 0xffffffff
je 0x1400a8ce0
lea r13, [0x140587f00]
mov ecx, r15d
movzx esi, r15b
call qword [sym.imp.msvcrt.dll__get_osfhandle]
mov rcx, r13
lea rdi, [0x1402fef00]
mov r12, rax
call sub.KERNEL32.dll_EnterCriticalSection
mov rax, rsi
shl rax, 4
add rax, rdi
mov rdx, qword [rax]
mov rcx, rdx
and ecx, 0xf
jne 0x1400a9fa3
test rdx, rdx
je 0x1400a9fa3
mov r8, qword [rax + 8]
mov ecx, 0x10
mov rdx, r8
xor eax, eax
jmp 0x1400a8ee1
add rax, 1
add rdx, 0x28
cmp rax, rcx
jae 0x1400a9fb8
cmp r15d, dword [rdx]
jne 0x1400a8ed0
lea rax, [rax + rax*4]
lea rax, [r8 + rax*8]
test rax, rax
jne 0x1400a9cc8
mov rcx, r13
call fcn.1400bc310
mov rax, qword [rbx + 0x60]
mov rcx, r12
mov dword [rsp + 0x20], 0x14
lea rdx, [rsp + 0x60]
mov r9d, 8
lea r8, [rsp + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [0x1402b0d00]
call qword [rax]
mov ecx, eax
test eax, eax
jns case.0x1400a8b9c.26
mov rax, qword [0x1402b0d30]
call qword [rax]
jmp 0x1400a8cc9
mov ecx, dword [rbx + 0x30]
cmp ecx, 0xffffffff
je 0x1400a8ce0
call qword [sym.imp.msvcrt.dll__get_osfhandle]
mov rcx, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa01e
lea rsi, [rbx - 0x80]
xor r8d, r8d
mov rdx, rsi
call fcn.1400a5ee0
test eax, eax
jne 0x1400a8cc3
mov qword [rbx - 0x90], rsi
mov qword [rbx - 0x98], 0
jmp 0x1400a8c63
mov rsi, qword [rbx + 0x30]
mov rcx, rsi
call sub.msvcrt.dll_wcslen
cmp rax, 1
jbe 0x1400a8fd8
cmp word [rsi + rax*2 - 4], 0x3a
lea rdx, [rax + rax]
je 0x1400a8fd8
lea rdx, [rsi + rdx - 2]
movzx eax, word [rdx]
cmp ax, 0x5c
je 0x1400aa1e7
cmp ax, 0x2f
je 0x1400aa1e7
nop word [rax + rax]
mov rcx, qword [rbx + 0x30]
xor r9d, r9d
mov edx, pe_nt_image_headers64
lea rsi, [rbx - 0x80]
mov qword [rsp + 0x30], 0
mov r8d, 7
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa059
xor r8d, r8d
mov rdx, rsi
mov rcx, rax
call fcn.1400a5ee0
test eax, eax
jne 0x1400a9f08
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400a8f7e
mov r15d, dword [rbx + 0x68]
mov esi, 0x10000
mov ebp, dword [rbx + 0x30]
mov r13d, dword [rbx + 0x4c]
mov r12, qword [rbx + 0x60]
cmp r15, rsi
cmovbe rsi, r15
mov rcx, rsi
call fcn.14009f970
mov r14, rax
test rax, rax
je 0x1400aa985
cmp r12, 0xffffffffffffffff
je 0x1400a908c
xor r8d, r8d
mov rdx, r12
mov ecx, ebp
call sub.msvcrt.dll__lseeki64
cmp rax, 0xffffffffffffffff
je 0x1400a9b50
mov r12, qword [sym.imp.msvcrt.dll__read]
xor edi, edi
test r15, r15
jne 0x1400a90ca
jmp 0x1400aa6f6
cmp eax, 0xffffffff
je 0x1400a9b50
cdqe
mov rdx, r14
mov ecx, r13d
sub r15, rax
call qword [sym.imp.msvcrt.dll__write_1]
cmp eax, 0xffffffff
je 0x1400a9b50
add edi, eax
test r15, r15
je 0x1400a90e3
cmp rsi, r15
mov r8, r15
mov rdx, r14
mov ecx, ebp
cmovbe r8, rsi
call r12
mov r8d, eax
test eax, eax
jne 0x1400a90a0
mov rcx, r14
movsxd rdi, edi
call fcn.14009f990
mov qword [rbx - 0x98], rdi
cmp rdi, 0xffffffffffffffff
jne 0x1400a8c63
nop
mov r8d, 0x860
lea rdx, str.src_win_fs.c
lea rcx, str.req__result____1
movups xmm6, xmmword [rsp + 0x160]
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp qword [sym.imp.msvcrt.dll__assert]
mov eax, dword [rbx + 0x48]
mov r12, qword [rbx + 0x30]
mov r13, qword [rbx + 0x40]
mov esi, dword [0x14027e5c0]
mov rdi, qword [sym.imp.KERNEL32.dll_CreateSymbolicLinkW]
mov rbp, qword [sym.imp.KERNEL32.dll_GetLastError]
test al, 2
je 0x1400a91c4
jmp 0x1400aa09f
call rbp
cmp eax, 0x57
jne 0x1400aa1c1
and esi, 2
je 0x1400aa1d9
mov eax, dword [rbx + 0x48]
mov r12, qword [rbx + 0x30]
mov dword [0x14027e5c0], 0
mov r13, qword [rbx + 0x40]
mov esi, eax
and esi, 2
jne 0x1400aa09f
mov edx, esi
mov rcx, r13
or edx, 1
test al, 1
cmovne esi, edx
mov rdx, r12
mov r8d, esi
call rdi
test al, al
je 0x1400a9190
jmp case.0x1400a8b9c.26
xor r8d, r8d
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.KERNEL32.dll_CreateHardLinkW]
test eax, eax
jne case.0x1400a8b9c.26
jmp 0x1400a8cc3
lea rdx, [0x1400a5560]
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a8090
lea rax, [rsp + 0x54]
mov r13, qword [rbx + 0x30]
lea r12, [rsp + 0x60]
mov rdi, qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x50]
lea r15, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x20], r12
mov r8, qword [rsp + 0x48]
mov r9, r15
mov rcx, r13
mov rdx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
test eax, eax
jne 0x1400aa680
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdx, qword [rbx + 0x30]
cmp r13, rdx
jne 0x1400aa708
cmp eax, 0x10b
jne 0x1400aa703
mov ecx, 0x20a
call fcn.14009f970
mov r13, rax
test rax, rax
je 0x1400a9ca0
mov ebp, 0x105
lea rsi, [rsp + 0xe0]
jmp 0x1400a9317
mov r14d, eax
cmp rbp, r14
jae 0x1400a9eab
mov rcx, r13
lea rdx, [r14 + r14]
call fcn.14009fa20
mov r13, rax
test rax, rax
je 0x1400a9ca0
mov rbp, r14
mov rcx, qword [rbx + 0x30]
mov r9, rsi
mov r8, r13
mov edx, ebp
call rdi
test eax, eax
jne 0x1400a92f0
mov rcx, r13
call fcn.14009f990
mov dword [rbx + 0x2c], 0x10b
mov ecx, 0x10b
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
mov rax, qword [rbx - 0x90]
mov rcx, qword [rax + 0x30]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, qword [rbx - 0x90]
call fcn.14009f990
mov qword [rbx - 0x98], 0
jmp 0x1400a8c63
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a8970
mov rcx, qword [rbx + 0x30]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2200000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400a8cc3
xor r8d, r8d
lea rdx, [rbx - 0x90]
mov rcx, rax
call fcn.1400a5860
test eax, eax
jne 0x1400aa000
or dword [rbx + 0x28], 8
mov qword [rbx - 0x98], 0
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_CloseHandle]
movsd xmm6, qword [rbx + 0x40]
mov rcx, qword [rbx + 0x30]
mov edi, 2
mov eax, 0x2200000
movsd xmm7, qword [rbx + 0x38]
mov rsi, qword [sym.imp.KERNEL32.dll_CreateFileW]
movsd xmm10, qword [0x14029d970]
movsd xmm9, qword [0x14029d978]
movsd xmm8, qword [0x14029d980]
mov dword [rsp + 0x28], eax
xor r9d, r9d
mov r8d, 7
mov edx, 0x100
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x20], 3
call rsi
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa03d
mulsd xmm7, xmm10
xor edx, edx
lea r8, [rsp + 0x60]
mov rcx, r12
mulsd xmm6, xmm10
lea r9, [rsp + 0xe0]
mulsd xmm7, xmm9
mulsd xmm6, xmm9
addsd xmm7, xmm8
addsd xmm6, xmm8
cvttsd2si rax, xmm7
mov qword [rsp + 0x60], rax
cvttsd2si rax, xmm6
mov qword [rsp + 0xe0], rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
jne 0x1400a8c4f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r12
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r13d, r13d
je case.0x1400a8b9c.26
cmp edi, 1
je 0x1400a957b
cmp r13d, 0x5b8
je 0x1400a9ec6
cmp r13d, 0x1126
je 0x1400a9ec6
mov dword [rbx + 0x2c], r13d
mov ecx, r13d
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a7ab0
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a6f90
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a68e0
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a62b0
mov rsi, qword [rbx + 0x30]
mov rcx, rsi
call sub.msvcrt.dll_wcslen
cmp rax, 1
jbe 0x1400a9710
cmp word [rsi + rax*2 - 4], 0x3a
lea rdx, [rax + rax]
je 0x1400a9710
lea rdx, [rsi + rdx - 2]
movzx eax, word [rdx]
cmp ax, 0x5c
je 0x1400aa1f3
cmp ax, 0x2f
je 0x1400aa1f3
nop word [rax + rax]
mov rcx, qword [rbx + 0x30]
mov rsi, qword [sym.imp.KERNEL32.dll_CreateFileW]
lea rbp, [rbx - 0x80]
mov edi, 2
mov r13d, 1
mov eax, 0x2200000
mov dword [rsp + 0x28], eax
xor r9d, r9d
mov r8d, 7
mov edx, pe_nt_image_headers64
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x20], 3
call rsi
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa067
mov r8d, r13d
mov rdx, rbp
mov rcx, rax
call fcn.1400a5ee0
test eax, eax
jne 0x1400a9f30
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx - 0x90], rbp
mov qword [rbx - 0x98], 0
jmp 0x1400a8c63
lea rdx, [0x1400a5e60]
jmp 0x1400a9217
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a8020
mov rcx, qword [rbx + 0x30]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400a8cc3
test byte [rbx + 0x38], 2
je case.0x1400a8b9c.26
and eax, 0x11
cmp eax, 1
jne case.0x1400a8b9c.26
mov dword [rbx + 0x2c], 0xfffff030
mov ecx, 0xfffff030
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
mov ecx, dword [rbx + 0x30]
cmp ecx, 0xffffffff
je 0x1400a8ce0
call qword [sym.imp.msvcrt.dll__get_osfhandle]
mov rcx, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa01e
movsd xmm0, qword [0x14029d970]
movsd xmm1, qword [rbx + 0x38]
xor edx, edx
lea r9, [rsp + 0xe0]
movsd xmm3, qword [0x14029d978]
movsd xmm2, qword [0x14029d980]
lea r8, [rsp + 0x60]
mulsd xmm1, xmm0
mulsd xmm0, qword [rbx + 0x40]
mulsd xmm1, xmm3
mulsd xmm0, xmm3
addsd xmm1, xmm2
addsd xmm0, xmm2
cvttsd2si rax, xmm1
mov qword [rsp + 0x60], rax
cvttsd2si rax, xmm0
mov qword [rsp + 0xe0], rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
jne case.0x1400a8b9c.26
jmp 0x1400a8cc3
mov ecx, dword [rbx + 0x30]
cmp ecx, 0xffffffff
je 0x1400a8ce0
call qword [sym.imp.msvcrt.dll__get_osfhandle]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x100
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ReOpenFile]
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x1400a8cc3
mov rcx, rax
mov rax, qword [0x1402b0cc0]
lea rsi, [rsp + 0xe0]
lea r12, [rsp + 0x60]
mov dword [rsp + 0x20], 4
mov r9d, 0x28
mov r8, rsi
mov rdx, r12
call qword [rax]
test eax, eax
js 0x1400a9f80
mov rdi, qword [0x1402b0d00]
mov eax, dword [rsp + 0x100]
mov r10, qword [rdi]
test al, 0x20
jne 0x1400aa1e0
or eax, 0x20
mov r9d, 0x28
mov r8, rsi
mov rdx, r12
mov dword [rsp + 0x100], eax
mov rcx, r13
mov dword [rsp + 0x20], 4
call r10
test eax, eax
js 0x1400a9f80
mov eax, dword [rsp + 0x100]
mov ebp, 1
mov edx, eax
or eax, 1
mov r9d, 0x28
mov r8, rsi
and edx, 0xfffffffe
test byte [rbx + 0x38], 0x80
mov rcx, r13
mov dword [rsp + 0x20], 4
cmovne eax, edx
mov rdx, r12
mov dword [rsp + 0x100], eax
call qword [rdi]
test eax, eax
js 0x1400a9f80
test ebp, ebp
je 0x1400a9a10
mov eax, dword [rsp + 0x100]
mov edx, pe_nt_image_headers64
mov rcx, r13
mov dword [rsp + 0x20], 4
mov r9d, 0x28
mov r8, rsi
and eax, 0xffffffdf
cmove eax, edx
mov rdx, r12
mov dword [rsp + 0x100], eax
call qword [rdi]
mov ecx, eax
test eax, eax
js 0x1400a9f82
mov qword [rbx - 0xe0], 0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400a8c63
mov edx, dword [rbx + 0x38]
mov rcx, qword [rbx + 0x30]
call qword [sym.imp.msvcrt.dll__wchmod]
cmp eax, 0xffffffff
jne case.0x1400a8b9c.26
call qword [sym.imp.msvcrt.dll___doserrno]
mov ecx, dword [rax]
mov dword [rbx + 0x2c], ecx
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a8250
mov rdx, qword [rbx + 0x40]
mov rcx, qword [rbx + 0x30]
mov r8d, 1
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne case.0x1400a8b9c.26
jmp 0x1400a8cc3
mov rcx, qword [rbx + 0x30]
call qword [sym.imp.msvcrt.dll__wrmdir]
cmp eax, 0xffffffff
jne case.0x1400a8b9c.26
jmp 0x1400a9a46
movups xmm6, xmmword [rsp + 0x160]
mov rcx, r12
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a7e10
mov r8d, 0xb15
lea rdx, str.src_win_fs.c
lea rcx, str.__bad_uv_fs_type_
jmp 0x1400a9114
mov rcx, r14
call fcn.14009f990
mov qword [rbx - 0x98], 0xffffffffffffffff
jmp 0x1400a9100
and r8d, 1
mov rdx, qword [rbx + 0x40]
mov rcx, qword [rbx + 0x30]
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne case.0x1400a8b9c.26
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
call rdi
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
cmp rax, 0xfffffffffffff00e
jne 0x1400a8c63
mov rcx, qword [rbx + 0x30]
mov rsi, qword [sym.imp.KERNEL32.dll_CreateFileW]
xor r9d, r9d
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2000000
mov r8d, 7
mov edx, pe_nt_image_headers64
mov dword [rsp + 0x20], 3
call rsi
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa781
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.1400a5ee0
test eax, eax
jne 0x1400aa730
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbx + 0x40]
xor r9d, r9d
mov qword [rsp + 0x30], 0
mov r8d, 7
mov dword [rsp + 0x28], 0x2000000
mov edx, pe_nt_image_headers64
mov dword [rsp + 0x20], 3
call rsi
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa8d9
xor r8d, r8d
lea rdx, [rsp + 0xe0]
mov rcx, rax
call fcn.1400a5ee0
test eax, eax
jne 0x1400aa8bf
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rsp + 0xe0]
cmp qword [rsp + 0x60], rax
jne 0x1400a8c63
mov rax, qword [rsp + 0x110]
cmp qword [rsp + 0x90], rax
jne 0x1400a8c63
jmp case.0x1400a8b9c.26
mov qword [rbx - 0x98], 0xfffffffffffff027
mov dword [rbx + 0x2c], 0xe
jmp 0x1400a8c63
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
movdqu xmm4, xmmword [rax + 8]
movups xmmword [rsp + 0xe0], xmm4
movdqu xmm5, xmmword [rax + 0x18]
movups xmmword [rsp + 0xf0], xmm5
mov rcx, qword [rax + 0x10]
movzx r14d, byte [rax + 0xc]
mov ebp, dword [rax + 8]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x48], rcx
mov rcx, r13
mov qword [rsp + 0x40], rax
call fcn.1400bc310
test r14b, r14b
jne 0x1400aa5ae
mov rax, qword [rsp + 0x48]
cmp rax, 0xffffffffffffffff
je 0x1400a9d21
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rbx + 0x60]
lea rdx, [rsp + 0x60]
lea r8, [rsp + 0x58]
mov rcx, r12
mov dword [rsp + 0x20], 0x14
mov r9d, 8
mov qword [rsp + 0x58], rax
mov rax, qword [0x1402b0d00]
call qword [rax]
test eax, eax
js 0x1400aa2ad
mov qword [rbx - 0x98], 0
test ebp, ebp
je 0x1400a8c63
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0xf0], rax
test rax, rax
je 0x1400aa237
mov eax, ebp
mov edx, dword [rsp + 0xf0]
mov rcx, r12
mov qword [rsp + 0x28], 0
and eax, 3
mov r9d, dword [rsp + 0xf4]
cmp eax, 1
mov dword [rsp + 0x20], edx
sbb eax, eax
xor edx, edx
and eax, 0xfffffffe
lea r8d, [rax + 4]
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov r14, rax
test rax, rax
je 0x1400aa78f
mov rcx, r13
call sub.KERNEL32.dll_EnterCriticalSection
mov rax, rsi
shl rax, 4
add rax, rdi
mov r8, qword [rax]
test r8, r8
mov rcx, r8
setne r9b
and ecx, 0xf
jne 0x1400aa243
test r9b, r9b
je 0x1400aa243
mov r11, qword [rax + 8]
mov ecx, 0x10
mov rdx, r11
xor eax, eax
jmp 0x1400a9e19
add rax, 1
add rdx, 0x28
cmp rcx, rax
jbe 0x1400aa258
cmp r15d, dword [rdx]
jne 0x1400a9e08
lea rax, [rax + rax*4]
lea rax, [r11 + rax*8]
test rax, rax
jne 0x1400a9e60
mov ebx, r8d
and ebx, 0xf
jne 0x1400a9e3c
test r9b, r9b
jne 0x1400aa74a
shl rsi, 4
mov eax, ebx
add r8, 1
lea rdx, [rdi + rsi]
lea rax, [rax + rax*4]
mov r9, qword [rdx + 8]
mov qword [rdx], r8
lea rax, [r9 + rax*8]
mov dword [rax], r15d
nop dword [rax]
mov rdi, qword [rsp + 0x40]
mov dword [rsp + 0xe0], ebp
mov byte [rsp + 0xe4], 0
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf8], rdi
movdqu xmm4, xmmword [rsp + 0xe0]
mov rcx, r13
movups xmmword [rax + 8], xmm4
movdqu xmm5, xmmword [rsp + 0xf0]
movups xmmword [rax + 0x18], xmm5
call fcn.1400bc310
jmp 0x1400a8c63
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x1400a9289
xor edx, edx
mov word [rax], dx
jmp 0x1400a9289
movsd xmm6, qword [rbx + 0x40]
movsd xmm7, qword [rbx + 0x38]
mov edi, 1
mov eax, 0x2000000
mov rcx, qword [rbx + 0x30]
jmp 0x1400a94ba
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r12
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r13d, r13d
jne 0x1400a957b
jmp case.0x1400a8b9c.26
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r12
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r13d, r13d
jne 0x1400a957b
jmp 0x1400a8f7e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r12
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r13d, r13d
je 0x1400a9780
cmp edi, 1
je 0x1400a957b
cmp r13d, 0x5b8
je 0x1400a9f6a
cmp r13d, 0x1126
jne 0x1400a957b
mov rcx, qword [rbx + 0x30]
mov edi, 1
xor r13d, r13d
mov eax, 0x2000000
jmp 0x1400a972f
mov ecx, eax
mov rax, qword [0x1402b0d30]
call qword [rax]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a9a1b
mov rax, rsi
shl rax, 4
mov r8, qword [rdi + rax + 8]
test rcx, rcx
jne 0x1400a8ec7
mov rcx, qword [r8 + 0x280]
test rcx, rcx
je 0x1400a8ef7
nop dword [rax + rax]
mov rdx, rcx
xor eax, eax
nop dword [rax]
cmp r15d, dword [rdx]
je 0x1400a9cc0
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400a9fd8
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400a9fd0
jmp 0x1400a8ef7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a9431
mov dword [rbx + 0x2c], 6
mov ecx, 6
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
jmp 0x1400a9553
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
jmp 0x1400a9ef5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
jmp 0x1400a9f1a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
jmp 0x1400a9f42
mov r8d, 4
lea rdx, [0x14029d948]
mov rcx, r12
call sub.msvcrt.dll_wcsncmp
test eax, eax
jne 0x1400aa1ff
lea rcx, [r12 + 8]
lea edx, [rsi - 4]
jmp 0x1400a8db7
mov rcx, r12
call sub.msvcrt.dll_wcslen
mov r8d, 4
lea rdx, [0x14029d948]
mov rcx, r12
mov rsi, rax
call sub.msvcrt.dll_wcsncmp
test eax, eax
je 0x1400aa569
cmp esi, 2
jle 0x1400aa220
movzx eax, word [r12]
and eax, 0xffffffdf
sub eax, 0x41
cmp ax, 0x19
ja 0x1400aa220
cmp word [r12 + 2], 0x3a
jne 0x1400aa220
movzx eax, word [r12 + 4]
cmp ax, 0x5c
je 0x1400aa108
cmp ax, 0x2f
jne 0x1400aa220
lea ecx, [rsi*4 + 0x20]
movsxd rcx, ecx
call fcn.14009f970
mov r14, rax
test rax, rax
je 0x1400aa985
lea rsi, [r14 + 0x10]
mov r8d, 4
lea rdx, [0x14029d958]
mov rcx, rsi
call sub.msvcrt.dll_wcsncpy
xor r9d, r9d
xor r10d, r10d
add r9, r12
movzx edx, word [r9]
test dx, dx
je 0x1400aa3d5
lea eax, [r10 + 1]
mov r11, r9
mov ecx, 4
xor r8d, r8d
cdqe
lea rax, [r12 + rax*2]
jmp 0x1400aa1b3
cmp dx, 0x2f
je 0x1400aa1b9
mov edx, ecx
test r8d, r8d
je 0x1400aa18e
movsxd rcx, ecx
mov r8d, 0x5c
add edx, 1
mov word [rsi + rcx*2], r8w
movzx r8d, word [r11]
lea ecx, [rdx + 1]
movsxd rdx, edx
mov word [rsi + rdx*2], r8w
xor r8d, r8d
mov r11, rax
movzx edx, word [rax]
add rax, 2
test dx, dx
je 0x1400aa3da
cmp dx, 0x5c
jne 0x1400aa170
mov r8d, 1
jmp 0x1400aa1a0
mov ecx, eax
mov dword [rbx + 0x2c], eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
mov ecx, 0x57
jmp 0x1400aa1c3
xor ebp, ebp
jmp 0x1400a9999
xor r11d, r11d
mov word [rdx], r11w
jmp 0x1400a8fd8
xor r10d, r10d
mov word [rdx], r10w
jmp 0x1400a9710
mov rcx, r12
call fcn.14009f990
mov ecx, 6
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400a8cc3
mov qword [rbx - 0x98], 0xfffffffffffff019
mov dword [rbx + 0x2c], 0x32
jmp 0x1400a8c63
mov r14, 0xffffffffffffffff
jmp 0x1400a9dc3
mov rax, rsi
shl rax, 4
mov r11, qword [rdi + rax + 8]
test rcx, rcx
jne 0x1400a9dfd
mov rcx, qword [r11 + 0x280]
test rcx, rcx
je 0x1400a9e2b
nop dword [rax + rax]
mov rdx, rcx
xor eax, eax
nop dword [rax]
cmp r15d, dword [rdx]
je 0x1400aa2a0
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400aa278
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400aa270
jmp 0x1400a9e2b
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
jmp 0x1400a9e60
mov ecx, eax
mov rax, qword [0x1402b0d30]
call qword [rax]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
test ebp, ebp
je 0x1400a8c63
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r13
mov qword [rsp + 0xf0], 0
call sub.KERNEL32.dll_EnterCriticalSection
mov rax, rsi
shl rax, 4
add rax, rdi
mov r9, qword [rax]
test r9, r9
mov r11, r9
setne r8b
and r11d, 0xf
jne 0x1400aa36c
test r8b, r8b
je 0x1400aa36c
mov rcx, qword [rax + 8]
mov r11d, 0x10
mov rdx, rcx
xor eax, eax
jmp 0x1400aa330
add rax, 1
add rdx, 0x28
cmp rax, r11
jae 0x1400aa37d
cmp r15d, dword [rdx]
jne 0x1400aa323
imul rax, rax, 0x28
add rax, rcx
jne 0x1400aa3a9
mov ebx, r9d
and ebx, 0xf
jne 0x1400aa34f
test r8b, r8b
jne 0x1400aa8ef
shl rsi, 4
mov eax, ebx
mov rdx, rsi
imul rax, rax, 0x28
add rdx, rdi
add rax, qword [rdx + 8]
add qword [rdx], 1
mov dword [rax], r15d
jmp 0x1400aa3a9
mov rax, rsi
shl rax, 4
mov rcx, qword [rdi + rax + 8]
test r11, r11
jne 0x1400aa31c
mov rcx, qword [rcx + 0x280]
test rcx, rcx
je 0x1400aa33e
mov rdx, rcx
xor eax, eax
jmp 0x1400aa39c
add eax, 1
add rdx, 0x28
cmp eax, 0x10
je 0x1400aa37d
cmp r15d, dword [rdx]
jne 0x1400aa390
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
mov dword [rsp + 0xe0], ebp
mov byte [rsp + 0xe4], 0
mov qword [rsp + 0xe8], 0xffffffffffffffff
mov qword [rsp + 0xf8], 0
jmp 0x1400a9e84
mov ecx, 4
movsxd rax, ecx
lea edx, [rcx + rcx + 2]
mov ebp, 0x5c
xor r15d, r15d
mov word [rsi + rax*2], bp
add ecx, 2
mov word [r14 + 0xa], dx
xor edx, edx
mov word [r14 + 8], r15w
mov word [rsi + rax*2 + 2], dx
movzx eax, word [r9]
test ax, ax
je 0x1400aa787
lea edx, [r10 + 1]
mov r8d, ecx
xor r10d, r10d
movsxd rdx, edx
lea rdx, [r12 + rdx*2]
jmp 0x1400aa467
cmp ax, 0x2f
je 0x1400aa46d
mov eax, r8d
test r10d, r10d
je 0x1400aa446
movsxd r8, r8d
mov edi, 0x5c
add eax, 1
mov word [rsi + r8*2], di
movzx r9d, word [r9]
lea r8d, [rax + 1]
cdqe
xor r10d, r10d
mov word [rsi + rax*2], r9w
mov r9, rdx
movzx eax, word [rdx]
add rdx, 2
test ax, ax
je 0x1400aa475
cmp ax, 0x5c
jne 0x1400aa428
mov r10d, 1
jmp 0x1400aa458
mov eax, r8d
sub eax, ecx
cmp eax, 2
je 0x1400aa664
add eax, eax
add ecx, ecx
movsxd r8, r8d
xor r9d, r9d
mov word [r14 + 0xe], ax
mov word [r14 + 0xc], cx
xor r10d, r10d
xor edx, edx
mov rcx, r13
mov word [rsi + r8*2], r9w
lea esi, [r8 + r8 + 0x12]
lea eax, [rsi - 8]
mov dword [r14], 0xa0000003
mov word [r14 + 4], ax
mov word [r14 + 6], r10w
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
je 0x1400aa605
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov rcx, r13
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2200000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400aa899
lea rax, [rsp + 0xe0]
mov r9d, esi
mov r8, r14
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], rax
mov edx, 0x900a4
mov rcx, r12
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1400aa5cd
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r14
call fcn.14009f990
mov qword [rbx - 0x98], 0
jmp 0x1400a8c63
lea ecx, [rsi*4 + 0x20]
movsxd rcx, ecx
call fcn.14009f970
mov r14, rax
test rax, rax
je 0x1400aa985
lea rsi, [r14 + 0x10]
mov r8d, 4
lea rdx, [0x14029d958]
mov rcx, rsi
call sub.msvcrt.dll_wcsncpy
mov r9d, 8
mov r10d, 4
jmp 0x1400aa142
mov dword [rbx + 0x2c], 5
mov ecx, 5
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
mov rcx, r14
cdqe
mov qword [rbx - 0x98], rax
call fcn.14009f990
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
jmp 0x1400a8c63
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
mov rcx, r14
cdqe
mov qword [rbx - 0x98], rax
movups xmm6, xmmword [rsp + 0x160]
movups xmm7, xmmword [rsp + 0x170]
movups xmm8, xmmword [rsp + 0x180]
movups xmm9, xmmword [rsp + 0x190]
movups xmm10, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.14009f990
movsxd rax, r8d
mov r11d, 0x5c
add r8d, 1
mov word [rsi + rax*2], r11w
mov eax, 6
jmp 0x1400aa485
cmp r13, qword [rbx + 0x30]
je 0x1400aa68e
mov rcx, r13
call fcn.14009f990
mov ecx, 0x58
call fcn.14009f970
test rax, rax
je 0x1400a9ca0
mov qword [rax], 0
mov edx, dword [rsp + 0x54]
imul edx, dword [rsp + 0x50]
mov edi, edx
mov qword [rax + 8], rdi
mov edi, dword [rsp + 0x60]
mov qword [rax + 0x10], rdi
mov edx, dword [rsp + 0x58]
mov qword [rax + 0x28], 0
mov qword [rax + 0x18], rdx
mov qword [rax + 0x20], rdx
mov qword [rax + 0x30], 0
mov qword [rbx - 0x90], rax
or dword [rbx + 0x28], 8
mov qword [rbx - 0x98], 0
jmp 0x1400a8c63
mov rcx, r14
call fcn.14009f990
jmp case.0x1400a8b9c.26
cmp r13, rdx
je 0x1400aa718
mov rcx, r13
mov dword [rsp + 0x40], eax
call fcn.14009f990
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
cdqe
mov qword [rbx - 0x98], rax
jmp 0x1400a8c63
call rdi
mov rcx, r12
mov ebp, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebp, ebp
jne 0x1400a8c63
jmp 0x1400a9c14
mov ecx, 0x288
call fcn.14009f970
mov rdx, rax
test rax, rax
je 0x1400aa985
mov rax, rsi
shl rax, 4
add rax, rdi
mov rcx, qword [rax + 8]
mov qword [rdx + 0x280], rcx
mov r8, qword [rax]
mov qword [rax + 8], rdx
jmp 0x1400a9e3c
call rdi
mov ebp, eax
jmp 0x1400aa73d
mov r8d, ecx
jmp 0x1400aa485
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
mov rcx, r12
cdqe
mov qword [rbx - 0x98], rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r13
mov qword [rsp + 0xf0], 0
call sub.KERNEL32.dll_EnterCriticalSection
mov rax, rsi
shl rax, 4
add rax, rdi
mov r9, qword [rax]
test r9, r9
mov r11, r9
setne r8b
and r11d, 0xf
jne 0x1400aa920
test r8b, r8b
je 0x1400aa920
mov rax, qword [rax + 8]
mov r11d, 0x10
mov rcx, rax
xor edx, edx
jmp 0x1400aa811
add rdx, 1
add rcx, 0x28
cmp rdx, r11
jae 0x1400aa935
cmp r15d, dword [rcx]
jne 0x1400aa800
imul rdx, rdx, 0x28
add rax, rdx
jne 0x1400aa84b
mov ebx, r9d
and ebx, 0xf
jne 0x1400aa830
test r8b, r8b
jne 0x1400aa996
shl rsi, 4
mov eax, ebx
mov rdx, rsi
imul rax, rax, 0x28
add rdx, rdi
add rax, qword [rdx + 8]
add qword [rdx], 1
mov dword [rax], r15d
mov dword [rsp + 0xe0], ebp
mov rcx, r13
mov byte [rsp + 0xe4], 0
mov qword [rsp + 0xe8], 0xffffffffffffffff
movdqu xmm3, xmmword [rsp + 0xe0]
mov qword [rsp + 0xf8], 0
movups xmmword [rax + 8], xmm3
movdqu xmm4, xmmword [rsp + 0xf0]
movups xmmword [rax + 0x18], xmm4
call fcn.1400bc310
jmp 0x1400a8c63
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x2c], eax
mov ecx, eax
call fcn.1400a4200
mov rcx, r14
cdqe
mov qword [rbx - 0x98], rax
call fcn.14009f990
jmp 0x1400aa5f7
call rdi
mov rcx, r12
mov esi, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test esi, esi
jne 0x1400a8c63
jmp 0x1400a9c72
call rdi
mov esi, eax
jmp 0x1400aa8cc
mov ecx, 0xe
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1400aa212
mov ecx, 0x288
call fcn.14009f970
test rax, rax
je 0x1400aa985
mov rdx, rsi
shl rdx, 4
add rdx, rdi
mov rcx, qword [rdx + 8]
mov qword [rax + 0x280], rcx
mov qword [rdx + 8], rax
jmp 0x1400aa34f
mov rax, rsi
shl rax, 4
mov rax, qword [rdi + rax + 8]
test r11, r11
jne 0x1400aa7f9
mov rcx, qword [rax + 0x280]
test rcx, rcx
je 0x1400aa81f
mov rdx, rcx
xor eax, eax
nop word [rax + rax]
cmp r15d, dword [rdx]
je 0x1400aa978
add eax, 1
add rdx, 0x28
cmp eax, 0x10
jne 0x1400aa950
mov rcx, qword [rcx + 0x280]
test rcx, rcx
jne 0x1400aa945
jmp 0x1400aa81f
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
jmp 0x1400aa84b
lea rdx, [0x14029d747]
mov ecx, 0xe
call fcn.1400a4140
mov ecx, 0x288
call fcn.14009f970
test rax, rax
je 0x1400aa985
mov rdx, rsi
shl rdx, 4
add rdx, rdi
mov rcx, qword [rdx + 8]
mov qword [rax + 0x280], rcx
mov qword [rdx + 8], rax
jmp 0x1400aa830