Function at 0x140022fb0
Capabilities:
Encrypt data using salsa20 or chacha
Enumerate pe sections

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xb58
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xac0], xmm12
movaps xmmword [rbp + 0xab0], xmm11
movaps xmmword [rbp + 0xaa0], xmm10
movaps xmmword [rbp + 0xa90], xmm9
movaps xmmword [rbp + 0xa80], xmm8
movaps xmmword [rbp + 0xa70], xmm7
movaps xmmword [rbp + 0xa60], xmm6
and rsp, 0xffffffffffffffe0
mov r13, r8
mov r14, rdx
mov rdi, rcx
mov rax, qword [rbp + 0xb48]
movabs rbx, 0x8000000000000000
mov rcx, r9
shr rcx, 8
mov byte [rsp + 0x7e0], r9b
mov rdx, r9
shr rdx, 0x38
mov byte [rsp + 0x7e7], dl
shr r9, 0x28
mov word [rsp + 0x7e5], r9w
mov dword [rsp + 0x7e1], ecx
mov qword [rsp + 0x7e8], 0x20
mov qword [rsp + 0x7f0], rax
mov qword [rsp + 0x7f8], 0x20
mov qword [rsp + 0x800], 1
mov qword [rsp + 0x808], 0
mov qword [rsp + 0x810], 1
mov qword [rsp + 0x818], 0
movaps xmm0, xmmword [0x140059290]
movups xmmword [rsp + 0x820], xmm0
mov word [rsp + 0x830], 0x213
movabs rax, 0x4c0000004c00
mov qword [rsp + 0x838], rax
mov dword [rsp + 0x840], 0x1300
lea rcx, [rsp + 0x5a0]
lea rdx, [rsp + 0x7e0]
call fcn.140012a30
mov r9, qword [rsp + 0x5a0]
mov rax, r9
neg rax
movzx eax, byte [rsp + 0x5a8]
jno 0x14002310e
mov byte [rdi + 8], al
mov qword [rdi], rbx
jmp 0x14002379a
movzx eax, al
movzx ecx, byte [rsp + 0x5af]
shl ecx, 0x10
movzx edx, word [rsp + 0x5ad]
or edx, ecx
mov r8d, dword [rsp + 0x5a9]
shl rdx, 0x28
shl r8, 8
or r8, rdx
or r8, rax
cmp qword [rsp + 0x5b0], 0x20
jne 0x14002377f
mov qword [rsp + 0x2d8], r14
mov qword [rsp + 0x100], rdi
mov qword [rsp + 0x108], r9
movzx eax, byte [r8]
movzx ecx, byte [r8 + 1]
movzx r12d, byte [r8 + 2]
movzx edx, byte [r8 + 3]
mov byte [rsp + 0x97], dl
mov qword [rsp + 0xf0], r13
movzx edx, byte [r8 + 4]
mov byte [rsp + 0x80], dl
movzx edx, byte [r8 + 5]
mov byte [rsp + 0xe0], dl
movzx edx, byte [r8 + 6]
mov byte [rsp + 0xd8], dl
movzx ebx, byte [r8 + 7]
movzx r9d, byte [r8 + 8]
movzx r10d, byte [r8 + 9]
movzx r11d, byte [r8 + 0xa]
movzx edi, byte [r8 + 0xb]
movzx r14d, byte [r8 + 0xc]
movzx esi, byte [r8 + 0xd]
mov byte [rsp + 0x96], sil
movzx edx, byte [r8 + 0xe]
mov byte [rsp + 0xac], dl
movzx edx, byte [r8 + 0xf]
mov byte [rsp + 0xa8], dl
movzx esi, byte [r8 + 0x10]
movzx r15d, byte [r8 + 0x11]
mov byte [rsp + 0x95], r15b
movzx r15d, byte [r8 + 0x12]
movzx r13d, byte [r8 + 0x13]
mov byte [rsp + 0x94], r13b
movzx r13d, byte [r8 + 0x14]
movzx edx, byte [r8 + 0x15]
mov byte [rsp + 0x93], dl
movzx edx, byte [r8 + 0x16]
mov byte [rsp + 0xa4], dl
movzx edx, byte [r8 + 0x17]
mov byte [rsp + 0xa0], dl
movzx edx, byte [r8 + 0x18]
mov byte [rsp + 0x9c], dl
movzx edx, byte [r8 + 0x19]
mov byte [rsp + 0x98], dl
movzx edx, byte [r8 + 0x1a]
mov byte [rsp + 0x5f], dl
movzx edx, byte [r8 + 0x1b]
mov byte [rsp + 0x5e], dl
movzx edx, byte [r8 + 0x1c]
mov byte [rsp + 0x5d], dl
movzx edx, byte [r8 + 0x1d]
mov byte [rsp + 0x5c], dl
movzx edx, byte [r8 + 0x1e]
mov qword [rsp + 0xf8], r8
movzx r8d, byte [r8 + 0x1f]
mov byte [rsp + 0x85], al
mov byte [rsp + 0x7f], al
mov byte [rsp + 0x92], cl
mov byte [rsp + 0x7e], cl
mov byte [rsp + 0x8b], r12b
mov byte [rsp + 0x7d], r12b
movzx r12d, byte [rsp + 0x97]
mov byte [rsp + 0x7c], r12b
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x7b], al
movzx eax, byte [rsp + 0xe0]
mov byte [rsp + 0x7a], al
movzx eax, byte [rsp + 0xd8]
mov byte [rsp + 0x79], al
mov byte [rsp + 0x91], bl
mov byte [rsp + 0x78], bl
mov byte [rsp + 0x90], r9b
mov byte [rsp + 0x77], r9b
mov byte [rsp + 0x8f], r10b
mov byte [rsp + 0x76], r10b
mov byte [rsp + 0x8e], r11b
mov byte [rsp + 0x75], r11b
mov byte [rsp + 0x8d], dil
mov byte [rsp + 0x74], dil
mov byte [rsp + 0x8c], r14b
mov byte [rsp + 0x73], r14b
movzx r14d, byte [rsp + 0x96]
mov rbx, qword [rsp + 0xf0]
mov byte [rsp + 0x72], r14b
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0x70], al
mov byte [rsp + 0x8a], sil
mov byte [rsp + 0x6f], sil
movzx esi, byte [rsp + 0x95]
mov byte [rsp + 0x6e], sil
mov byte [rsp + 0x89], r15b
mov byte [rsp + 0x6d], r15b
movzx r15d, byte [rsp + 0x94]
mov byte [rsp + 0x6c], r15b
mov byte [rsp + 0x88], r13b
mov byte [rsp + 0x6b], r13b
movzx r13d, byte [rsp + 0x93]
mov byte [rsp + 0x6a], r13b
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0x69], al
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x68], al
movzx eax, byte [rsp + 0x9c]
mov byte [rsp + 0x67], al
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x66], al
movzx eax, byte [rsp + 0x5f]
mov byte [rsp + 0x65], al
movzx eax, byte [rsp + 0x5e]
mov byte [rsp + 0x64], al
movzx eax, byte [rsp + 0x5d]
mov byte [rsp + 0x63], al
movzx eax, byte [rsp + 0x5c]
mov byte [rsp + 0x62], al
mov byte [rsp + 0x87], dl
mov byte [rsp + 0x61], dl
mov byte [rsp + 0x86], r8b
mov byte [rsp + 0x60], r8b
movzx eax, byte [0x141d069e0]
xor ecx, ecx
mov rdx, rbx
call fcn.14003cf90
test rax, rax
je 0x140024aa9
mov rdi, qword [rbp + 0xb40]
mov qword [rsp + 0xe8], rax
mov rcx, rax
mov rdx, qword [rsp + 0x2d8]
mov r8, rbx
call fcn.140049170
mov eax, dword [rdi + 8]
mov dword [rsp + 0x5a8], eax
mov rax, qword [rdi]
mov qword [rsp + 0x5a0], rax
movzx eax, byte [section..data]
cmp al, 0xff
je 0x1400237e4
xorps xmm8, xmm8
movaps xmmword [rsp + 0x180], xmm8
movaps xmmword [rsp + 0x170], xmm8
movaps xmmword [rsp + 0x160], xmm8
movaps xmmword [rsp + 0x150], xmm8
movups xmm0, xmmword [0x141cf8ce0]
movaps xmmword [rsp + 0x110], xmm0
movzx eax, byte [rsp + 0x85]
mov byte [rsp + 0x120], al
movzx eax, byte [rsp + 0x92]
mov byte [rsp + 0x121], al
movzx eax, byte [rsp + 0x8b]
mov byte [rsp + 0x122], al
mov byte [rsp + 0x123], r12b
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x124], al
movzx eax, byte [rsp + 0xe0]
mov byte [rsp + 0x125], al
movzx eax, byte [rsp + 0xd8]
mov byte [rsp + 0x126], al
movzx eax, byte [rsp + 0x91]
mov byte [rsp + 0x127], al
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x128], al
movzx eax, byte [rsp + 0x8f]
mov byte [rsp + 0x129], al
movzx eax, byte [rsp + 0x8e]
mov byte [rsp + 0x12a], al
movzx eax, byte [rsp + 0x8d]
mov byte [rsp + 0x12b], al
movzx eax, byte [rsp + 0x8c]
mov byte [rsp + 0x12c], al
mov byte [rsp + 0x12d], r14b
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x12e], al
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0x12f], al
movzx eax, byte [rsp + 0x8a]
mov byte [rsp + 0x130], al
mov byte [rsp + 0x131], sil
movzx eax, byte [rsp + 0x89]
mov byte [rsp + 0x132], al
mov byte [rsp + 0x133], r15b
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x134], al
mov byte [rsp + 0x135], r13b
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0x136], al
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x137], al
movzx eax, byte [rsp + 0x9c]
mov byte [rsp + 0x138], al
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x139], al
movzx eax, byte [rsp + 0x5f]
mov byte [rsp + 0x13a], al
movzx eax, byte [rsp + 0x5e]
mov byte [rsp + 0x13b], al
movzx eax, byte [rsp + 0x5d]
mov byte [rsp + 0x13c], al
movzx eax, byte [rsp + 0x5c]
mov byte [rsp + 0x13d], al
movzx eax, byte [rsp + 0x87]
mov byte [rsp + 0x13e], al
movzx eax, byte [rsp + 0x86]
mov byte [rsp + 0x13f], al
mov dword [rsp + 0x140], 0
mov eax, dword [rsp + 0x5a8]
mov dword [rsp + 0x14c], eax
mov rax, qword [rsp + 0x5a0]
mov qword [rsp + 0x144], rax
lea rax, [rbx - 0x10]
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0x190], 0
movaps xmmword [rsp + 0xc0], xmm8
movaps xmmword [rsp + 0xb0], xmm8
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0xb0]
mov r8d, 0x20
call fcn.140021a00
movzx eax, byte [0x141d06001]
cmp al, 1
je 0x1400237fb
movzx eax, al
cmp eax, 0xff
je 0x1400237ee
xorps xmm0, xmm0
movaps xmmword [rsp + 0x220], xmm0
mov dword [rsp + 0x230], 0
mov ebx, 0x3ffffff
and ebx, dword [rsp + 0xb0]
mov r14d, dword [rsp + 0xb3]
mov r12d, dword [rsp + 0xb6]
shr r14d, 2
and r14d, 0x3ffff03
shr r12d, 4
and r12d, 0x3ffc0ff
mov edi, dword [rsp + 0xb9]
shr edi, 6
and edi, 0x3f03fff
mov r15d, dword [rsp + 0xbc]
shr r15d, 8
and r15d, 0xfffff
mov eax, dword [rsp + 0xc0]
movsd xmm8, qword [rsp + 0xc4]
mov ecx, dword [rsp + 0xcc]
mov dword [rsp + 0x80], ecx
mov qword [rsp + 0xd8], rax
mov r13d, eax
shr r13d, 8
jmp 0x140023f5d
mov byte [rdi + 8], 0x14
mov qword [rdi], rbx
test r9, r9
je 0x14002379a
mov rcx, qword [0x141d069c8]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
movaps xmm6, xmmword [rbp + 0xa60]
movaps xmm7, xmmword [rbp + 0xa70]
movaps xmm8, xmmword [rbp + 0xa80]
movaps xmm9, xmmword [rbp + 0xa90]
movaps xmm10, xmmword [rbp + 0xaa0]
movaps xmm11, xmmword [rbp + 0xab0]
movaps xmm12, xmmword [rbp + 0xac0]
lea rsp, [rbp + 0xad8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1400541b0
jmp 0x140023472
call fcn.1400548b0
test al, al
je 0x1400236e1
lea rcx, [rsp + 0x5a0]
lea rdx, [rsp + 0xb0]
call fcn.140026a60
movaps xmm6, xmmword [rsp + 0x5a0]
movaps xmm7, xmmword [rsp + 0x5b0]
movaps xmm0, xmmword [rsp + 0x5c0]
movaps xmm1, xmmword [rsp + 0x5d0]
movaps xmmword [rsp + 0x4e0], xmm0
movaps xmmword [rsp + 0x4f0], xmm1
movaps xmm0, xmmword [rsp + 0x5e0]
movaps xmmword [rsp + 0x500], xmm0
movaps xmm0, xmmword [rsp + 0x5f0]
movaps xmmword [rsp + 0x510], xmm0
lea rcx, [rsp + 0x5a0]
lea rdx, [rsp + 0x4e0]
mov r8, rdx
call fcn.140024b90
movaps xmm11, xmmword [rsp + 0x5a0]
movaps xmm12, xmmword [rsp + 0x5b0]
movaps xmm9, xmmword [rsp + 0x5c0]
movaps xmm10, xmmword [rsp + 0x5d0]
mov qword [rsp + 0x20], 0x3ffffff
lea r14, [rsp + 0x540]
mov r8d, 0x3ffffff
mov r9d, 0x3ffffff
mov rcx, r14
mov rdx, 0xffffffffffffffff
call fcn.1400251f0
movaps xmmword [rsp + 0x530], xmm12
movaps xmmword [rsp + 0x520], xmm11
lea rbx, [rsp + 0x220]
lea rdx, [rsp + 0x520]
mov rcx, rbx
mov r8, r14
call fcn.140025540
mov qword [rsp + 0x20], 0x1a
lea r14, [rsp + 0x580]
mov edx, 0x40
mov r8d, 0x1a
mov r9d, 0x1a
mov rcx, r14
call fcn.1400251f0
movaps xmmword [rsp + 0x570], xmm12
movaps xmmword [rsp + 0x560], xmm11
lea r12, [rsp + 0x3a0]
lea rdx, [rsp + 0x560]
mov rcx, r12
mov r8, r14
call fcn.140026ae0
lea r14, [rsp + 0x200]
mov rcx, r14
mov rdx, r12
call fcn.140025560
lea rcx, [rsp + 0x3c0]
mov rdx, rbx
mov r8, r14
call fcn.140025260
movaps xmm11, xmmword [rsp + 0x3c0]
movaps xmm12, xmmword [rsp + 0x3d0]
movaps xmmword [rsp + 0x290], xmm12
movaps xmmword [rsp + 0x280], xmm11
lea rbx, [rsp + 0x240]
lea rdx, [rsp + 0x280]
mov rcx, rbx
call fcn.140026b00
lea r14, [rsp + 0x2e0]
mov rcx, r14
mov rdx, rbx
call fcn.140025560
movaps xmmword [rsp + 0x370], xmm10
movaps xmmword [rsp + 0x360], xmm9
lea rcx, [rsp + 0x3c0]
lea rdx, [rsp + 0x360]
mov r8, r14
call fcn.140025260
movaps xmm9, xmmword [rsp + 0x3c0]
movaps xmm10, xmmword [rsp + 0x3d0]
mov qword [rsp + 0x20], 0xffffffffffffffff
lea r14, [rsp + 0x3c0]
mov edx, 0x3ffffff
mov rcx, r14
mov r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
call fcn.1400251f0
movaps xmmword [rsp + 0x1b0], xmm12
movaps xmmword [rsp + 0x1a0], xmm11
lea rbx, [rsp + 0x340]
lea rdx, [rsp + 0x1a0]
mov rcx, rbx
mov r8, r14
call fcn.140025540
mov qword [rsp + 0x20], 0x1a
lea r14, [rsp + 0x200]
mov edx, 0x40
mov r8d, 0x40
mov r9d, 0x40
mov rcx, r14
call fcn.1400251f0
movaps xmmword [rsp + 0x230], xmm10
movaps xmmword [rsp + 0x220], xmm9
lea rcx, [rsp + 0x3c0]
lea rdx, [rsp + 0x220]
mov r8, r14
call fcn.140026ae0
movaps xmm11, xmmword [rsp + 0x3c0]
movaps xmm12, xmmword [rsp + 0x3d0]
movaps xmmword [rsp + 0x290], xmm12
movaps xmmword [rsp + 0x280], xmm11
lea r14, [rsp + 0x360]
lea r8, [rsp + 0x280]
mov rcx, r14
mov rdx, rbx
call fcn.140025260
movaps xmmword [rsp + 0x250], xmm12
movaps xmmword [rsp + 0x240], xmm11
lea rbx, [rsp + 0x2e0]
lea rdx, [rsp + 0x240]
mov rcx, rbx
call fcn.140026b20
lea rcx, [rsp + 0x3c0]
mov rdx, r14
mov r8, rbx
call fcn.140025260
movaps xmm11, xmmword [rsp + 0x3c0]
movaps xmm12, xmmword [rsp + 0x3d0]
mov qword [rsp + 0x20], 0x3ffffff
mov qword [rsp + 0xd8], 0
lea rbx, [rsp + 0x3c0]
mov rcx, rbx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.1400251f0
movaps xmmword [rsp + 0x1b0], xmm10
movaps xmmword [rsp + 0x1a0], xmm9
lea r12, [rsp + 0x3a0]
lea rdx, [rsp + 0x1a0]
mov rcx, r12
mov r8, rbx
call fcn.140025540
mov qword [rsp + 0x20], 0x3ffffff
lea r14, [rsp + 0x560]
mov r8d, 0x3ffffff
mov r9d, 0x3ffffff
mov rcx, r14
mov rdx, 0xffffffffffffffff
call fcn.1400251f0
movaps xmmword [rsp + 0x550], xmm12
movaps xmmword [rsp + 0x540], xmm11
lea rbx, [rsp + 0x340]
lea rdx, [rsp + 0x540]
mov rcx, rbx
mov r8, r14
call fcn.140025540
mov qword [rsp + 0x20], 0x1a
lea r14, [rsp + 0x220]
mov edx, 0x40
mov r8d, 0x1a
mov r9d, 0x1a
mov rcx, r14
call fcn.1400251f0
movaps xmmword [rsp + 0x590], xmm12
movaps xmmword [rsp + 0x580], xmm11
lea r13, [rsp + 0x200]
lea rdx, [rsp + 0x580]
mov rcx, r13
mov r8, r14
call fcn.140026ae0
lea r14, [rsp + 0x280]
mov rcx, r14
mov rdx, r13
call fcn.140025560
lea rcx, [rsp + 0x3c0]
mov rdx, rbx
mov r8, r14
call fcn.140025260
movaps xmm9, xmmword [rsp + 0x3c0]
movaps xmm10, xmmword [rsp + 0x3d0]
movaps xmmword [rsp + 0x250], xmm10
movaps xmmword [rsp + 0x240], xmm9
lea rbx, [rsp + 0x360]
lea rdx, [rsp + 0x240]
mov rcx, rbx
call fcn.140026b00
lea r14, [rsp + 0x2e0]
mov rcx, r14
mov rdx, rbx
call fcn.140025560
lea r13, [rsp + 0x520]
mov rcx, r13
mov rdx, r12
mov r8, r14
call fcn.140025260
mov qword [rsp + 0x20], 0xffffffffffffffff
lea rbx, [rsp + 0x3c0]
mov edx, 0x3ffffff
mov rcx, rbx
mov r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
call fcn.1400251f0
movaps xmmword [rsp + 0x1b0], xmm10
movaps xmmword [rsp + 0x1a0], xmm9
lea r14, [rsp + 0xac0]
lea rdx, [rsp + 0x1a0]
mov rcx, r14
mov r8, rbx
call fcn.140025540
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 2
mov dword [rsp + 0x30], 4
mov dword [rsp + 0x28], 6
mov dword [rsp + 0x20], 0
lea r12, [rsp + 0x240]
mov rcx, r12
xor edx, edx
mov r8d, 6
mov r9d, 4
call fcn.140024b00
lea rbx, [rsp + 0x1a0]
mov rcx, rbx
mov rdx, r14
mov r8, r12
call fcn.140024b40
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 2
mov dword [rsp + 0x30], 4
mov dword [rsp + 0x28], 6
mov dword [rsp + 0x20], 0
lea r14, [rsp + 0x360]
mov rcx, r14
xor edx, edx
mov r8d, 6
mov r9d, 4
call fcn.140024b00
lea r12, [rsp + 0x3c0]
mov rcx, r12
mov rdx, r13
mov r8, r14
call fcn.140024b40
lea rcx, [rsp + 0x2e0]
mov rdx, rbx
mov r8, r12
call fcn.140026b40
movaps xmm9, xmmword [rsp + 0x2e0]
movaps xmm10, xmmword [rsp + 0x2f0]
movaps xmmword [rsp + 0x210], xmm10
movaps xmmword [rsp + 0x200], xmm9
lea rbx, [rsp + 0x280]
lea rdx, [rsp + 0x200]
mov rcx, rbx
call fcn.140024ae0
movaps xmmword [rsp + 0x350], xmm10
movaps xmmword [rsp + 0x340], xmm9
lea r14, [rsp + 0x240]
lea rdx, [rsp + 0x340]
mov rcx, r14
mov r8, rbx
call fcn.140024ac0
mov dword [rsp + 0x40], 1
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
lea rbx, [rsp + 0x2e0]
mov rcx, rbx
mov edx, 4
mov r8d, 3
mov r9d, 2
call fcn.140024b00
lea rcx, [rsp + 0x5a0]
mov rdx, r14
mov r8, rbx
call fcn.140024b40
movaps xmm11, xmmword [rsp + 0x5a0]
movaps xmm12, xmmword [rsp + 0x5b0]
movaps xmmword [rsp + 0x1b0], xmm10
movaps xmmword [rsp + 0x1a0], xmm9
movaps xmmword [rsp + 0x3d0], xmm12
movaps xmmword [rsp + 0x3c0], xmm11
lea rcx, [rsp + 0x360]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x3c0]
call fcn.140024b60
movaps xmmword [rsp + 0x5b0], xmm12
movaps xmmword [rsp + 0x5a0], xmm11
lea rcx, [rsp + 0x380]
lea rdx, [rsp + 0x5a0]
call fcn.140024b80
movaps xmmword [rsp + 0x1a0], xmm8
movaps xmmword [rsp + 0x1b0], xmm8
movaps xmmword [rsp + 0x1c0], xmm8
movaps xmmword [rsp + 0x1d0], xmm8
movups xmmword [rsp + 0x1d9], xmm8
mov eax, dword [rsp + 0x230]
mov dword [rsp + 0x3b0], eax
movaps xmm0, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x3a0], xmm0
lea rsi, [rsp + 0x3c0]
lea rdx, [rsp + 0x5a0]
mov r8d, 0x108
mov rcx, rsi
call fcn.140049170
movaps xmm0, xmmword [rsp + 0x4e0]
movaps xmm1, xmmword [rsp + 0x4f0]
movaps xmm2, xmmword [rsp + 0x500]
movaps xmm3, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x250], xmm1
movaps xmmword [rsp + 0x260], xmm2
movaps xmmword [rsp + 0x270], xmm3
movaps xmm0, xmmword [rsp + 0x360]
movaps xmm1, xmmword [rsp + 0x370]
movaps xmm2, xmmword [rsp + 0x380]
movaps xmm3, xmmword [rsp + 0x390]
movaps xmmword [rsp + 0x280], xmm0
movaps xmmword [rsp + 0x290], xmm1
movaps xmmword [rsp + 0x2a0], xmm2
movaps xmmword [rsp + 0x2b0], xmm3
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmm1, xmmword [rsp + 0x1b0]
movaps xmm2, xmmword [rsp + 0x1c0]
movaps xmm3, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x2e0], xmm0
movaps xmmword [rsp + 0x2f0], xmm1
movaps xmmword [rsp + 0x300], xmm2
movaps xmmword [rsp + 0x310], xmm3
movups xmm0, xmmword [rsp + 0x1d9]
movups xmmword [rsp + 0x319], xmm0
mov rax, qword [rsp + 0x34f]
mov qword [rsp + 0x20f], rax
movups xmm0, xmmword [rsp + 0x340]
movaps xmmword [rsp + 0x200], xmm0
mov byte [rsp + 0xb0], 0
mov byte [rsp + 0xb1], 0
mov byte [rsp + 0xb2], 0
mov byte [rsp + 0xb3], 0
mov byte [rsp + 0xb4], 0
mov byte [rsp + 0xb5], 0
mov byte [rsp + 0xb6], 0
mov byte [rsp + 0xb7], 0
mov byte [rsp + 0xb8], 0
mov byte [rsp + 0xb9], 0
mov byte [rsp + 0xba], 0
mov byte [rsp + 0xbb], 0
mov byte [rsp + 0xbc], 0
mov byte [rsp + 0xbd], 0
mov byte [rsp + 0xbe], 0
mov byte [rsp + 0xbf], 0
mov byte [rsp + 0xc0], 0
mov byte [rsp + 0xc1], 0
mov byte [rsp + 0xc2], 0
mov byte [rsp + 0xc3], 0
mov byte [rsp + 0xc4], 0
mov byte [rsp + 0xc5], 0
mov byte [rsp + 0xc6], 0
mov byte [rsp + 0xc7], 0
mov byte [rsp + 0xc8], 0
mov byte [rsp + 0xc9], 0
mov byte [rsp + 0xca], 0
mov byte [rsp + 0xcb], 0
mov byte [rsp + 0xcc], 0
mov byte [rsp + 0xcd], 0
mov byte [rsp + 0xce], 0
mov byte [rsp + 0xcf], 0
mov dword [rsp + 0x140], 1
mov byte [rsp + 0x190], 0
lea rcx, [rsp + 0xa20]
lea rdx, [rsp + 0x110]
mov r8d, 0x84
call fcn.140049170
mov rax, qword [rsp + 0xd8]
mov byte [rsp + 0x7e0], al
mov eax, r13d
shr eax, 0x10
mov byte [rsp + 0x7e3], al
mov word [rsp + 0x7e1], r13w
movlps qword [rsp + 0x7e4], xmm8
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x7ec], eax
mov dword [rsp + 0x7f0], ebx
mov dword [rsp + 0x7f4], r14d
mov dword [rsp + 0x7f8], r12d
mov dword [rsp + 0x7fc], edi
mov dword [rsp + 0x800], r15d
movaps xmm0, xmmword [rsp + 0x3a0]
movups xmmword [rsp + 0x804], xmm0
mov eax, dword [rsp + 0x3b0]
mov dword [rsp + 0x814], eax
lea rcx, [rsp + 0x818]
mov r8d, 0x108
mov rdx, rsi
call fcn.140049170
movaps xmmword [rsp + 0x930], xmm7
movaps xmmword [rsp + 0x920], xmm6
movaps xmm0, xmmword [rsp + 0x240]
movaps xmm1, xmmword [rsp + 0x250]
movaps xmm2, xmmword [rsp + 0x260]
movaps xmm3, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x940], xmm0
movaps xmmword [rsp + 0x950], xmm1
movaps xmmword [rsp + 0x960], xmm2
movaps xmmword [rsp + 0x970], xmm3
movaps xmm0, xmmword [rsp + 0x280]
movaps xmm1, xmmword [rsp + 0x290]
movaps xmm2, xmmword [rsp + 0x2a0]
movaps xmm3, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x980], xmm0
movaps xmmword [rsp + 0x990], xmm1
movaps xmmword [rsp + 0x9a0], xmm2
movaps xmmword [rsp + 0x9b0], xmm3
movups xmm0, xmmword [rsp + 0x319]
movups xmmword [rsp + 0x9f9], xmm0
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movaps xmm2, xmmword [rsp + 0x300]
movaps xmm3, xmmword [rsp + 0x310]
movaps xmmword [rsp + 0x9f0], xmm3
movaps xmmword [rsp + 0x9e0], xmm2
movaps xmmword [rsp + 0x9d0], xmm1
movaps xmmword [rsp + 0x9c0], xmm0
mov rax, qword [rsp + 0x20f]
mov qword [rsp + 0xa18], rax
movaps xmm0, xmmword [rsp + 0x200]
movups xmmword [rsp + 0xa09], xmm0
movzx eax, byte [0x141d06001]
mov r15, qword [rsp + 0xe0]
mov rdi, r15
shr rdi, 4
mov r13, qword [rsp + 0xf0]
and r13d, 0xf
movzx eax, byte [0x141d06001]
cmp al, 1
jne 0x14002444b
mov r12, rdi
and r12, 0xfffffffffffffffc
shl r12, 4
mov r14, qword [rsp + 0xe8]
add r12, r14
and r15, 0xffffffffffffffc0
lea rbx, [rsp + 0x7e0]
jmp 0x1400243c5
mov rcx, rbx
mov rdx, r14
call fcn.140026780
add r14, 0x40
add r15, 0xffffffffffffffc0
je 0x140024409
cmp qword [rsp + 0xa00], 0
je 0x1400243b0
mov rcx, rbx
mov rdx, r14
call fcn.140026150
lea rdx, [r14 + 0x10]
mov rcx, rbx
call fcn.140026150
lea rdx, [r14 + 0x20]
mov rcx, rbx
call fcn.140026150
lea rdx, [r14 + 0x30]
mov rcx, rbx
call fcn.140026150
add r14, 0x40
add r15, 0xffffffffffffffc0
jne 0x1400243c5
and rdi, 3
mov r15, qword [rsp + 0xe0]
je 0x140024475
shl edi, 4
lea rbx, [rsp + 0x7e0]
nop word cs:[rax + rax]
lea r14, [r12 + 0x10]
mov rcx, rbx
mov rdx, r12
call fcn.140026150
mov r12, r14
add rdi, 0xfffffffffffffff0
jne 0x140024430
jmp 0x140024475
shl rdi, 4
lea rbx, [rsp + 0x7e0]
mov rdx, qword [rsp + 0xe8]
nop
lea r14, [rdx + 0x10]
mov rcx, rbx
call fcn.140026840
mov rdx, r14
add rdi, 0xfffffffffffffff0
jne 0x140024460
test r13, r13
je 0x1400244e1
mov rax, r15
and rax, 0xfffffffffffffff0
mov rbx, qword [rsp + 0xe8]
add rbx, rax
mov r8d, 0x10
sub r8, r13
lea rcx, [rsp + r13]
add rcx, 0x5a0
xor edx, edx
call fcn.140049820
lea rcx, [rsp + 0x5a0]
mov rdx, rbx
mov r8, r13
call fcn.140049170
movzx eax, byte [0x141d06001]
lea rcx, [rsp + 0x7e0]
lea rdx, [rsp + 0x5a0]
cmp al, 1
jne 0x1400244dc
call fcn.140026150
jmp 0x1400244e1
call fcn.140026840
mov qword [rsp + 0x5a0], 0
mov qword [rsp + 0x5a8], r15
movzx eax, byte [0x141d06001]
lea rcx, [rsp + 0x7e0]
lea rdx, [rsp + 0x5a0]
cmp al, 1
jne 0x140024517
call fcn.140026150
jmp 0x14002451c
call fcn.140026840
lea rcx, [rsp + 0x5a0]
lea rdx, [rsp + 0x7e0]
mov r8d, 0x240
call fcn.140049170
movzx eax, byte [0x141d06001]
cmp al, 1
jne 0x140024603
lea rcx, [rsp + 0x3c0]
lea rdx, [rsp + 0x5a0]
call fcn.140025570
movzx eax, byte [rsp + 0x3c0]
movzx r14d, byte [rsp + 0x3c1]
movzx ecx, byte [rsp + 0x3c2]
mov dword [rsp + 0x98], ecx
movzx esi, byte [rsp + 0x3c3]
movzx edi, byte [rsp + 0x3c4]
movzx ecx, byte [rsp + 0x3c5]
mov dword [rsp + 0x9c], ecx
movzx ecx, byte [rsp + 0x3c6]
mov dword [rsp + 0xa0], ecx
movzx ecx, byte [rsp + 0x3c7]
mov dword [rsp + 0xa4], ecx
movzx r12d, byte [rsp + 0x3c8]
movzx ecx, byte [rsp + 0x3c9]
mov dword [rsp + 0xa8], ecx
movzx ecx, byte [rsp + 0x3ca]
mov dword [rsp + 0xac], ecx
movzx ecx, byte [rsp + 0x3cb]
mov dword [rsp + 0x80], ecx
movzx ecx, byte [rsp + 0x3cc]
mov qword [rsp + 0xd8], rcx
jmp 0x1400247d9
mov r11d, dword [rsp + 0x5c8]
mov ecx, r11d
shr ecx, 0x1a
and r11d, 0x3ffffff
add ecx, dword [rsp + 0x5cc]
mov edx, ecx
shr edx, 0x1a
and ecx, 0x3ffffff
add edx, dword [rsp + 0x5d0]
mov eax, edx
shr eax, 0x1a
add eax, dword [rsp + 0x5d4]
and edx, 0x3ffffff
mov r9d, eax
shr r9d, 0x1a
mov r8d, eax
and r8d, 0x3ffffff
lea r10d, [r9 + r9*4]
add r10d, dword [rsp + 0x5c4]
mov r9d, r10d
shr r9d, 0x1a
add r9d, r11d
and r10d, 0x3ffffff
lea ebx, [r10 + 5]
mov r11d, ebx
shr r11d, 0x1a
add r11d, r9d
mov edi, r11d
shr edi, 0x1a
add edi, ecx
mov r15d, edi
shr r15d, 0x1a
add r15d, edx
mov r12d, r15d
shr r12d, 0x1a
lea r14d, [r12 + r8]
add r14d, 0xfc000000
add r12d, r8d
mov r8d, r14d
sar r8d, 0x1f
shr r14d, 0x1f
dec r14d
mov r13d, r14d
and r13d, 0x3ffffff
and ebx, r13d
and r11d, r13d
and edi, r13d
and r13d, r15d
and r14d, r12d
and r10d, r8d
or r10d, ebx
and r9d, r8d
or r9d, r11d
and ecx, r8d
or ecx, edi
and edx, r8d
or edx, r13d
and r8d, eax
or r8d, r14d
mov eax, r9d
shl eax, 0x1a
or eax, r10d
shr r9d, 6
mov r10d, ecx
shl r10d, 0x14
or r10d, r9d
shr ecx, 0xc
mov r9d, edx
shl r9d, 0xe
or r9d, ecx
shr edx, 0x12
shl r8d, 8
or r8d, edx
add eax, dword [rsp + 0x5a0]
mov edi, dword [rsp + 0x5a4]
adc rdi, r10
mov ecx, dword [rsp + 0x5a8]
add rcx, r9
mov r12, rdi
shr r12, 0x20
add r12, rcx
mov ecx, dword [rsp + 0x5ac]
add rcx, r8
mov rdx, r12
shr rdx, 0x20
add rdx, rcx
mov dword [rsp + 0x3c0], eax
mov dword [rsp + 0x3c4], edi
mov dword [rsp + 0x3c8], r12d
mov qword [rsp + 0xd8], rdx
mov dword [rsp + 0x3cc], edx
mov r14d, eax
shr r14d, 8
mov ecx, eax
shr ecx, 0x10
mov dword [rsp + 0x98], ecx
mov esi, eax
shr esi, 0x18
mov ecx, edi
shr ecx, 8
mov dword [rsp + 0x9c], ecx
mov ecx, edi
shr ecx, 0x10
mov dword [rsp + 0xa0], ecx
mov ecx, edi
shr ecx, 0x18
mov dword [rsp + 0xa4], ecx
mov ecx, r12d
shr ecx, 8
mov dword [rsp + 0xa8], ecx
mov ecx, r12d
shr ecx, 0x10
mov dword [rsp + 0xac], ecx
mov ecx, r12d
shr ecx, 0x18
mov dword [rsp + 0x80], ecx
mov r13, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xe0]
cmp al, byte [r13 + r15]
sete cl
call fcn.140024ab0
mov ebx, eax
cmp r14b, byte [r13 + r15 + 1]
sete cl
call fcn.140024ab0
and bl, al
mov eax, dword [rsp + 0x98]
cmp al, byte [r13 + r15 + 2]
sete cl
call fcn.140024ab0
mov r14d, eax
cmp sil, byte [r13 + r15 + 3]
sete cl
call fcn.140024ab0
and r14b, al
and r14b, bl
cmp dil, byte [r13 + r15 + 4]
sete cl
call fcn.140024ab0
mov ebx, eax
mov eax, dword [rsp + 0x9c]
cmp al, byte [r13 + r15 + 5]
sete cl
call fcn.140024ab0
and bl, al
and bl, r14b
mov eax, dword [rsp + 0xa0]
cmp al, byte [r13 + r15 + 6]
sete cl
call fcn.140024ab0
mov r14d, eax
mov eax, dword [rsp + 0xa4]
cmp al, byte [r13 + r15 + 7]
sete cl
call fcn.140024ab0
and r14b, al
cmp r12b, byte [r13 + r15 + 8]
sete cl
call fcn.140024ab0
and r14b, al
and r14b, bl
mov eax, dword [rsp + 0xa8]
cmp al, byte [r13 + r15 + 9]
sete cl
call fcn.140024ab0
mov r12d, eax
mov eax, dword [rsp + 0xac]
cmp al, byte [r13 + r15 + 0xa]
sete cl
call fcn.140024ab0
and r12b, al
and r12b, r14b
mov eax, dword [rsp + 0x80]
cmp al, byte [r13 + r15 + 0xb]
sete cl
call fcn.140024ab0
mov ebx, eax
mov rax, qword [rsp + 0xd8]
cmp al, byte [r13 + r15 + 0xc]
sete cl
call fcn.140024ab0
and bl, al
and bl, r12b
movzx eax, byte [rsp + 0x3cd]
cmp al, byte [r13 + r15 + 0xd]
sete cl
call fcn.140024ab0
mov r14d, eax
movzx eax, byte [rsp + 0x3ce]
cmp al, byte [r13 + r15 + 0xe]
sete cl
call fcn.140024ab0
and r14b, al
movzx eax, byte [rsp + 0x3cf]
cmp al, byte [r13 + r15 + 0xf]
sete cl
call fcn.140024ab0
and r14b, al
and r14b, bl
and r14b, 1
mov ecx, r14d
call fcn.140024ab0
test al, al
je 0x1400249aa
lea rcx, [rsp + 0xa20]
mov rdx, r13
mov r8, r15
call fcn.140021a00
lea rcx, [rsp + 0x7e0]
call fcn.140022150
movabs rbx, 0x8000000000000000
mov rax, qword [rsp + 0xf0]
cmp rax, rbx
mov rdi, qword [rsp + 0x100]
je 0x1400249e6
cmp rax, 0x10
cmovb r15, rax
mov qword [rdi + 8], r13
mov qword [rdi + 0x10], r15
mov qword [rdi], rax
jmp 0x1400249ed
lea rcx, [rsp + 0x7e0]
call fcn.140022150
cmp qword [rsp + 0xf0], 0
mov rdi, qword [rsp + 0x100]
movabs rbx, 0x8000000000000000
je 0x1400249e6
mov rcx, qword [0x141d069c8]
xor edx, edx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov byte [rdi + 8], 0x13
mov qword [rdi], rbx
mov byte [rsp + 0x7f], 0
mov byte [rsp + 0x7e], 0
mov byte [rsp + 0x7d], 0
mov byte [rsp + 0x7c], 0
mov byte [rsp + 0x7b], 0
mov byte [rsp + 0x7a], 0
mov byte [rsp + 0x79], 0
mov byte [rsp + 0x78], 0
mov byte [rsp + 0x77], 0
mov byte [rsp + 0x76], 0
mov byte [rsp + 0x75], 0
mov byte [rsp + 0x74], 0
mov byte [rsp + 0x73], 0
mov byte [rsp + 0x72], 0
mov byte [rsp + 0x71], 0
mov byte [rsp + 0x70], 0
mov byte [rsp + 0x6f], 0
mov byte [rsp + 0x6e], 0
mov byte [rsp + 0x6d], 0
mov byte [rsp + 0x6c], 0
mov byte [rsp + 0x6b], 0
mov byte [rsp + 0x6a], 0
mov byte [rsp + 0x69], 0
mov byte [rsp + 0x68], 0
mov byte [rsp + 0x67], 0
mov byte [rsp + 0x66], 0
mov byte [rsp + 0x65], 0
mov byte [rsp + 0x64], 0
mov byte [rsp + 0x63], 0
mov byte [rsp + 0x62], 0
mov byte [rsp + 0x61], 0
mov byte [rsp + 0x60], 0
cmp qword [rsp + 0x108], 0
mov r8, qword [rsp + 0xf8]
jne 0x14002378b
jmp 0x14002379a
ud2