Function at 0x140058af0
Capabilities:
Delete file
Enumerate files on windows
Move file

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x388
movaps xmmword [rsp + 0x370], xmm6
mov rbx, rcx
movzx eax, byte [rcx]
lea rdi, [rcx + 2]
test al, 1
je 0x140058b2b
mov rax, qword [rbx + 8]
mov rcx, qword [rbx + 0x10]
cmp word [rcx + rax*2 - 2], 0x5c
jne 0x140058b39
jmp 0x140058b45
shr rax, 1
mov rcx, rdi
cmp word [rcx + rax*2 - 2], 0x5c
je 0x140058b45
mov rcx, rbx
mov dx, 0x5c
call fcn.140075e00
lea rcx, [rsp + 0x100]
mov rdx, rbx
call fcn.140075840
lea rdx, [0x140262276]
mov rcx, rbx
call fcn.140076360
test byte [rbx], 1
mov rcx, rdi
je 0x140058b70
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x120]
call qword [sym.imp.KERNEL32.DLL_FindFirstFileW]
cmp rax, 0xffffffffffffffff
jne 0x140058bfd
movzx ecx, byte [rbx]
test cl, 1
je 0x140058b92
mov rax, qword [rbx + 8]
jmp 0x140058b98
mov rax, rcx
shr rax, 1
lea rdx, [rax - 1]
test cl, 1
jne 0x140058baa
add dl, dl
mov byte [rbx], dl
mov rcx, rdi
jmp 0x140058bb2
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 8], rdx
mov word [rcx + rax*2 - 2], 0
test byte [rbx], 1
mov rcx, rdi
je 0x140058bc5
mov rcx, qword [rbx + 0x10]
call fcn.14004e0c0
lea rdx, [0x140262276]
mov rcx, rbx
call fcn.140076360
test byte [rbx], 1
mov rcx, rdi
je 0x140058be5
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x120]
call qword [sym.imp.KERNEL32.DLL_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140059b61
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_FindClose]
mov byte [rsp + 0x69], 0
lea rcx, [rsp + 0xd8]
call fcn.14005c770
lea rcx, [rsp + 0xd8]
lea rdx, [rsp + 0x60]
mov r8d, 9
call fcn.14005c780
lea rcx, [rsp + 0xd8]
call fcn.14005c3d0
movq xmm0, qword [rsp + 0x60]
movdqa xmm1, xmm0
psrlw xmm1, 1
pand xmm1, xmmword [0x140262100]
pxor xmm2, xmm2
movdqa xmm3, xmm1
punpckhbw xmm3, xmm2
movdqa xmm4, xmmword [0x140262110]
pmullw xmm3, xmm4
psrlw xmm3, 8
punpcklbw xmm1, xmm2
pmullw xmm1, xmm4
psrlw xmm1, 8
packuswb xmm1, xmm3
psrlw xmm1, 4
pand xmm1, xmmword [0x140262120]
movdqa xmm2, xmm1
punpckhbw xmm2, xmm2
movdqa xmm3, xmmword [0x140262130]
pmullw xmm2, xmm3
movdqa xmm4, xmmword [0x140262140]
pand xmm2, xmm4
punpcklbw xmm1, xmm1
pmullw xmm1, xmm3
pand xmm1, xmm4
packuswb xmm1, xmm2
psubb xmm0, xmm1
movdqa xmm1, xmmword [0x140262150]
pmaxub xmm1, xmm0
pcmpeqb xmm1, xmm0
movdqa xmm2, xmmword [str.________]
pmaxub xmm2, xmm0
pcmpeqb xmm2, xmm0
movdqa xmm3, xmmword [0x140262170]
pand xmm3, xmm2
pandn xmm2, xmmword [str.77777777]
por xmm2, xmm3
pand xmm2, xmm1
pandn xmm1, xmmword [str.00000000]
por xmm1, xmm2
paddb xmm1, xmm0
movq qword [rsp + 0x60], xmm1
movzx eax, byte [rsp + 0x68]
mov ecx, eax
shr cl, 1
movzx ecx, cl
imul ecx, ecx, 0x85
shr ecx, 0xc
lea edx, [rcx + rcx]
shl ecx, 6
sub ecx, edx
sub al, cl
cmp al, 0x24
mov ecx, 0x37
mov edx, 0x3d
cmovb edx, ecx
cmp al, 0xa
mov ecx, 0x30
cmovae ecx, edx
add cl, al
mov byte [rsp + 0x68], cl
lea rcx, [rsp + 0x60]
call sub.msvcrt.dll_strlen
cmp rax, 0xfffffffffffffff0
jae 0x140059b94
mov r14, rax
cmp rax, 0x16
ja 0x140058d7f
lea eax, [r14 + r14]
mov byte [rsp + 0x78], al
lea r15, [rsp + 0x79]
jmp 0x140058dad
mov r12, r14
or r12, 0xf
inc r12
mov rcx, r12
call fcn.1400731c0
mov r15, rax
mov qword [rsp + 0x88], rax
or r12, 1
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x80], r14
lea rdx, [rsp + 0x60]
mov rcx, r15
mov r8, r14
call sub.msvcrt.dll_memcpy
mov byte [r15 + r14], 0
movzx esi, byte [rsp + 0x78]
test sil, 1
je 0x140058ddf
mov r14, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x80]
jmp 0x140058de7
lea r14, [rsp + 0x79]
shr rsi, 1
movabs rax, 0x7fffffffffffffef
cmp rsi, rax
ja 0x140059b9e
cmp rsi, 0xb
jae 0x140058e1f
lea eax, [rsi + rsi]
mov byte [rsp + 0xa8], al
lea rax, [rsp + 0xaa]
mov rdx, rax
test rsi, rsi
jne 0x140058e54
jmp 0x140058f5e
mov r15, rsi
or r15, 7
inc r15
js 0x140059bab
lea rcx, [r15 + r15]
call fcn.1400731c0
mov qword [rsp + 0xb8], rax
or r15, 1
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0xb0], rsi
lea rcx, [r14 + rsi]
cmp rsi, 0x10
jb 0x140058e74
cmp rax, rcx
jae 0x140058f05
lea rdx, [rax + rsi*2]
cmp r14, rdx
jae 0x140058f05
mov rdx, rax
mov r8, r14
mov r9d, ecx
sub r9d, r8d
mov rax, r8
not rax
add rax, rcx
and r9, 7
je 0x140058ea4
nop
movsx r10d, byte [r8]
mov word [rdx], r10w
inc r8
add rdx, 2
dec r9
jne 0x140058e90
cmp rax, 7
jb 0x140058f5e
nop
movsx eax, byte [r8]
mov word [rdx], ax
movsx eax, byte [r8 + 1]
mov word [rdx + 2], ax
movsx eax, byte [r8 + 2]
mov word [rdx + 4], ax
movsx eax, byte [r8 + 3]
mov word [rdx + 6], ax
movsx eax, byte [r8 + 4]
mov word [rdx + 8], ax
movsx eax, byte [r8 + 5]
mov word [rdx + 0xa], ax
movsx eax, byte [r8 + 6]
mov word [rdx + 0xc], ax
movsx eax, byte [r8 + 7]
mov word [rdx + 0xe], ax
add r8, 8
add rdx, 0x10
cmp r8, rcx
jne 0x140058eb0
jmp 0x140058f5e
mov r9, rsi
and r9, 0xfffffffffffffff0
lea rdx, [rax + r9*2]
lea r8, [r14 + r9]
xor r10d, r10d
nop word [rax + rax]
movq xmm0, qword [r14 + r10]
punpcklbw xmm0, xmm0
movq xmm1, qword [r14 + r10 + 8]
punpcklbw xmm1, xmm1
psraw xmm0, 8
psraw xmm1, 8
movdqu xmmword [rax + r10*2], xmm0
movdqu xmmword [rax + r10*2 + 0x10], xmm1
add r10, 0x10
cmp r9, r10
jne 0x140058f20
cmp rsi, r9
jne 0x140058e7a
mov word [rdx], 0
movzx r9d, byte [rsp + 0x100]
test r9b, 1
je 0x140058f84
mov r8, qword [rsp + 0x110]
mov r9, qword [rsp + 0x108]
jmp 0x140058f8f
shr r9, 1
lea r8, [rsp + 0x102]
lea rcx, [rsp + 0xa8]
xor edx, edx
call fcn.140075a50
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x50], rcx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x40], xmm0
pxor xmm0, xmm0
movdqu xmmword [rax], xmm0
mov qword [rax + 0x10], 0
test byte [rsp + 0xa8], 1
je 0x140058fd8
mov rcx, qword [rsp + 0xb8]
call fcn.140073240
test byte [rsp + 0x40], 1
lea r14, [rsp + 0x42]
mov rcx, r14
je 0x140058fec
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
mov edx, 3
mov r8d, 6
xor r9d, r9d
call qword [sym.imp.KERNEL32.DLL_CreateFileW]
lea rsi, [rax + 1]
cmp rsi, 2
jb 0x140059041
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_CloseHandle]
test byte [rsp + 0x40], 1
je 0x140059038
mov r14, qword [rsp + 0x50]
mov rcx, r14
call qword [sym.imp.KERNEL32.DLL_DeleteFileW]
test byte [rsp + 0x40], 1
jne 0x1400595ea
test byte [rsp + 0x78], 1
jne 0x1400595ff
cmp rsi, 1
ja 0x140059616
lea rax, [rsp + 0xd8]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 0
lea rax, [rsp + 0x78]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 0
test byte [rbx], 1
je 0x1400590ac
mov rdi, qword [rbx + 0x10]
mov qword [rsp + 0x118], rsi
lea rdx, [rsp + 0x120]
mov rcx, rdi
call qword [sym.imp.KERNEL32.DLL_FindFirstFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x140059316
lea rbx, [rsp + 0x14c]
xor eax, eax
mov qword [rsp + 0xf8], rax
lea r14, [rsp + 0x120]
mov rsi, qword [sym.imp.KERNEL32.DLL_FindNextFileW]
mov r12, qword [sym.imp.KERNEL32.DLL_GetLastError]
nop word [rax + rax]
test byte [rsp + 0x120], 0x10
jne 0x140059150
mov rcx, rbx
call sub.msvcrt.dll_wcslen
mov r13, rax
movabs rax, 0x7fffffffffffffef
cmp r13, rax
ja 0x140059b76
cmp r13, 0xa
ja 0x1400591c0
lea eax, [r13 + r13]
mov byte [rsp + 0x40], al
lea rbp, [rsp + 0x42]
jmp 0x1400591ef
mov rcx, rbx
lea rdx, [0x14026227a]
call sub.msvcrt.dll_wcscmp
test eax, eax
je 0x1400592e0
mov rcx, rbx
lea rdx, [0x14026227e]
call sub.msvcrt.dll_wcscmp
test eax, eax
je 0x1400592e0
mov rcx, rbx
call sub.msvcrt.dll_wcslen
mov r15, rax
movabs rax, 0x7fffffffffffffef
cmp r15, rax
ja 0x140059b85
cmp r15, 0xa
ja 0x140059256
lea eax, [r15 + r15]
mov byte [rsp + 0x40], al
lea rbp, [rsp + 0x42]
jmp 0x140059287
mov r15, r13
or r15, 7
inc r15
js 0x140059b80
lea rcx, [r15 + r15]
call fcn.1400731c0
mov rbp, rax
mov qword [rsp + 0x50], rax
or r15, 1
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r13
mov r8, r13
add r8, r13
mov rcx, rbp
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov word [rbp + r13*2], 0
mov ecx, 0x28
call fcn.1400731c0
mov rcx, qword [rsp + 0x50]
mov qword [rax + 0x20], rcx
movdqu xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rax + 0x10], xmm0
lea rcx, [rsp + 0xd8]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0xd8]
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov qword [rsp + 0xd8], rax
inc qword [rsp + 0xe8]
jmp 0x1400592e0
mov r13, r15
or r13, 7
inc r13
js 0x140059b8f
mov rcx, r13
add rcx, r13
call fcn.1400731c0
mov rbp, rax
mov qword [rsp + 0x50], rax
or r13, 1
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r15
mov r8, r15
add r8, r15
mov rcx, rbp
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov word [rbp + r15*2], 0
mov ecx, 0x28
call fcn.1400731c0
mov rcx, qword [rsp + 0x50]
mov qword [rax + 0x20], rcx
movdqu xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rax + 0x10], xmm0
lea rcx, [rsp + 0x78]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x78]
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov qword [rsp + 0x78], rax
inc qword [rsp + 0x88]
mov rcx, rdi
mov rdx, r14
call rsi
mov ebp, eax
call r12
test ebp, ebp
jne 0x140059100
cmp eax, 5
jne 0x140059316
mov rcx, qword [rsp + 0xf8]
lea eax, [rcx + 1]
cmp ecx, 0x31
mov qword [rsp + 0xf8], rax
jb 0x140059100
mov rcx, rdi
call qword [sym.imp.KERNEL32.DLL_FindClose]
call sub.msvcrt.dll_rand
lea rcx, [rsp + 0x40]
mov edx, eax
call fcn.140076c20
mov rbx, qword [rsp + 0xe0]
lea rax, [rsp + 0xd8]
xor esi, esi
cmp rbx, rax
je 0x14005962c
lea rdi, [rsp + 0xa8]
lea r14, [rsp + 0x100]
lea r15, [rsp + 0xc0]
xorps xmm6, xmm6
mov r12, qword [sym.imp.KERNEL32.DLL_MoveFileW]
nop dword [rax]
lea rdx, [rbx + 0x10]
mov rcx, rdi
call fcn.140075840
lea rcx, [rsp + 0x60]
mov rdx, r14
mov r8, rdi
call fcn.14002f630
test byte [rsp + 0x60], 1
lea r13, [rsp + 0x62]
je 0x14005939d
mov r13, qword [rsp + 0x70]
mov rcx, r15
mov rdx, r14
mov r8, rdi
call fcn.14002f630
movzx r8d, byte [rsp + 0x40]
test r8b, 1
je 0x1400593d0
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
jmp 0x1400593d8
shr r8, 1
lea rdx, [rsp + 0x42]
mov rcx, r15
call fcn.140075c20
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xa0], rcx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x90], xmm0
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
test byte [rsp + 0x90], 1
lea rdx, [rsp + 0x92]
je 0x14005941e
mov rdx, qword [rsp + 0xa0]
mov rcx, r13
call r12
mov ebp, eax
test byte [rsp + 0x90], 1
jne 0x140059480
test byte [rsp + 0xc0], 1
jne 0x140059497
test byte [rsp + 0x60], 1
jne 0x1400594ab
test ebp, ebp
je 0x1400594c0
lea rcx, [rsp + 0x90]
mov rdx, r14
mov r8, rdi
call fcn.14002f630
movzx r8d, byte [rsp + 0x40]
test r8b, 1
je 0x140059500
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
jmp 0x140059508
mov rcx, qword [rsp + 0xa0]
call fcn.140073240
test byte [rsp + 0xc0], 1
je 0x14005943a
mov rcx, qword [rsp + 0xd0]
call fcn.140073240
test byte [rsp + 0x60], 1
je 0x140059441
mov rcx, qword [rsp + 0x70]
call fcn.140073240
test ebp, ebp
jne 0x140059445
nop dword [rax]
test byte [rsp + 0xa8], 1
je 0x1400594d7
mov rcx, qword [rsp + 0xb8]
call fcn.140073240
test ebp, ebp
jne 0x140059a1e
mov rbx, qword [rbx + 8]
lea rax, [rsp + 0xd8]
cmp rbx, rax
jne 0x140059370
jmp 0x14005962c
shr r8, 1
lea rdx, [rsp + 0x42]
lea rcx, [rsp + 0x90]
call fcn.140075c20
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x70], rcx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x60], xmm0
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
movzx esi, byte [rsp + 0x60]
mov r13, qword [rsp + 0x70]
mov rcx, r15
mov rdx, r14
mov r8, rdi
call fcn.14002f630
test sil, 1
lea rax, [rsp + 0x62]
cmove r13, rax
test byte [rsp + 0xc0], 1
lea rdx, [rsp + 0xc2]
je 0x140059572
mov rdx, qword [rsp + 0xd0]
mov rcx, r13
call r12
test byte [rsp + 0xc0], 1
jne 0x1400595c0
test byte [rsp + 0x60], 1
jne 0x1400595d4
test byte [rsp + 0x90], 1
je 0x1400595a0
mov rcx, qword [rsp + 0xa0]
call fcn.140073240
mov sil, 1
test byte [rsp + 0xa8], 1
jne 0x1400594ca
jmp 0x1400594d7
mov rcx, qword [rsp + 0xd0]
call fcn.140073240
test byte [rsp + 0x60], 1
je 0x140059589
mov rcx, qword [rsp + 0x70]
call fcn.140073240
test byte [rsp + 0x90], 1
jne 0x140059593
jmp 0x1400595a0
mov rcx, qword [rsp + 0x50]
call fcn.140073240
test byte [rsp + 0x78], 1
je 0x140059057
mov rcx, qword [rsp + 0x88]
call fcn.140073240
cmp rsi, 1
jbe 0x140059061
mov dil, 1
test byte [rsp + 0x100], 1
jne 0x140059aca
jmp 0x140059ad7
mov rbx, qword [rsp + 0x80]
lea rax, [rsp + 0x78]
cmp rbx, rax
je 0x1400598ea
lea rdi, [rsp + 0xa8]
lea r14, [rsp + 0x100]
lea r15, [rsp + 0xc0]
xorps xmm6, xmm6
mov r12, qword [sym.imp.KERNEL32.DLL_MoveFileW]
nop word cs:[rax + rax]
lea rdx, [rbx + 0x10]
mov rcx, rdi
call fcn.140075840
lea rcx, [rsp + 0x60]
mov rdx, r14
mov r8, rdi
call fcn.14002f630
test byte [rsp + 0x60], 1
lea r13, [rsp + 0x62]
je 0x14005969d
mov r13, qword [rsp + 0x70]
mov rcx, r15
mov rdx, r14
mov r8, rdi
call fcn.14002f630
movzx r8d, byte [rsp + 0x40]
test r8b, 1
je 0x1400596d0
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
jmp 0x1400596d8
shr r8, 1
lea rdx, [rsp + 0x42]
mov rcx, r15
call fcn.140075c20
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xa0], rcx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x90], xmm0
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
test byte [rsp + 0x90], 1
lea rdx, [rsp + 0x92]
je 0x14005971e
mov rdx, qword [rsp + 0xa0]
mov rcx, r13
call r12
mov ebp, eax
test byte [rsp + 0x90], 1
jne 0x140059780
test byte [rsp + 0xc0], 1
jne 0x140059797
test byte [rsp + 0x60], 1
jne 0x1400597ab
test ebp, ebp
je 0x1400597c0
lea rcx, [rsp + 0x90]
mov rdx, r14
mov r8, rdi
call fcn.14002f630
movzx r8d, byte [rsp + 0x40]
test r8b, 1
je 0x140059800
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
jmp 0x140059808
mov rcx, qword [rsp + 0xa0]
call fcn.140073240
test byte [rsp + 0xc0], 1
je 0x14005973a
mov rcx, qword [rsp + 0xd0]
call fcn.140073240
test byte [rsp + 0x60], 1
je 0x140059741
mov rcx, qword [rsp + 0x70]
call fcn.140073240
test ebp, ebp
jne 0x140059745
nop dword [rax]
test byte [rsp + 0xa8], 1
je 0x1400597d7
mov rcx, qword [rsp + 0xb8]
call fcn.140073240
test ebp, ebp
jne 0x140059a1e
mov rbx, qword [rbx + 8]
lea rax, [rsp + 0x78]
cmp rbx, rax
jne 0x140059670
jmp 0x1400598ea
shr r8, 1
lea rdx, [rsp + 0x42]
lea rcx, [rsp + 0x90]
call fcn.140075c20
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x70], rcx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x60], xmm0
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
movzx esi, byte [rsp + 0x60]
mov r13, qword [rsp + 0x70]
mov rcx, r15
mov rdx, r14
mov r8, rdi
call fcn.14002f630
test sil, 1
lea rax, [rsp + 0x62]
cmove r13, rax
test byte [rsp + 0xc0], 1
lea rdx, [rsp + 0xc2]
je 0x140059872
mov rdx, qword [rsp + 0xd0]
mov rcx, r13
call r12
test byte [rsp + 0xc0], 1
jne 0x1400598c0
test byte [rsp + 0x60], 1
jne 0x1400598d4
test byte [rsp + 0x90], 1
je 0x1400598a0
mov rcx, qword [rsp + 0xa0]
call fcn.140073240
mov sil, 1
test byte [rsp + 0xa8], 1
jne 0x1400597ca
jmp 0x1400597d7
mov rcx, qword [rsp + 0xd0]
call fcn.140073240
test byte [rsp + 0x60], 1
je 0x140059889
mov rcx, qword [rsp + 0x70]
call fcn.140073240
test byte [rsp + 0x90], 1
jne 0x140059893
jmp 0x1400598a0
mov dword [rsp + 0xf8], esi
mov r12, qword [rsp + 0xe0]
lea rax, [rsp + 0xd8]
cmp r12, rax
je 0x1400599eb
xor ebp, ebp
lea rdi, [rsp + 0xa8]
lea rbx, [rsp + 0x60]
lea r14, [rsp + 0x100]
mov rsi, qword [sym.imp.KERNEL32.DLL_CreateFileW]
nop dword [rax + rax]
lea rdx, [r12 + 0x10]
mov rcx, rdi
call fcn.140075840
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.14002f630
test byte [rsp + 0x60], 1
lea rcx, [rsp + 0x62]
je 0x14005995c
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
mov edx, 3
mov r8d, 6
xor r9d, r9d
call rsi
mov r15, rax
test byte [rsp + 0x60], 1
je 0x140059999
mov rcx, qword [rsp + 0x70]
call fcn.140073240
lea r13, [r15 + 1]
cmp r13, 2
jb 0x1400599af
mov bpl, 1
mov rcx, r15
call qword [sym.imp.KERNEL32.DLL_CloseHandle]
test byte [rsp + 0xa8], 1
je 0x1400599c6
mov rcx, qword [rsp + 0xb8]
call fcn.140073240
cmp r13, 1
ja 0x140059a1e
mov r12, qword [r12 + 8]
lea rax, [rsp + 0xd8]
cmp r12, rax
jne 0x140059930
mov dil, 1
test bpl, 1
jne 0x140059a0a
cmp qword [rsp + 0x118], 1
ja 0x140059a1e
mov edi, dword [rsp + 0xf8]
and dil, 1
test byte [rsp + 0x40], 1
je 0x140059a11
jmp 0x140059a28
test byte [rsp + 0x40], 1
jne 0x140059a28
cmp qword [rsp + 0x88], 0
jne 0x140059a3d
jmp 0x140059a76
mov dil, 1
test byte [rsp + 0x40], 1
je 0x140059a11
mov rcx, qword [rsp + 0x50]
call fcn.140073240
cmp qword [rsp + 0x88], 0
je 0x140059a76
mov rax, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
mov rcx, qword [rax + 8]
mov rdx, qword [rbx]
mov qword [rdx + 8], rcx
mov rax, qword [rax + 8]
mov qword [rax], rdx
mov qword [rsp + 0x88], 0
lea rax, [rsp + 0x78]
cmp rbx, rax
jne 0x140059b19
cmp qword [rsp + 0xe8], 0
je 0x140059ac0
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xe0]
mov rcx, qword [rax + 8]
mov rdx, qword [rbx]
mov qword [rdx + 8], rcx
mov rax, qword [rax + 8]
mov qword [rax], rdx
mov qword [rsp + 0xe8], 0
lea rax, [rsp + 0xd8]
cmp rbx, rax
jne 0x140059b4c
test byte [rsp + 0x100], 1
je 0x140059ad7
mov rcx, qword [rsp + 0x110]
call fcn.140073240
mov eax, edi
movaps xmm6, xmmword [rsp + 0x370]
add rsp, 0x388
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbx
call fcn.140073240
mov rbx, rsi
lea rax, [rsp + 0x78]
cmp rsi, rax
je 0x140059a76
mov rsi, qword [rbx + 8]
test byte [rbx + 0x10], 1
je 0x140059b00
mov rcx, qword [rbx + 0x20]
call fcn.140073240
jmp 0x140059b00
mov rcx, rbx
call fcn.140073240
mov rbx, rsi
lea rax, [rsp + 0xd8]
cmp rsi, rax
je 0x140059ac0
mov rsi, qword [rbx + 8]
test byte [rbx + 0x10], 1
je 0x140059b30
mov rcx, qword [rbx + 0x20]
call fcn.140073240
jmp 0x140059b30
xor edi, edi
test byte [rsp + 0x100], 1
jne 0x140059aca
jmp 0x140059ad7
lea rcx, [rsp + 0x40]
call fcn.140002b00
call fcn.140002ba0
lea rcx, [rsp + 0x40]
call fcn.140002b00
call fcn.140002ba0
lea rcx, [rsp + 0x78]
call fcn.140035730
lea rcx, [rsp + 0xa8]
call fcn.140002b00
call fcn.140002ba0
jmp 0x140059db0
mov rcx, rsi
call fcn.14009d370
mov rcx, qword [rsp + 0x88]
call fcn.140073240
test byte [rsp + 0x100], 1
je 0x140059c10
jmp 0x140059dd8
mov rsi, rax
lea rcx, [rsp + 0x78]
call fcn.140059df0
lea rcx, [rsp + 0xd8]
call fcn.140059df0
test byte [rsp + 0x100], 1
je 0x140059c10
mov rcx, qword [rsp + 0x110]
call fcn.140073240
mov rcx, rsi
call fcn.14009d370
int3