Function at 0x18001e290
Capabilities:
Contain obfuscated stackstrings
Delete file
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x510]
sub rsp, 0x610
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rsp + 0x650], rbx
mov rax, qword [0x18008d0c0]
xor rax, rsp
mov qword [rbp + 0x500], rax
mov qword [rsp + 0x50], r9
mov r12, r8
mov rbx, rdx
mov qword [rsp + 0x48], rdx
xor r14d, r14d
mov dword [rsp + 0x44], r14d
cmp qword [rdx + 0x10], r14
je 0x18001fb75
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
cmp rax, rdx
je 0x18001fb75
mov ecx, r14d
sub rdx, rax
sar rdx, 7
test rdx, rdx
je 0x18001fb75
add rax, 0x7c
cmp byte [rax], r14b
jne 0x18001e32c
inc rcx
sub rax, 0xffffffffffffff80
cmp rcx, rdx
jb 0x18001e316
jmp 0x18001fb75
mov r8, rbx
lea rdx, [rbp + 0x3c0]
call fcn.180020a60
nop
xor eax, eax
mov qword [rbp + 0x368], rax
mov qword [rbp + 0x370], rax
mov qword [rbp + 0x368], r14
mov word [rbp + 0x370], ax
lea rdx, [rbp + 0x3c0]
lea rcx, [rbp + 0x368]
call fcn.180006a80
xor eax, eax
mov qword [rbp + 0x3b0], rax
mov qword [rbp + 0x3b8], rax
lea rax, [rbp + 0x368]
mov qword [rbp + 0x3b0], rax
mov byte [rbp + 0x3b8], 0
mov rcx, qword [rbp + 0x368]
test rcx, rcx
jne 0x18001e3a3
xor sil, sil
jmp 0x18001e3c4
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x18001e3ba
xor sil, sil
jmp 0x18001e3c4
mov byte [rbp + 0x370], 1
mov sil, 1
mov byte [rsp + 0x40], sil
mov byte [rbp + 0x3b8], sil
xor eax, eax
mov qword [rbp + 0x350], rax
mov qword [rbp + 0x358], rax
mov qword [rbp + 0x360], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r14
mov byte [rsp + 0x41], al
lea r9, [rsp + 0x41]
lea r8, [rbp + 0x350]
mov rdx, rbx
call fcn.18001fdd0
test al, al
jne 0x18001e42e
cmp byte [rsp + 0x41], al
je 0x18001e42e
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x18001e428
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
xor r13b, r13b
xor ebx, ebx
mov r15d, ebx
mov rcx, qword [r12]
mov rax, qword [r12 + 8]
sub rax, rcx
sar rax, 7
test rax, rax
je 0x18001fa4f
nop
mov rdi, r15
shl rdi, 7
add rdi, rcx
cmp byte [rdi + 0x7c], 0
je 0x18001e9ca
mov r14, rbx
mov esi, ebx
mov rax, qword [rbp + 0x358]
mov rcx, qword [rbp + 0x350]
sub rax, rcx
sar rax, 7
test rax, rax
je 0x18001e4df
nop dword [rax]
nop word [rax + rax]
shl rbx, 7
add rbx, rcx
mov rdx, rdi
cmp qword [rdi + 0x18], 8
jb 0x18001e4a4
mov rdx, qword [rdi]
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x18001e4b1
mov rcx, qword [rbx]
call fcn.180046de0
test eax, eax
je 0x18001e4da
inc esi
mov ebx, esi
mov rax, qword [rbp + 0x358]
mov rcx, qword [rbp + 0x350]
sub rax, rcx
sar rax, 7
cmp rbx, rax
jb 0x18001e490
jmp 0x18001e4dd
mov r14, rbx
xor ebx, ebx
test r14, r14
jne 0x18001e701
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x418], 7
mov word [rbp + 0x400], bx
mov qword [rbp + 0x430], rbx
mov qword [rbp + 0x438], rbx
mov qword [rbp + 0x430], rbx
mov qword [rbp + 0x438], 7
mov word [rbp + 0x420], bx
mov qword [rbp + 0x450], rbx
mov qword [rbp + 0x458], rbx
mov qword [rbp + 0x450], rbx
mov qword [rbp + 0x458], 7
mov word [rbp + 0x440], bx
mov qword [rbp + 0x460], rbx
mov qword [rbp + 0x468], rbx
mov qword [rbp + 0x470], rbx
mov dword [rbp + 0x478], ebx
mov byte [rbp + 0x47c], r14b
mov rax, qword [rbp + 0x358]
cmp qword [rbp + 0x360], rax
je 0x18001e5b2
lea rdx, [rbp + 0x400]
mov rcx, rax
call fcn.18001de90
mov rcx, qword [rbp + 0x358]
sub rcx, 0xffffffffffffff80
mov qword [rbp + 0x358], rcx
jmp 0x18001e5cf
lea r8, [rbp + 0x400]
mov rdx, rax
lea rcx, [rbp + 0x350]
call fcn.180021ba0
mov rcx, qword [rbp + 0x358]
mov rax, qword [rbp + 0x350]
sub rcx, rax
and rcx, 0xffffffffffffff80
lea r14, [rax - 0x80]
add r14, rcx
mov rdx, qword [rbp + 0x458]
cmp rdx, 8
jb 0x18001e62a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e625
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbbf
call fcn.180037644
mov qword [rbp + 0x450], rbx
mov qword [rbp + 0x458], 7
mov word [rbp + 0x440], bx
mov rdx, qword [rbp + 0x438]
cmp rdx, 8
jb 0x18001e689
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x420]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e684
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbc5
call fcn.180037644
mov qword [rbp + 0x430], rbx
mov qword [rbp + 0x438], 7
mov word [rbp + 0x420], bx
mov rdx, qword [rbp + 0x418]
cmp rdx, 8
jb 0x18001e6e8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x400]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e6e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbcb
call fcn.180037644
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x418], 7
mov word [rbp + 0x400], bx
mov rdx, r14
lea rcx, [rbp + 0x480]
call fcn.18001de90
nop
mov rdx, rdi
mov rcx, r14
call fcn.1800077b0
lea rdx, [rdi + 0x20]
lea rcx, [r14 + 0x20]
call fcn.1800077b0
lea rsi, [r14 + 0x40]
lea rdx, [rdi + 0x40]
mov rcx, rsi
call fcn.1800077b0
mov rax, qword [rdi + 0x60]
mov qword [r14 + 0x60], rax
mov rax, qword [rdi + 0x68]
mov qword [r14 + 0x68], rax
mov rax, qword [rdi + 0x70]
mov qword [r14 + 0x70], rax
mov eax, dword [rdi + 0x78]
mov dword [r14 + 0x78], eax
movzx eax, byte [rdi + 0x7c]
mov byte [r14 + 0x7c], al
lea rcx, [rbp + 0x480]
cmp qword [rbp + 0x498], 8
cmovae rcx, qword [rbp + 0x480]
mov r8, r14
cmp qword [r14 + 0x18], 8
jb 0x18001e784
mov r8, qword [r14]
mov rdx, qword [r14 + 0x10]
cmp rdx, qword [rbp + 0x490]
jne 0x18001e8a0
test rdx, rdx
je 0x18001e7b8
sub r8, rcx
nop dword [rax]
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18001e8a0
add rcx, 2
sub rdx, 1
jne 0x18001e7a0
lea rcx, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 8
cmovae rcx, qword [rbp + 0x4a0]
lea r8, [r14 + 0x20]
cmp qword [r14 + 0x38], 8
jb 0x18001e7de
mov r8, qword [r14 + 0x20]
mov rdx, qword [r14 + 0x30]
cmp rdx, qword [rbp + 0x4b0]
jne 0x18001e8a0
test rdx, rdx
je 0x18001e818
sub r8, rcx
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18001e8a0
add rcx, 2
sub rdx, 1
jne 0x18001e800
mov rax, qword [rbp + 0x4e0]
cmp qword [r14 + 0x60], rax
jne 0x18001e8a0
mov rax, qword [rbp + 0x4e8]
cmp qword [r14 + 0x68], rax
jne 0x18001e8a0
mov rax, qword [rbp + 0x4f0]
cmp qword [r14 + 0x70], rax
jne 0x18001e8a0
lea rcx, [rbp + 0x4c0]
cmp qword [rbp + 0x4d8], 8
cmovae rcx, qword [rbp + 0x4c0]
mov r8, rsi
cmp qword [rsi + 0x18], 8
jb 0x18001e863
mov r8, qword [rsi]
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rbp + 0x4d0]
jne 0x18001e8a0
test rdx, rdx
je 0x18001e894
sub r8, rcx
nop dword [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18001e8a0
add rcx, 2
sub rdx, 1
jne 0x18001e880
mov eax, dword [rbp + 0x4f8]
cmp dword [r14 + 0x78], eax
je 0x18001e8a7
mov r13b, 1
mov byte [r14 + 0x7c], r13b
mov rdx, qword [rbp + 0x4d8]
cmp rdx, 8
jb 0x18001e8ed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e8e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbd1
call fcn.180037644
xor ebx, ebx
mov qword [rbp + 0x4d0], rbx
mov qword [rbp + 0x4d8], 7
mov word [rbp + 0x4c0], bx
mov rdx, qword [rbp + 0x4b8]
cmp rdx, 8
jb 0x18001e94e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x4a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e949
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbd7
call fcn.180037644
mov qword [rbp + 0x4b0], rbx
mov qword [rbp + 0x4b8], 7
mov word [rbp + 0x4a0], bx
mov rdx, qword [rbp + 0x498]
cmp rdx, 8
jb 0x18001e9ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x480]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e9a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbdd
call fcn.180037644
mov qword [rbp + 0x490], rbx
mov qword [rbp + 0x498], 7
mov word [rbp + 0x480], bx
mov rcx, qword [r12]
inc r15
mov rax, qword [r12 + 8]
sub rax, rcx
sar rax, 7
cmp r15, rax
jb 0x18001e450
test r13b, r13b
je 0x18001fa4a
mov rax, qword [rbp + 0x358]
cmp qword [rbp + 0x350], rax
je 0x18001fa4a
xor eax, eax
mov qword [rbp + 0x378], rax
mov qword [rbp + 0x380], rax
mov qword [rbp + 0x388], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], rbx
mov r9, qword [rbp + 0x358]
mov r10, r9
mov r8, qword [rbp + 0x350]
sub r10, r8
sar r10, 7
mov rcx, qword [rbp + 0x388]
sub rcx, qword [rbp + 0x378]
movabs rdi, 0x20c49ba5e353f7cf
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r10, rdx
jbe 0x18001eaa1
movabs rax, 0x4189374bc6a7ef
cmp r10, rax
ja 0x18001fbb9
mov rdx, r10
lea rcx, [rbp + 0x378]
call fcn.180021300
mov r9, qword [rbp + 0x358]
mov r8, qword [rbp + 0x350]
mov r13, rbx
mov rax, r9
sub rax, r8
sar rax, 7
test rax, rax
je 0x18001ee11
mov r12, rbx
nop word [rax + rax]
lea rbx, [r8 + r12]
mov eax, dword [rbx + 0x78]
dec eax
cmp eax, 2
ja 0x18001edf5
xor eax, eax
mov dword [rsp + 0x60], eax
mov qword [rbp + 0x32c], rax
mov qword [rbp + 0x334], rax
mov qword [rbp + 0x33c], rax
mov dword [rbp + 0x344], eax
xor edx, edx
mov r8d, 0x280
lea rcx, [rsp + 0x64]
call fcn.1800395e0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x1e4]
call fcn.1800395e0
xor eax, eax
mov qword [rbp + 0x2e4], rax
mov qword [rbp + 0x2ec], rax
mov qword [rbp + 0x2f4], rax
mov qword [rbp + 0x2fc], rax
mov qword [rbp + 0x304], rax
mov qword [rbp + 0x30c], rax
mov qword [rbp + 0x314], rax
mov qword [rbp + 0x31c], rax
mov qword [rbp + 0x324], rax
mov rdx, qword [rbp + 0x380]
cmp qword [rbp + 0x388], rdx
je 0x18001ec1f
lea rax, [rsp + 0x60]
mov ecx, 7
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rdx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rcx, 1
jne 0x18001eb80
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
mov rax, qword [rax + 0x60]
mov qword [rdx + 0x60], rax
mov rdx, qword [rbp + 0x380]
add rdx, 0x3e8
mov qword [rbp + 0x380], rdx
jmp 0x18001ec37
lea r8, [rsp + 0x60]
lea rcx, [rbp + 0x378]
call fcn.180021960
mov rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x378]
sub rdx, rcx
mov rax, rdi
imul rdx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0x3e8
lea rdi, [rcx - 0x3e8]
add rdi, rax
mov dword [rdi], 0x23ab45db
xor edx, edx
mov r8d, 0x280
lea rcx, [rdi + 4]
call fcn.1800395e0
xor edx, edx
mov r8d, 0x100
lea rcx, [rdi + 0x284]
call fcn.1800395e0
lea r15, [rdi + 0x384]
xor eax, eax
mov qword [r15], rax
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], rax
mov qword [r15 + 0x20], rax
mov qword [r15 + 0x28], rax
mov qword [r15 + 0x30], rax
mov qword [r15 + 0x38], rax
mov qword [r15 + 0x40], rax
cmp qword [rbx + 0x10], 0x13f
ja 0x18001ecf3
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x18001ecd4
mov rcx, qword [rbx]
mov rdx, rdi
sub rdx, rcx
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx + 4], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x18001ece0
jmp 0x18001ed0f
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x18001ed00
mov rdx, qword [rbx]
mov r8d, 0x13e
lea rcx, [rdi + 4]
call fcn.180045670
cmp qword [rbx + 0x30], 0x7f
ja 0x18001ed46
lea rcx, [rbx + 0x20]
cmp qword [rcx + 0x18], 8
jb 0x18001ed24
mov rcx, qword [rcx]
mov rdx, rdi
sub rdx, rcx
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx + 0x284], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x18001ed30
jmp 0x18001ed66
lea rdx, [rbx + 0x20]
cmp qword [rdx + 0x18], 8
jb 0x18001ed54
mov rdx, qword [rdx]
mov r8d, 0x7e
lea rcx, [rdi + 0x284]
call fcn.180045670
cmp qword [rbx + 0x50], 0x23
ja 0x18001ed97
lea rcx, [rbx + 0x40]
cmp qword [rcx + 0x18], 8
jb 0x18001ed7b
mov rcx, qword [rcx]
mov rdx, rdi
sub rdx, rcx
movzx eax, word [rcx]
mov word [rdx + rcx + 0x384], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x18001ed81
jmp 0x18001edb3
lea rdx, [rbx + 0x40]
cmp qword [rdx + 0x18], 8
jb 0x18001eda5
mov rdx, qword [rdx]
mov r8d, 0x23
mov rcx, r15
call fcn.180045670
mov rax, qword [rbx + 0x60]
mov qword [rdi + 0x3cc], rax
mov rax, qword [rbx + 0x68]
mov qword [rdi + 0x3d4], rax
mov rax, qword [rbx + 0x70]
mov qword [rdi + 0x3dc], rax
mov eax, dword [rbx + 0x78]
mov dword [rdi + 0x3e4], eax
mov r9, qword [rbp + 0x358]
mov r8, qword [rbp + 0x350]
movabs rdi, 0x20c49ba5e353f7cf
inc r13
sub r12, 0xffffffffffffff80
mov rax, r9
sub rax, r8
sar rax, 7
cmp r13, rax
jb 0x18001eac0
xor ebx, ebx
mov rcx, qword [rbp + 0x380]
cmp qword [rbp + 0x378], rcx
jne 0x18001efb4
mov r8, qword [rbp + 0x378]
test r8, r8
je 0x18001ee95
mov rcx, qword [rbp + 0x388]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x18001ee7b
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbe3
mov rcx, r8
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], rbx
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001ef1a
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001eec8
nop dword [rax]
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001eeb0
mov rbx, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x360]
sub rdx, rbx
and rdx, 0xffffffffffffff80
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001eefb
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbe9
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
xor r14d, r14d
mov qword [rbp + 0x360], r14
jmp 0x18001ef1d
xor r14d, r14d
cmp byte [rsp + 0x40], 0
je 0x18001ef3d
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001ef36
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x370], 0
mov qword [rbp + 0x3b0], r14
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001ef5d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x368], r14
mov word [rbp + 0x370], 0
mov rdx, qword [rbp + 0x3d8]
cmp rdx, 8
jb 0x18001fb5d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001fb58
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fba7
jmp 0x18001fb58
xor eax, eax
mov qword [rbp + 0x390], rax
mov qword [rbp + 0x398], rax
mov qword [rbp + 0x3a0], rax
mov r8, rbx
mov qword [rbp + 0x390], rbx
mov qword [rbp + 0x398], rbx
mov r9, rbx
mov qword [rbp + 0x3a0], rbx
mov dword [rbp + 0x3e0], 0x2d2d4352
mov dword [rbp + 0x3e4], 0x35343332
mov dword [rbp + 0x3e8], 0x61534350
mov dword [rbp + 0x3ec], 0x2d302e32
mov dword [rbp + 0x3f0], 0x2d736843
mov dword [rbp + 0x3f4], 0x61435243
mov dword [rbp + 0x3f8], 0x38313031
mov dword [rbp + 0x3fc], 0x35313032
movdqa xmm2, xmmword [0x1800798d0]
mov eax, ebx
mov r14d, 1
movd xmm3, r14d
lea rcx, [rbp + 0x3e0]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmm0, xmmword [rcx]
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [rcx], xmm1
add eax, 4
lea rcx, [rcx + 0x10]
cmp eax, 8
jl 0x18001f052
mov rcx, qword [rbp + 0x380]
mov r10, qword [rbp + 0x378]
sub rcx, r10
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test r10, r10
je 0x18001f874
imul r8d, edx, 0x3e8
lea r9, [rbp + 0x390]
mov rdx, r10
lea rcx, [rbp + 0x3e0]
call fcn.1800257f0
test al, al
je 0x18001f866
mov rbx, qword [rbp + 0x390]
mov rsi, qword [rbp + 0x398]
cmp rbx, rsi
jne 0x18001f2bf
test rbx, rbx
je 0x18001f138
mov rdx, qword [rbp + 0x3a0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001f119
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbef
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
xor r14d, r14d
mov qword [rbp + 0x3a0], r14
jmp 0x18001f13b
xor r14d, r14d
mov r8, qword [rbp + 0x378]
test r8, r8
je 0x18001f1ab
mov rcx, qword [rbp + 0x388]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x18001f191
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbf5
mov rcx, r8
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], r14
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001f228
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001f1db
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001f1c3
mov rbx, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x360]
sub rdx, rbx
and rdx, 0xffffffffffffff80
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001f20e
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbfb
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r14
cmp byte [rsp + 0x40], 0
je 0x18001f248
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001f241
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x370], 0
mov qword [rbp + 0x3b0], r14
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001f268
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x368], r14
mov word [rbp + 0x370], 0
mov rdx, qword [rbp + 0x3d8]
cmp rdx, 8
jb 0x18001fb5d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001fb58
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbad
jmp 0x18001fb58
mov r15, qword [rsp + 0x48]
mov rcx, r15
cmp qword [r15 + 0x18], 8
jb 0x18001f2d1
mov rcx, qword [r15]
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r8d, r8d
mov edx, 0x40000000
call fcn.180012a90
mov rdi, rax
lea rcx, [rax + 1]
test rcx, 0xfffffffffffffffe
jne 0x18001f3fd
lea rdx, [0x180078678]
mov rcx, r15
call fcn.180007640
cmp rax, 0xffffffffffffffff
je 0x18001f3fd
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3f0], xmm0
movdqa xmm1, xmmword [0x1800798b0]
movdqu xmmword [rbp + 0x3f0], xmm1
xor r12d, r12d
mov word [rbp + 0x3e0], r12w
mov r9, rax
xor r8d, r8d
mov rdx, r15
lea rcx, [rbp + 0x3e0]
call fcn.1800079d0
mov dword [rsp + 0x44], r14d
lea rcx, [rbp + 0x3e0]
call fcn.180011aa0
cmp qword [r15 + 0x18], 8
jb 0x18001f371
mov r15, qword [r15]
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r8d, r8d
mov edx, 0x40000000
mov rcx, r15
call fcn.180012a90
mov rdi, rax
and r14d, 0xfffffffe
mov dword [rsp + 0x44], r14d
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x18001f3e3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001f3de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc01
call fcn.180037644
movdqa xmm0, xmmword [0x1800798b0]
movdqu xmmword [rbp + 0x3f0], xmm0
mov word [rbp + 0x3e0], r12w
jmp 0x18001f400
xor r12d, r12d
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x18001f768
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rbp + 0x3a8], r12d
mov r8d, esi
sub r8d, ebx
mov qword [rsp + 0x20], r12
lea r9, [rbp + 0x3a8]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
sub rsi, rbx
mov eax, dword [rbp + 0x3a8]
cmp rax, rsi
jne 0x18001f636
lea rax, [rbp + 0x350]
mov r9, qword [rsp + 0x50]
cmp r9, rax
je 0x18001f4b9
mov rcx, qword [r9]
mov rax, qword [rbp + 0x350]
mov qword [r9], rax
mov qword [rbp + 0x350], rcx
mov rcx, qword [r9 + 8]
mov rax, qword [rbp + 0x358]
mov qword [r9 + 8], rax
mov qword [rbp + 0x358], rcx
mov rcx, qword [r9 + 0x10]
mov rax, qword [rbp + 0x360]
mov qword [r9 + 0x10], rax
mov qword [rbp + 0x360], rcx
mov r8, r12
mov rcx, qword [r9]
mov rax, qword [r9 + 8]
sub rax, rcx
sar rax, 7
test rax, rax
je 0x18001f502
mov rdx, r12
nop dword [rax]
nop word [rax + rax]
mov byte [rcx + rdx + 0x7c], 0
inc r8
lea rdx, [rdx + 0x80]
mov rcx, qword [r9]
mov rax, qword [r9 + 8]
sub rax, rcx
sar rax, 7
cmp r8, rax
jb 0x18001f4e0
test rbx, rbx
je 0x18001f550
mov rdx, qword [rbp + 0x3a0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001f536
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc07
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], r12
mov r9, qword [rbp + 0x378]
test r9, r9
je 0x18001f59c
mov rcx, qword [rbp + 0x388]
sub rcx, r9
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
lea r8, [rax + rdx]
mov rdx, r9
call fcn.1800215c0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], r12
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001f5f4
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001f5cc
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001f5b4
mov rbx, qword [rbp + 0x350]
mov r8, qword [rbp + 0x360]
sub r8, rbx
sar r8, 7
mov rdx, rbx
call fcn.1800216d0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r12
lea rcx, [rbp + 0x3b0]
call fcn.180008c10
nop
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001f61a
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x368], r12
mov word [rbp + 0x370], 0
lea rcx, [rbp + 0x3c0]
call fcn.180002118
mov al, 1
jmp 0x18001fb77
test rbx, rbx
je 0x18001f684
mov rdx, qword [rbp + 0x3a0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001f66a
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc0d
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], r12
mov r9, qword [rbp + 0x378]
test r9, r9
je 0x18001f6d0
mov rcx, qword [rbp + 0x388]
sub rcx, r9
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
lea r8, [rax + rdx]
mov rdx, r9
call fcn.1800215c0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], r12
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001f728
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001f700
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001f6e8
mov rbx, qword [rbp + 0x350]
mov r8, qword [rbp + 0x360]
sub r8, rbx
sar r8, 7
mov rdx, rbx
call fcn.1800216d0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r12
lea rcx, [rbp + 0x3b0]
call fcn.180008c10
nop
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001f74e
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x368], r12
mov word [rbp + 0x370], 0
lea rcx, [rbp + 0x3c0]
call fcn.180002118
jmp 0x18001fb75
test rbx, rbx
je 0x18001f7b6
mov rdx, qword [rbp + 0x3a0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001f79c
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc13
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], r12
mov r8, qword [rbp + 0x378]
test r8, r8
je 0x18001f82d
mov rcx, qword [rbp + 0x388]
sub rcx, r8
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x18001f813
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc19
mov rcx, r8
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], r12
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001f728
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001f700
nop dword [rax]
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001f850
jmp 0x18001f6f9
mov r9, qword [rbp + 0x3a0]
mov r8, qword [rbp + 0x390]
test r8, r8
je 0x18001f8be
sub r9, r8
mov rax, r8
cmp r9, 0x1000
jb 0x18001f8a1
add r9, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc1f
mov rdx, r9
mov rcx, r8
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], rbx
mov r8, qword [rbp + 0x378]
test r8, r8
je 0x18001f92e
mov rcx, qword [rbp + 0x388]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x18001f914
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc25
mov rcx, r8
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], rbx
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001f9b0
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001f95e
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001f946
mov rbx, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x360]
sub rdx, rbx
and rdx, 0xffffffffffffff80
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001f991
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc2b
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
xor r14d, r14d
mov qword [rbp + 0x360], r14
jmp 0x18001f9b3
xor r14d, r14d
cmp byte [rsp + 0x40], 0
je 0x18001f9d3
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001f9cc
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x370], 0
mov qword [rbp + 0x3b0], r14
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001f9f3
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x368], r14
mov word [rbp + 0x370], 0
mov rdx, qword [rbp + 0x3d8]
cmp rdx, 8
jb 0x18001fb5d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001fb58
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fbb3
jmp 0x18001fb58
movzx esi, byte [rsp + 0x40]
mov rbx, qword [rbp + 0x350]
test rbx, rbx
je 0x18001fad1
mov rdi, qword [rbp + 0x358]
cmp rbx, rdi
je 0x18001fa7f
mov rcx, rbx
call fcn.180013bd0
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x18001fa67
mov rbx, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x360]
sub rdx, rbx
and rdx, 0xffffffffffffff80
mov rax, rbx
cmp rdx, 0x1000
jb 0x18001fab2
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fc31
mov rcx, rbx
call fcn.180037644
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x350], xmm0
xor r14d, r14d
mov qword [rbp + 0x360], r14
jmp 0x18001fad4
xor r14d, r14d
test sil, sil
je 0x18001faf2
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001faeb
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x370], 0
mov qword [rbp + 0x3b0], r14
mov rcx, qword [rbp + 0x368]
test rcx, rcx
je 0x18001fb12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x368], r14
mov word [rbp + 0x370], 0
mov rdx, qword [rbp + 0x3d8]
cmp rdx, 8
jb 0x18001fb5d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001fb58
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001fba1
call fcn.180037644
movdqa xmm0, xmmword [0x1800798b0]
mov word [rbp + 0x3c0], r14w
movdqu xmmword [rbp + 0x3d0], xmm0
xor al, al
mov rcx, qword [rbp + 0x500]
xor rcx, rsp
call fcn.180037620
mov rbx, qword [rsp + 0x650]
add rsp, 0x610
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180042974
int3
call fcn.180042974
int3
call fcn.180042974
int3
call fcn.180042974
nop
call fcn.18000e3d0
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
int3
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
int3
call fcn.180042974
int3
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
nop
call fcn.180042974
int3
call fcn.180042974
int3