Function at 0x140032961
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x3c8
movapd xmmword [rsp + 0x3b0], xmm7
movapd xmmword [rsp + 0x3a0], xmm6
mov r12, r8
mov rsi, rdx
mov qword [rsp + 0x1a8], rcx
mov rbx, rdx
shr rbx, 0x20
add bx, si
mov eax, 0xffff
cmovb ebx, eax
cmp bx, si
jbe 0x1400329f0
mov ebp, esi
shr ebp, 0x10
mov r14, rsi
shr r14, 0x30
add r14w, bp
cmovb r14d, eax
mov edi, esi
cmp r14w, bp
jbe 0x1400329e9
mov r8d, ebp
lea r15d, [r8 + 1]
mov rcx, r12
mov edx, edi
call fcn.14004827f
mov rcx, rax
call fcn.140048234
mov r8d, r15d
cmp r15w, r14w
jb 0x1400329ca
inc edi
cmp di, bx
jb 0x1400329c1
mov al, byte [0x1400a3530]
mov edx, 0x3c
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d68
mov rdi, rax
mov rax, rsi
shr rax, 0x30
movabs rcx, 0xffff000000000000
mov rdx, rsi
and rdx, rcx
add rdx, rcx
test rax, rax
cmove rdx, rax
movabs rcx, 0xffffffffffff
and rcx, rsi
or rcx, rdx
mov dword [rdi], 0x30002
mov dword [rdi + 0xc], 0x70003
mov dword [rdi + 0x18], 0xb0002
mov dword [rdi + 0x24], 0x50004
mov dword [rdi + 0x30], 0x10002
mov eax, 5
lea rdx, [rsp + 0x1d0]
mov qword [rdx], rax
mov qword [rdx + 8], rdi
mov qword [rdx + 0x10], rax
mov dword [rdx + 0x18], 0
mov word [rdx + 0x1c], 0x101
call fcn.140043dc3
mov rbx, rax
mov r14, rdx
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
test r14, r14
je 0x140035c83
cmp r14, 1
je 0x140035c8c
cmp r14, 2
jbe 0x140035c95
cmp r14, 3
je 0x140035cab
cmp r14, 4
jbe 0x140035cc1
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x198], rax
mov rsi, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x2e8], rax
mov r15, qword [rbx + 0x30]
mov al, byte [0x1400a3530]
mov edx, 0x18
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d59
mov rdi, rax
mov eax, 0x320000
mov dword [rdi], eax
mov dword [rdi + 0xc], eax
mov eax, 2
lea rdx, [rsp + 0x1d0]
mov qword [rdx], rax
mov qword [rdx + 8], rdi
mov qword [rdx + 0x10], rax
mov dword [rdx + 0x18], 0
mov word [rdx + 0x1c], 0x100
mov rcx, rsi
call fcn.140043dc3
mov rsi, rax
mov r13, rdx
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
test r13, r13
je 0x140035cd7
cmp r13, 1
je 0x140035ce0
mov qword [rsp + 0x320], r13
mov qword [rsp + 0x330], r15
mov qword [rsp + 0x338], r14
mov qword [rsp + 0x340], rbx
mov qword [rsp + 0x60], r12
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x328], rsi
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0x2e0], rax
mov rdx, qword [rsp + 0x1a8]
mov rcx, qword [rdx + 0xb8]
mov rax, qword [rdx + 0xc8]
mov qword [rsp + 0x350], rcx
add rax, rcx
mov rcx, qword [rdx + 0xd0]
mov qword [rsp + 0x348], rcx
add rax, rcx
movq xmm0, rax
movdqa xmm1, xmmword [0x14007c1f0]
punpckldq xmm0, xmm1
movapd xmm2, xmmword [0x14007c200]
subpd xmm0, xmm2
movapd xmm6, xmm0
unpckhpd xmm6, xmm0
addsd xmm6, xmm0
mov rax, qword [rdx + 0xd8]
cmp rax, 1
adc rax, 0
movq xmm0, rax
punpckldq xmm0, xmm1
subpd xmm0, xmm2
movapd xmm1, xmm0
unpckhpd xmm1, xmm0
addsd xmm1, xmm0
divsd xmm6, xmm1
mov rcx, qword [rdx + 0x48]
mov edx, dword [rdx + 0x50]
call fcn.1400623a0
movabs rcx, 0x8000000000000000
lea r12, [rsp + 0x1d0]
mov qword [r12], rcx
mov cl, 0x13
mov byte [r12 + 0x18], cl
mov byte [r12 + 0x1c], cl
xor edi, edi
mov dword [r12 + 0x20], edi
mov byte [r12 + 0x24], cl
mov byte [r12 + 0x28], cl
mov dword [r12 + 0x2c], edi
mov word [r12 + 0x30], 0
mov byte [r12 + 0x32], 0xf
lea rcx, [0x14007a9c5]
lea r13, [rsp + 0xe0]
mov qword [r13], rcx
mov rcx, qword [r13]
imul rdx, qword [0x1400a2838], 0xffffffffe6af3b81
add rdx, 0x3a656dc6
mov r8d, edx
shr r8d, 0xa
xor r8, rdx
rol r8, 2
mov rsi, rax
mov r15d, 0xffff
and r8, r15
movabs rbx, 0xf49f22157f25f461
xor rbx, qword [rcx + r8]
movzx ebp, word [rcx + r8 + 8]
xor ebp, 0xc51b
mov ecx, 0xa
call fcn.140028b75
mov qword [rdx], rbx
mov word [rdx + 8], bp
mov qword [r13], rax
mov qword [r13 + 8], rdx
mov qword [r13 + 0x10], 0xa
mov dword [r13 + 0x20], edi
movabs rbx, 0x100000010
mov qword [r13 + 0x18], rbx
lea r14, [rsp + 0x140]
mov rcx, r14
mov rdx, r13
call fcn.1400485e7
mov rcx, r12
call fcn.1400328f4
mov rax, qword [r14 + 0x10]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [r14]
movaps xmmword [r12], xmm0
mov rcx, qword [r12]
movupd xmm0, xmmword [r12 + 0x18]
movapd xmmword [r14 + 0x10], xmm0
mov rax, qword [r12 + 8]
mov qword [r14], rax
mov rax, qword [r12 + 0x10]
mov qword [r14 + 8], rax
mov al, byte [r12 + 0x31]
mov byte [rsp + 0x68], al
mov dl, byte [r12 + 0x32]
mov eax, dword [r12 + 0x33]
mov dword [rsp + 0x2f0], eax
mov al, byte [r12 + 0x37]
mov byte [rsp + 0x2f4], al
mov dword [r14 + 0x18], edi
movabs rax, 0x100000009
mov qword [r14 + 0x10], rax
mov rax, qword [r14]
mov r9, qword [r14 + 8]
mov r8, qword [r14 + 0x10]
mov qword [r12 + 0x10], r8
mov r8d, dword [r14 + 0x18]
mov dword [r12 + 0x18], r8d
mov r8d, dword [r14 + 0x1c]
mov dword [r12 + 0x1c], r8d
mov qword [r12], rax
mov qword [r12 + 8], r9
mov dword [r12 + 0x24], edi
mov qword [r12 + 0x1c], rbx
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0xa0], rax
mov rax, qword [r12]
mov r9, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
mov qword [rsp + 0x90], r8
mov r8d, dword [r12 + 0x18]
mov dword [rsp + 0x98], r8d
mov r8d, dword [r12 + 0x1c]
mov dword [rsp + 0x9c], r8d
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r9
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0xd8], dl
mov r8, qword [rsp + 0x70]
call fcn.140048647
mov r8, rax
shr r8, 0x20
movabs rcx, 0xfffe00000000
add rcx, rax
movabs rdx, 0xffff00000000
and rcx, rdx
cmp r8w, 3
cmovae rdi, rcx
xorpd xmm0, xmm0
ucomisd xmm6, xmm0
jb 0x140035d77
movsd xmm0, qword [0x14007c210]
ucomisd xmm0, xmm6
jb 0x140035d77
lea rcx, [rax + 1]
movabs r8, 0xffff0000ffff0000
mov qword [rsp + 0x58], rax
mov rdx, rax
and rdx, r8
mov qword [rsp + 0x38], rcx
and r15, rcx
mov qword [rsp + 0x130], rdx
or r15, rdx
or r15, rdi
lea rbp, [rsp + 0x40]
mov rcx, rbp
mov rdx, rsi
call fcn.140035df0
lea rax, [0x14007dca6]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
mov ecx, 0x2979e507
sub rcx, qword [0x1400a2840]
mov edx, ecx
shr edx, 0x15
xor rdx, rcx
rol rdx, 0xe
mov ecx, 0xffff
and rdx, rcx
movzx r8d, byte [rax + rdx + 2]
movzx eax, word [rax + rdx]
xor eax, 0xc41d
xor r8b, 0x65
lea rdx, [rsp + 0x368]
mov byte [rdx + 2], r8b
mov word [rdx], ax
lea r11, [rsp + 0x2c8]
mov qword [r11], rdx
mov eax, 3
mov qword [r11 + 8], rax
movsd xmm7, qword [0x14007c218]
mulsd xmm7, xmm6
lea r8, [rsp + 0x300]
movsd qword [r8], xmm7
lea rdx, [0x1400784a6]
mov qword [rsp + 0x1d0], rdx
mov rdx, qword [rsp + 0x1d0]
mov r9d, 0x30ceadcc
xor r9, qword [0x1400a2848]
add r9, 0xffffffff8a3c1ab7
mov r10d, r9d
shr r10d, 0x14
xor r10, r9
rol r10, 5
and r10, rcx
mov cl, byte [rdx + r10]
lea r14, [rsp + 0x358]
lea rbx, [rsp + 0x180]
mov qword [rbx], r14
mov edx, 1
mov qword [rbx + 8], rdx
mov qword [rsp + 0xe0], rbp
lea r9, [0x14001a9c0]
mov qword [rsp + 0xe8], r9
mov qword [rsp + 0xf0], r11
lea r11, [0x14001f460]
mov qword [rsp + 0xf8], r11
mov qword [rsp + 0x100], r8
mov r9d, 2
mov qword [rsp + 0x1d0], r9
mov qword [rsp + 0x1d8], rdx
mov qword [rsp + 0x1e0], r9
mov qword [rsp + 0x1e8], r9
xor esi, esi
mov qword [rsp + 0x1f0], rsi
mov r10d, 0x20
mov qword [rsp + 0x1f8], r10
mov r8b, 3
mov byte [rsp + 0x200], r8b
mov qword [rsp + 0x208], r9
mov qword [rsp + 0x210], rdx
mov qword [rsp + 0x218], r9
mov qword [rsp + 0x220], r9
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x230], r10
mov byte [rsp + 0x238], r8b
mov qword [rsp + 0x240], rsi
mov qword [rsp + 0x248], rdx
mov qword [rsp + 0x250], r9
mov qword [rsp + 0x258], r9
mov qword [rsp + 0x260], r9
mov qword [rsp + 0x268], r10
mov byte [rsp + 0x270], r8b
mov qword [rsp + 0x278], r9
mov qword [rsp + 0x280], rdx
mov qword [rsp + 0x288], r9
mov qword [rsp + 0x290], r9
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], r10
lea rax, [0x140085780]
lea rdx, [rsp + 0x140]
mov qword [rdx], rax
mov eax, 4
mov qword [rdx + 8], rax
mov qword [rdx + 0x20], r12
mov qword [rdx + 0x28], rax
mov qword [rdx + 0x10], r13
xor cl, 0xfc
mov byte [r14], cl
mov byte [rsp + 0x2a8], r8b
mov qword [rdx + 0x18], rax
lea rax, [0x1400267b0]
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], r11
lea rcx, [rsp + 0xb8]
call fcn.14001ad30
cmp qword [rbp], rsi
je 0x140033154
mov r8, qword [rsp + 0x48]
mov rcx, qword [0x1400a34b0]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r9, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
lea r12, [rsp + 0x238]
movzx ecx, word [r12 - 0x68]
mov word [rsp + 0x180], cx
mov cl, byte [r12 - 0x66]
mov byte [rsp + 0x182], cl
lea rcx, [rsp + 0xe0]
movzx edx, word [rcx]
mov word [rsp + 0x2c8], dx
mov dl, byte [rcx + 2]
mov byte [rsp + 0x2ca], dl
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmmword [r12 - 0x60], xmm0
movups xmmword [r12 - 0x50], xmm1
movups xmmword [r12 - 0x40], xmm2
mov edx, dword [rsp + 0x140]
mov r8d, dword [rsp + 0x143]
mov dword [rsp + 0x43], r8d
mov dword [rsp + 0x40], edx
movabs r8, 0x8000000000000001
mov qword [r12 - 0x68], r8
mov qword [rsp + 0xd0], r9
mov qword [r12 - 0x30], r9
mov qword [r12 - 0x28], r14
mov qword [r12 - 0x20], rax
mov al, 0x13
mov byte [r12 - 0x18], al
mov dl, byte [rsp + 0x182]
mov byte [r12 - 0x15], dl
movzx edx, word [rsp + 0x180]
mov word [r12 - 0x17], dx
mov byte [r12 - 0x14], al
mov al, byte [rsp + 0x2ca]
mov byte [r12 - 0x11], al
movzx eax, word [rsp + 0x2c8]
mov word [r12 - 0x13], ax
mov dword [r12 - 0x10], esi
movsd qword [r12 - 8], xmm6
mov al, 0xb
mov byte [r12], al
mov byte [r12 + 3], sil
mov word [r12 + 1], si
mov dl, 1
mov byte [r12 + 4], dl
mov byte [r12 + 7], sil
mov word [r12 + 5], si
mov dword [r12 + 8], esi
lea r13, [rsp + 0x244]
mov byte [r13], al
mov byte [r13 + 3], sil
mov word [r13 + 1], si
mov byte [r13 + 4], dl
mov byte [r13 + 7], sil
mov word [r13 + 5], si
mov dword [r13 + 8], 4
mov byte [r13 + 0xc], sil
mov rsi, r8
mov eax, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x43]
mov dword [r13 + 0x10], r8d
mov dword [r13 + 0xd], eax
mov rax, qword [rsp + 0x78]
mov qword [rcx], rax
movapd xmm0, xmmword [rsp + 0x80]
movapd xmm1, xmmword [rsp + 0x90]
movupd xmmword [rcx + 8], xmm0
movupd xmmword [rcx + 0x18], xmm1
mov rax, qword [rsp + 0xa0]
mov qword [rcx + 0x28], rax
mov byte [rcx + 0x30], dl
mov al, byte [rsp + 0x68]
mov byte [rcx + 0x31], al
mov al, byte [rsp + 0xd8]
mov byte [rcx + 0x32], al
mov eax, dword [rsp + 0x2f0]
mov dword [rcx + 0x33], eax
mov al, byte [rsp + 0x2f4]
mov byte [rcx + 0x37], al
mov rdx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov r8, rbx
call fcn.140048713
mov rcx, rbx
mov rdx, r15
mov r8, r12
call fcn.14004850c
mov qword [r13 - 0x74], rsi
mov rbp, qword [rsp + 0x58]
shr rbp, 0x30
mov rcx, rbx
mov rdx, r15
mov r8, r13
call fcn.14004850c
mov rax, rbp
mov qword [rsp + 0x58], rbp
test rbp, rbp
je 0x1400333f4
shr rdi, 0x20
movapd xmm0, xmm7
call fcn.14006a128
movsd qword [rsp + 0x180], xmm0
mov r14, qword [rsp + 0xd0]
cmp r14, rsi
jne 0x140033429
lea rax, [rsp + 0x180]
mov qword [rsp + 0x40], rax
lea rax, [0x1400267b0]
mov qword [rsp + 0x48], rax
lea rax, [0x140087360]
lea rdx, [rsp + 0xe0]
mov qword [rdx], rax
mov qword [rdx + 8], 2
mov qword [rdx + 0x20], 0
lea rax, [rsp + 0x40]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], 1
lea rsi, [rsp + 0x140]
mov rcx, rsi
call fcn.14001ad30
mov al, 0x13
mov byte [rsi + 0x18], al
mov byte [rsi + 0x1c], al
mov dword [rsi + 0x20], 0
jmp 0x140033454
mov r8, r14
movabs rax, 0x8000000000000002
mov r14, qword [rsp + 0xd0]
cmp r14, rax
jl 0x140033632
test r14, r14
je 0x140033632
mov rcx, qword [0x1400a34b0]
xor edx, edx
jmp 0x14003362c
lea rax, [rsp + 0x210]
mov qword [rsp + 0x140], r14
movupd xmm0, xmmword [rax]
movupd xmm1, xmmword [rax + 0x10]
movupd xmmword [rsp + 0x148], xmm0
movupd xmmword [rsp + 0x158], xmm1
mov r14, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x148]
mov rbp, qword [rsp + 0x150]
mov qword [rsp + 0xd8], rcx
mov rdx, rbp
call fcn.1400665b2
mov r15, rax
cmp di, r15w
cmovb r15d, edi
mov eax, edi
sub eax, r15d
movzx ebx, ax
shr ebx, 1
add ebx, r14d
mov r13, qword [rsp + 0x130]
shr r13d, 0x10
movzx esi, word [rsp + 0x58]
mov r12d, esi
shr r12d, 1
add r12d, r13d
movzx eax, di
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
mulsd xmm6, xmm0
movapd xmm0, xmm6
call fcn.14006a128
add si, r13w
mov eax, 0xffff
cmovae eax, esi
mov dword [rsp + 0x58], eax
cmp ax, r13w
jbe 0x1400335df
mov dword [rsp + 0x1b8], r12d
mov qword [rsp + 0x130], r15
mov dword [rsp + 0xd0], ebx
mov qword [rsp + 0x78], rbp
xorpd xmm1, xmm1
maxsd xmm1, xmm0
movsd xmm0, qword [0x14007c1e0]
minsd xmm0, xmm1
cvttsd2si eax, xmm0
mov qword [rsp + 0x70], rax
add eax, r14d
mov dword [rsp + 0x68], eax
mov ebp, dword [rsp + 0x244]
mov r12d, dword [rsp + 0x248]
xor eax, eax
cmp r12b, 0x13
cmove r12d, eax
cmp bpl, 0x13
cmove ebp, eax
mov rax, qword [rsp + 0x70]
mov ebx, eax
mov edx, r14d
cmp word [rsp + 0x68], r14w
mov r14, qword [rsp + 0x60]
lea rsi, [0x1400886d1]
jbe 0x140033595
lea r15d, [rdx + 1]
mov rcx, r14
mov r8d, r13d
call fcn.14004827f
mov rdi, rax
mov qword [rax + 0x10], 0
mov rcx, rax
lea rdx, [0x1400886d0]
mov r8, rsi
call fcn.140027688
mov dword [rdi + 0x18], r12d
mov dword [rdi + 0x1c], ebp
mov edx, r15d
dec bx
jne 0x14003355a
inc r13d
cmp r13w, word [rsp + 0x58]
mov r14, qword [rsp + 0x38]
jb 0x14003353c
movzx eax, word [rsp + 0x130]
lea rsi, [rsp + 0x158]
mov qword [rsp + 0x30], rsi
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x60]
mov edx, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0x1b8]
jmp 0x140033604
movzx eax, r15w
lea rsi, [rsp + 0x158]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x20], rbp
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x60]
mov edx, ebx
mov r8d, r12d
mov rdi, qword [rsp + 0xd8]
mov r9, rdi
call fcn.1400482c2
mov rax, qword [rsi - 0x18]
shl rax, 1
test rax, rax
je 0x140033632
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rsi, [rsp + 0x1d0]
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov al, 0x13
mov byte [rsi + 0x18], al
mov byte [rsi + 0x1c], al
xor ebx, ebx
mov dword [rsi + 0x20], ebx
mov byte [rsi + 0x24], al
mov byte [rsi + 0x28], al
mov dword [rsi + 0x2c], ebx
mov word [rsi + 0x30], 0
mov byte [rsi + 0x32], 0xf
lea rax, str.8Kh5
lea rdi, [rsp + 0xe0]
mov qword [rdi], rax
mov rax, qword [rdi]
mov rcx, qword [0x1400a2850]
mov rdx, rcx
shr rdx, 0x14
xor rdx, rcx
not rdx
mov rcx, rdx
shr rcx, 0x1c
xor rcx, rdx
imul rcx, rcx, 0xc4716f
rol rcx, 5
movzx ecx, cx
movabs r14, 0x8a584f9ccb846f2c
xor r14, qword [rax + rcx]
mov ebp, 0xf6da4769
xor ebp, dword [rax + rcx + 8]
mov r15b, byte [rax + rcx + 0xc]
xor r15b, 0x32
mov ecx, 0xd
call fcn.140028b75
mov qword [rdx], r14
mov dword [rdx + 8], ebp
mov byte [rdx + 0xc], r15b
mov qword [rdi], rax
mov qword [rdi + 8], rdx
mov qword [rdi + 0x10], 0xd
mov dword [rdi + 0x20], ebx
movabs r15, 0x100000010
mov qword [rdi + 0x18], r15
lea r14, [rsp + 0x140]
mov rcx, r14
mov rdx, rdi
call fcn.1400485e7
mov rcx, rsi
call fcn.1400328f4
mov rax, qword [r14 + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [r14]
movaps xmmword [rsi], xmm0
mov r13, qword [rsi]
movups xmm0, xmmword [rsi + 0x18]
movaps xmmword [r14 + 0x10], xmm0
mov rax, qword [rsi + 8]
mov qword [r14], rax
mov rax, qword [rsi + 0x10]
mov qword [r14 + 8], rax
mov bpl, byte [rsi + 0x31]
mov r12b, byte [rsi + 0x32]
mov eax, dword [rsi + 0x33]
mov dword [rsp + 0x1a0], eax
mov al, byte [rsi + 0x37]
mov byte [rsp + 0x1a4], al
mov dword [r14 + 0x18], ebx
movabs rax, 0x100000009
mov qword [r14 + 0x10], rax
mov rax, qword [r14]
mov rcx, qword [r14 + 8]
mov rdx, qword [r14 + 0x10]
mov qword [rsi + 0x10], rdx
mov edx, dword [r14 + 0x18]
mov dword [rsi + 0x18], edx
mov edx, dword [r14 + 0x1c]
mov dword [rsi + 0x1c], edx
mov qword [rsi], rax
mov qword [rsi + 8], rcx
mov dword [rsi + 0x24], ebx
mov qword [rsi + 0x1c], r15
mov rax, qword [rsi + 0x20]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, qword [rsi + 0x10]
mov qword [rsp + 0x90], rdx
mov edx, dword [rsi + 0x18]
mov dword [rsp + 0x98], edx
mov edx, dword [rsi + 0x1c]
mov dword [rsp + 0x9c], edx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rcx
mov al, byte [0x1400a3530]
mov edx, 0x18
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d59
mov rdi, rax
mov rcx, r13
mov edx, r12d
mov r8, qword [rsp + 0x198]
call fcn.140048647
mov rcx, rax
shr rcx, 0x20
movabs rdx, 0xfffe00000000
add rdx, rax
movabs r8, 0xffff00000000
and rdx, r8
xor r8d, r8d
cmp cx, 3
cmovb rdx, r8
mov r8, rax
movabs rcx, 0xffff0000ffff0000
and r8, rcx
inc eax
movzx ecx, ax
or rcx, r8
or rcx, rdx
mov dword [rdi], 4
mov dword [rdi + 0xc], 0x10002
mov eax, 2
lea rdx, [rsp + 0x1d0]
mov qword [rdx], rax
mov qword [rdx + 8], rdi
mov qword [rdx + 0x10], rax
mov dword [rdx + 0x18], 0
mov word [rdx + 0x1c], 0x101
call fcn.140043dc3
mov rsi, rax
mov r14, rdx
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
test r14, r14
mov rbx, qword [rsp + 0x1a8]
je 0x140035ce9
cmp r14, 1
je 0x140035cf9
mov qword [rsp + 0x70], r13
mov byte [rsp + 0x58], r12b
mov byte [rsp + 0x38], bpl
mov qword [rsp + 0xd8], r14
movzx ecx, word [rsi + 0x14]
test rcx, rcx
je 0x140035db1
mov eax, dword [rsi + 0x10]
mov qword [rsp + 0xd0], rax
movzx eax, word [rsi + 0x16]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x130], rsi
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0x1b8], rax
mov rbp, qword [rbx + 0x10]
xor r14d, r14d
mov r15, rbp
sub r15, rcx
cmovb r15, r14
mov qword [rsp + 0x68], rcx
cmovae rbp, rcx
shl r15, 3
add r15, qword [rbx + 8]
lea rdi, [rsp + 0x228]
mov qword [rdi - 0x58], r14
movabs rax, 0x8000000000000001
mov qword [rdi - 0x48], rax
mov qword [rdi - 0x10], r15
mov qword [rdi - 8], rbp
lea rdx, [0x1400871c8]
mov r8d, 0x90
mov rcx, rdi
call fcn.140074b90
mov al, 0x13
mov byte [rdi - 0x30], al
mov byte [rdi - 0x2c], al
mov dword [rdi - 0x28], r14d
mov byte [rdi - 0x24], 0xf
mov word [rdi - 0x23], 0
mov dword [rdi - 0x21], 0x100
mov byte [rdi - 0x1d], 0
mov dword [rdi - 0x1c], r14d
mov dword [rdi - 0x19], r14d
movups xmm0, xmmword [rdi - 0x40]
movaps xmmword [rsp + 0x140], xmm0
mov al, byte [rdi - 0x30]
mov byte [rsp + 0x150], al
movzx eax, word [rdi - 0x2f]
mov word [rsp + 0x151], ax
mov al, byte [rdi - 0x2d]
mov byte [rsp + 0x153], al
mov al, byte [rdi - 0x2c]
mov byte [rsp + 0x154], al
movzx eax, word [rdi - 0x2b]
mov word [rsp + 0x155], ax
mov al, byte [rdi - 0x29]
mov byte [rsp + 0x157], al
mov eax, dword [rdi - 0x28]
mov dword [rsp + 0x158], eax
mov al, byte [rdi - 0x24]
mov byte [rsp + 0x15c], al
movzx eax, word [rdi - 0x23]
mov word [rsp + 0x15d], ax
mov al, byte [rdi - 0x21]
mov byte [rsp + 0x15f], al
movups xmm0, xmmword [rdi - 0x20]
movaps xmmword [rsp + 0x160], xmm0
mov rdx, qword [rbx + 0xa8]
lea rcx, [rsp + 0x2c8]
call fcn.140036178
lea rax, [0x14007709d]
mov qword [rdi - 0x58], rax
mov rax, qword [rdi - 0x58]
mov rcx, qword [0x1400a2858]
not rcx
mov rdx, rcx
shr rdx, 0xd
xor rdx, rcx
mov ecx, 0x1c11be5f
sub rcx, rdx
rol rcx, 3
mov r12d, 0xffff
and rcx, r12
mov edx, 0xa34364db
xor edx, dword [rax + rcx]
lea rax, [rsp + 0x37c]
mov dword [rax], edx
lea r13, [rsp + 0x390]
mov qword [r13], rax
mov qword [r13 + 8], 4
mov rdx, qword [rbx + 0xb0]
lea rcx, [rsp + 0x180]
call fcn.140036178
lea rax, [0x140080141]
mov qword [rdi - 0x58], rax
mov rax, qword [rdi - 0x58]
mov rcx, 0xffffffff93c19b6e
xor rcx, qword [0x1400a2860]
imul rcx, rcx, 0x6a4d46b7
add rcx, 0x6c9ad430
rol rcx, 4
and rcx, r12
movabs rdx, 0x2703b95895fd2a06
xor rdx, qword [rax + rcx]
mov r8d, 0x553ab8cc
xor r8d, dword [rax + rcx + 8]
lea rax, [rsp + 0x380]
mov qword [rax], rdx
mov dword [rax + 8], r8d
mov qword [rsp + 0x358], rax
mov qword [rsp + 0x360], 0xc
mov rdx, qword [rbx + 0x88]
lea rsi, [rsp + 0xb8]
mov rcx, rsi
call fcn.140036178
lea rax, [0x14008510e]
mov qword [rdi - 0x58], rax
mov rax, qword [rdi - 0x58]
mov rcx, qword [0x1400a2868]
rol rcx, 2
dec rcx
rol rcx, 5
and rcx, r12
movzx eax, word [rax + rcx]
xor eax, 0x4da3
lea rcx, [rsp + 0x1ce]
mov word [rcx], ax
mov qword [rsp + 0x368], rcx
mov qword [rsp + 0x370], 2
mov rdx, qword [rbx + 0x90]
lea rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.140036178
lea rax, [0x140075b8d]
mov qword [rdi - 0x58], rax
mov rax, qword [rdi - 0x58]
mov rcx, 0xffffffffb395115f
sub rcx, qword [0x1400a2870]
rol rcx, 5
and rcx, r12
mov al, byte [rax + rcx]
xor al, 0x7e
lea rcx, [rsp + 0x13f]
mov byte [rcx], al
lea rax, [rsp + 0x2f0]
mov qword [rax], rcx
mov qword [rax + 8], 1
lea rcx, [rsp + 0x2c8]
mov qword [rdi - 0x58], rcx
lea r8, [0x14001a9c0]
mov qword [rdi - 0x50], r8
mov qword [rdi - 0x48], r13
lea rcx, [0x14001f460]
mov qword [rdi - 0x40], rcx
lea rdx, [rsp + 0x180]
mov qword [rdi - 0x38], rdx
mov qword [rdi - 0x30], r8
lea rdx, [rsp + 0x358]
mov qword [rdi - 0x28], rdx
mov qword [rdi - 0x20], rcx
mov qword [rdi - 0x18], rsi
mov qword [rdi - 0x10], r8
lea rdx, [rsp + 0x368]
mov qword [rdi - 8], rdx
mov qword [rdi], rcx
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], r8
mov qword [rdi + 0x18], rax
mov qword [rdi + 0x20], rcx
lea rax, [0x140085808]
lea rdx, [rsp + 0xe0]
mov qword [rdx], rax
mov eax, 8
mov qword [rdx + 8], rax
mov qword [rdx + 0x20], r14
lea rcx, [rsp + 0x1d0]
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], rax
lea rcx, [rsp + 0x300]
call fcn.14001ad30
cmp qword [rsp + 0x40], r14
je 0x140033c84
mov r8, qword [rsp + 0x48]
mov rcx, qword [0x1400a34b0]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0xb8], 0
je 0x140033ca6
mov r8, qword [rsp + 0xc0]
mov rcx, qword [0x1400a34b0]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x180], 0
mov rbx, qword [rsp + 0x60]
je 0x140033ccd
mov r8, qword [rsp + 0x188]
mov rcx, qword [0x1400a34b0]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x2c8], 0
je 0x140033cef
mov r8, qword [rsp + 0x2d0]
mov rcx, qword [0x1400a34b0]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r14, qword [rsp + 0x300]
mov rsi, qword [rsp + 0x308]
mov rax, qword [rsp + 0x310]
movabs rcx, 0x8000000000000000
cmp r14, rcx
jne 0x140033da2
test rax, rax
je 0x140033e73
xor edx, edx
lea rcx, [rsp + 0xe0]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rax
mov qword [rcx + 0x30], 1
movabs rax, 0xa0000000a
mov qword [rcx + 0x38], rax
mov word [rcx + 0x40], 0
call fcn.14004377a
test rax, rax
je 0x140033d93
mov r8, rdx
lea rsi, [rsp + 0x1d0]
mov rcx, rsi
mov rdx, rax
call fcn.140043a16
movabs rax, 0x8000000000000000
cmp qword [rsi], rax
jne 0x140033f00
mov r13d, 8
xor edi, edi
xor esi, esi
jmp 0x140034151
test rax, rax
je 0x140033eaa
xor edx, edx
lea rcx, [rsp + 0xe0]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
mov qword [rsp + 0x318], rsi
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rax
mov qword [rcx + 0x30], 1
movabs rax, 0xa0000000a
mov qword [rcx + 0x38], rax
mov word [rcx + 0x40], 0
call fcn.14004377a
test rax, rax
je 0x140033e64
mov rdi, rax
mov rsi, rdx
mov rcx, rdx
call fcn.140028b75
mov qword [rsp + 0x1b0], r14
mov r14, rax
mov r12, rdx
mov rcx, rdx
mov rdx, rdi
mov r8, rsi
call fcn.140074b90
lea rdx, [rsp + 0x1d0]
mov qword [rdx], r14
mov r14, qword [rsp + 0x1b0]
mov qword [rdx + 8], r12
mov rbx, qword [rsp + 0x60]
mov qword [rdx + 0x10], rsi
lea rsi, [rsp + 0x40]
mov rcx, rsi
call fcn.1400438c1
movabs rax, 0x8000000000000000
cmp qword [rsi], rax
jne 0x140033fdd
mov r13d, 8
xor edi, edi
xor esi, esi
jmp 0x140034135
mov al, byte [0x1400a3530]
mov edx, 0x18
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035dd8
mov r13, rax
lea rdx, [0x140092800]
mov rcx, rax
xor r8d, r8d
call fcn.140043a16
mov edi, 1
jmp 0x140033ef6
mov al, byte [0x1400a3530]
mov edx, 0x18
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035dd8
mov r13, rax
lea rdx, [0x140092800]
mov rcx, rax
xor r8d, r8d
call fcn.140043a16
mov edi, 1
test r14, r14
je 0x140033ef6
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov esi, 1
jmp 0x140034151
call fcn.140043928
mov r12, rax
lea r14, [rsp + 0x1d0]
movups xmm0, xmmword [r14]
movups xmmword [rax], xmm0
mov rax, qword [r14 + 0x10]
mov qword [r12 + 0x10], rax
lea rax, [rsp + 0xb8]
mov qword [rax], 4
mov qword [rax + 8], r12
mov qword [rax + 0x10], 1
lea rsi, [rsp + 0xe0]
mov ecx, 9
mov rdi, r14
rep movsq qword [rdi], qword [rsi]
mov esi, 1
mov ebx, 0x18
lea r13, [rsp + 0x40]
mov rcx, r14
call fcn.14004377a
test rax, rax
je 0x1400340f7
mov r8, rdx
mov rcx, r13
mov rdx, rax
call fcn.140043a16
mov rdi, qword [rsp + 0xb8]
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x40], rax
je 0x1400340ff
cmp rsi, rdi
je 0x140033fc3
mov rax, qword [rsp + 0x50]
mov qword [r12 + rbx + 0x10], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r12 + rbx], xmm0
inc rsi
mov qword [rsp + 0xc8], rsi
add rbx, 0x18
jmp 0x140033f5d
lea rcx, [rsp + 0xb8]
mov rdx, rsi
call fcn.1400794de
mov r12, qword [rsp + 0xc0]
jmp 0x140033f9e
call fcn.140043928
mov r13, rax
lea rbx, [rsp + 0x40]
movups xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
mov rax, qword [rbx + 0x10]
mov qword [r13 + 0x10], rax
lea rax, [rsp + 0x180]
mov qword [rax], 4
mov qword [rax + 8], r13
mov qword [rax + 0x10], 1
lea r12, [rsp + 0x1d0]
lea rsi, [rsp + 0xe0]
mov ecx, 9
mov rdi, r12
rep movsq qword [rdi], qword [rsi]
mov esi, 1
mov rcx, r12
call fcn.14004377a
test rax, rax
je 0x14003410e
mov r14, rax
mov rdi, rdx
mov rcx, rdx
call fcn.140028b75
mov rsi, rax
mov r13, rdx
mov rcx, rdx
mov rdx, r14
mov r8, rdi
call fcn.140074b90
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0xb8]
mov rdx, rbx
call fcn.1400438c1
mov rdi, qword [rsp + 0x180]
movabs rax, 0x8000000000000000
cmp qword [rsp + 0xb8], rax
je 0x140034118
mov rsi, qword [rsp + 0x190]
cmp rsi, rdi
je 0x1400340e5
mov r13, qword [rsp + 0x188]
lea rax, [rsi + rsi*2]
mov rcx, qword [rsp + 0xc8]
mov qword [r13 + rax*8 + 0x10], rcx
movups xmm0, xmmword [rsp + 0xb8]
movups xmmword [r13 + rax*8], xmm0
inc rsi
mov qword [rsp + 0x190], rsi
jmp 0x140034033
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1400794de
jmp 0x1400340ae
mov rdi, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0x60]
jmp 0x140034151
mov rdi, qword [rsp + 0x180]
jmp 0x140034128
mov r13, qword [rsp + 0x188]
mov rsi, qword [rsp + 0x190]
mov r14, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x60]
test r14, r14
je 0x140034151
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, qword [rsp + 0x318]
call qword [sym.imp.kernel32.dll_HeapFree]
mov dword [rsp + 0x221], 0x1000000
mov word [rsp + 0x225], 0
mov byte [rsp + 0x227], 0
mov qword [rsp + 0x1d0], rdi
mov qword [rsp + 0x1d8], r13
mov qword [rsp + 0x1e0], rsi
movabs rax, 0x8000000000000001
mov qword [rsp + 0x1e8], rax
lea rsi, [rsp + 0xe0]
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmm2, xmmword [rsi + 0x20]
movups xmmword [rsp + 0x1f0], xmm0
movups xmmword [rsp + 0x200], xmm1
movups xmmword [rsp + 0x210], xmm2
mov byte [rsp + 0x220], 0x10
mov qword [rsp + 0x228], 0
mov byte [rsp + 0x230], 2
mov eax, dword [rsp + 0x41]
mov dword [rsp + 0x232], eax
movzx eax, word [rsp + 0x45]
mov word [rsp + 0x236], ax
mov al, 1
mov byte [rsp + 0x231], al
mov rcx, qword [rsp + 0x70]
mov qword [rsi], rcx
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movups xmmword [rsi + 8], xmm0
movups xmmword [rsi + 0x18], xmm1
mov rcx, qword [rsp + 0xa0]
mov qword [rsi + 0x28], rcx
mov byte [rsi + 0x30], al
mov al, byte [rsp + 0x38]
mov byte [rsi + 0x31], al
mov al, byte [rsp + 0x58]
mov byte [rsi + 0x32], al
mov eax, dword [rsp + 0x1a0]
mov dword [rsi + 0x33], eax
mov al, byte [rsp + 0x1a4]
mov byte [rsi + 0x37], al
mov rcx, rsi
mov rdx, qword [rsp + 0x198]
mov r8, rbx
call fcn.140048713
mov rax, qword [rsp + 0x78]
shl rax, 0x30
add rax, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0x68]
shl rdi, 0x20
or rdi, rax
movabs rcx, 0x8000000000000000
mov qword [rsi], rcx
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x150]
movaps xmm2, xmmword [rsp + 0x160]
movups xmmword [rsi + 0x28], xmm2
movups xmmword [rsi + 8], xmm0
movups xmmword [rsi + 0x18], xmm1
mov dl, byte [rsi + 0x32]
mov r8, rdi
call fcn.140048647
mov r14, rax
lea rcx, [rsp + 0xe0]
mov rdx, rdi
mov r8, rbx
call fcn.140048713
mov r12, r14
shr r12, 0x30
je 0x140034516
mov rax, r14
shr rax, 0x20
test rbp, rbp
je 0x140034329
mov rcx, r15
cmp rbp, 1
je 0x14003432b
lea rdx, [r15 + 8]
lea rcx, [rbp - 1]
movabs r8, 0x1fffffffffffffff
and r8, rcx
mov r9, qword [r15]
mov rcx, r15
mov r10, qword [rdx]
cmp r9, r10
cmovbe r9, r10
cmovbe rcx, rdx
add rdx, 8
dec r8
jne 0x140034310
jmp 0x14003432b
xor ecx, ecx
test rcx, rcx
lea rdx, [0x1400874a8]
cmovne rdx, rcx
movzx eax, ax
cmp rax, rbp
cmovb rbp, rax
test rbp, rbp
mov qword [rsp + 0x68], r14
je 0x1400343d8
mov rsi, qword [rdx]
lea rdi, [rbp*8]
mov al, byte [0x1400a3530]
xor ecx, ecx
mov rdx, rdi
call fcn.140062670
test rax, rax
je 0x140035de2
mov rcx, rax
mov qword [rsp + 0xe0], rbp
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf0], 0
lea r8, [r12*8]
xor r9d, r9d
test rsi, rsi
je 0x1400343b3
mov rax, qword [r15 + r9*8]
imul rax, r8
xor edx, edx
div rsi
jmp 0x1400343b5
xor eax, eax
mov qword [rcx + r9*8], rax
inc r9
cmp rbp, r9
jne 0x14003439f
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x78], rax
mov rdi, qword [rsp + 0xe8]
jmp 0x140034405
xor ecx, ecx
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xe8], 8
xor eax, eax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xf0], rcx
mov edi, 8
xor r9d, r9d
test r12w, r12w
je 0x1400344f7
mov rax, qword [rsp + 0x68]
shr eax, 0x10
mov qword [rsp + 0x198], rax
lea rax, [r9*8]
mov qword [rsp + 0x38], rax
xor esi, esi
mov qword [rsp + 0x70], r9
dec r12d
mov qword [rsp + 0x58], r12
test r9, r9
je 0x1400344e3
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x198]
lea ebp, [rax + rcx]
xor ebx, ebx
mov rax, qword [rsp + 0x68]
mov r14d, eax
mov rax, qword [rdi + rbx]
mov r15d, 3
lea r12, [0x1400871b0]
cmp rax, 7
ja 0x14003448b
lea rcx, [0x140092e08]
mov r12, qword [rcx + rax*8]
lea rcx, [0x140092e48]
mov r15, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x60]
mov edx, r14d
mov r8d, ebp
call fcn.14004827f
mov r13, rax
mov qword [rax + 0x10], rsi
add r15, r12
mov rcx, rax
mov rdx, r12
mov r8, r15
call fcn.140027688
movabs rax, 0x10000000f
mov qword [r13 + 0x18], rax
mov rax, qword [rdi + rbx]
sub rax, 8
cmovb rax, rsi
mov qword [rdi + rbx], rax
inc r14d
add rbx, 8
cmp qword [rsp + 0x38], rbx
jne 0x14003445e
mov r12, qword [rsp + 0x58]
test r12w, r12w
mov r9, qword [rsp + 0x70]
jne 0x140034433
cmp qword [rsp + 0x78], 0
mov rbx, qword [rsp + 0x60]
je 0x140034516
mov rcx, qword [0x1400a34b0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdi, qword [rsp + 0x1a8]
lea rax, [rdi + 0xb8]
mov qword [rsp + 0x58], rax
lea rax, [rdi + 0xc8]
mov qword [rsp + 0x70], rax
lea rax, [rdi + 0xd0]
mov qword [rsp + 0x68], rax
lea rax, [rdi + 0xd8]
mov qword [rsp + 0x198], rax
lea rcx, [rsp + 0x1d0]
mov rdx, qword [rsp + 0x1b8]
mov r8, rbx
call fcn.140048ef6
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0xd8]
call fcn.140043d54
xor esi, esi
lea rax, [rsp + 0x80]
mov qword [rax], rsi
mov qword [rax + 8], 8
mov qword [rax + 0x10], rsi
mov r14, qword [rdi + 0x58]
mov r15, qword [rdi + 0x70]
movdqa xmm0, xmmword [r14]
pmovmskb ebx, xmm0
not ebx
lea r12, [r14 + 0x10]
mov ebp, 8
mov r13d, 1
sub r15, 1
jb 0x140034699
test bx, bx
jne 0x1400345e7
movdqa xmm0, xmmword [r12]
pmovmskb ebx, xmm0
add r14, 0xfffffffffffffe80
add r12, 0x10
cmp ebx, 0xffff
je 0x1400345c8
not ebx
mov al, byte [0x1400a3530]
mov edx, 0x28
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d0f
mov rdi, rax
bsf eax, ebx
neg rax
lea rax, [rax + rax*2]
movdqu xmm0, xmmword [r14 + rax*8 - 0x10]
movabs rax, 0x8000000000000000
mov qword [rdi], rax
movdqu xmmword [rdi + 8], xmm0
movabs rax, 0x100000010
mov qword [rdi + 0x18], rax
mov dword [rdi + 0x20], 0
cmp rsi, qword [rsp + 0x80]
jne 0x140034667
lea rcx, [rsp + 0x80]
mov rdx, rsi
call fcn.14003284b
mov rbp, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x90]
lea eax, [rbx - 1]
and eax, ebx
lea rcx, [rsi + rsi*2]
mov qword [rbp + rcx*8], r13
mov qword [rbp + rcx*8 + 8], rdi
mov qword [rbp + rcx*8 + 0x10], r13
mov rsi, qword [rsp + 0x90]
inc rsi
mov qword [rsp + 0x90], rsi
mov ebx, eax
jmp 0x1400345b9
lea rsi, [rsp + 0x1d0]
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov r13b, 0x13
mov byte [rsi + 0x18], r13b
mov byte [rsi + 0x1c], r13b
xor r12d, r12d
mov dword [rsi + 0x20], r12d
mov byte [rsi + 0x24], r13b
mov byte [rsi + 0x28], r13b
mov dword [rsi + 0x2c], r12d
mov word [rsi + 0x30], r12w
mov al, 0xf
mov byte [rsi + 0x32], al
lea rax, [0x140082914]
lea rdi, [rsp + 0xe0]
mov qword [rdi], rax
mov rax, qword [rdi]
mov rcx, 0xffffffffc6502b01
add rcx, qword [0x1400a2878]
xor rcx, 0x654acc85
add rcx, 0x19c2464a
rol rcx, 2
mov edx, 0xffff
and rcx, rdx
movabs rbx, 0xbae0e651594640df
xor rbx, qword [rax + rcx]
mov ebp, 0x63783dc4
xor ebp, dword [rax + rcx + 8]
movzx r14d, byte [rax + rcx + 0xe]
movzx r15d, word [rax + rcx + 0xc]
xor r15d, 0x7b24
xor r14b, 0xd1
mov ecx, 0xf
call fcn.140028b75
mov qword [rdx], rbx
mov dword [rdx + 8], ebp
mov word [rdx + 0xc], r15w
mov byte [rdx + 0xe], r14b
mov qword [rdi], rax
mov qword [rdi + 8], rdx
mov qword [rdi + 0x10], 0xf
mov dword [rdi + 0x20], r12d
movabs rax, 0x100000010
mov qword [rdi + 0x18], rax
mov rbx, rax
lea r15, [rsp + 0x140]
mov rcx, r15
mov rdx, rdi
call fcn.1400485e7
mov rcx, rsi
call fcn.1400328f4
mov rax, qword [r15 + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [r15]
movaps xmmword [rsi], xmm0
mov r14, qword [rsi]
movups xmm0, xmmword [rsi + 0x18]
movaps xmmword [r15 + 0x10], xmm0
mov rax, qword [rsi + 8]
mov qword [r15], rax
mov rax, qword [rsi + 0x10]
mov qword [r15 + 8], rax
mov al, byte [rsi + 0x31]
mov byte [rsp + 0x38], al
mov bpl, byte [rsi + 0x32]
mov eax, dword [rsi + 0x33]
mov dword [rsp + 0x40], eax
mov al, byte [rsi + 0x37]
mov byte [rsp + 0x44], al
mov dword [r15 + 0x18], r12d
movabs rax, 0x100000009
mov qword [r15 + 0x10], rax
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
mov rdx, qword [r15 + 0x10]
mov qword [rsi + 0x10], rdx
mov edx, dword [r15 + 0x18]
mov dword [rsi + 0x18], edx
mov edx, dword [r15 + 0x1c]
mov dword [rsi + 0x1c], edx
mov qword [rsi], rax
mov qword [rsi + 8], rcx
mov dword [rsi + 0x24], r12d
mov qword [rsi + 0x1c], rbx
mov rax, qword [rsi + 0x20]
mov qword [rdi + 0x28], rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, qword [rsi + 0x10]
mov qword [rdi + 0x18], rdx
mov edx, dword [rsi + 0x18]
mov dword [rdi + 0x20], edx
mov edx, dword [rsi + 0x1c]
mov dword [rdi + 0x24], edx
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rcx
mov rcx, r14
mov edx, ebp
mov rbx, qword [rsp + 0x1c0]
mov r8, rbx
call fcn.140048647
mov rcx, rax
shr rcx, 0x20
movabs rdx, 0xfffe00000000
add rdx, rax
movabs r8, 0xffff00000000
and rdx, r8
cmp cx, 3
cmovb rdx, r12
lea ecx, [rax + 1]
movabs r8, 0xffff0000ffff0000
and rax, r8
movzx r15d, cx
or r15, rax
or r15, rdx
movups xmm0, xmmword [rsp + 0x80]
movaps xmmword [rsi], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rsi + 0x10], rax
mov word [rsi + 0x51], r12w
mov dword [rsi + 0x53], 0x100
mov byte [rsi + 0x57], 0
movabs rax, 0x8000000000000001
mov qword [rsi + 0x18], rax
mov byte [rsi + 0x50], 0x10
mov qword [rsi + 0x58], r12
mov word [rsi + 0x60], 2
mov qword [rdi], r14
mov byte [rdi + 0x30], 1
mov al, byte [rsp + 0x38]
mov byte [rdi + 0x31], al
mov byte [rdi + 0x32], bpl
mov eax, dword [rsp + 0x40]
mov dword [rdi + 0x33], eax
mov al, byte [rsp + 0x44]
mov byte [rdi + 0x37], al
lea rsi, [rsp + 0xe0]
mov rcx, rsi
mov rdx, rbx
mov rbx, qword [rsp + 0x60]
mov r8, rbx
call fcn.140048713
lea rdi, [rsp + 0x1d0]
mov rcx, rdi
mov rdx, r15
movabs r15, 0x100000010
mov r8, rbx
call fcn.140048ef6
movabs rax, 0x8000000000000000
mov qword [rdi], rax
mov byte [rdi + 0x18], r13b
mov byte [rdi + 0x1c], r13b
mov dword [rdi + 0x20], r12d
mov byte [rdi + 0x24], r13b
mov byte [rdi + 0x28], r13b
mov dword [rdi + 0x2c], r12d
mov word [rdi + 0x30], r12w
mov al, 0xf
mov byte [rdi + 0x32], al
lea rax, [0x1400811d9]
mov qword [rsi], rax
mov rax, qword [rsi]
imul rcx, qword [0x1400a2880], 0xffffffffd0045d61
movabs rdx, 0xffe9192fa2558c19
add rdx, rcx
rol rdx, 2
mov ecx, 0xffff
and rdx, rcx
movabs rdi, 0x8919653128092105
xor rdi, qword [rax + rdx]
mov ebx, 0x125dea2e
xor ebx, dword [rax + rdx + 8]
mov ecx, 0xc
call fcn.140028b75
mov qword [rdx], rdi
mov dword [rdx + 8], ebx
mov qword [rsi], rax
mov qword [rsi + 8], rdx
mov qword [rsi + 0x10], 0xc
mov dword [rsi + 0x20], r12d
mov qword [rsi + 0x18], r15
lea rdi, [rsp + 0x140]
lea rdx, [rsp + 0xe0]
mov rcx, rdi
call fcn.1400485e7
lea rsi, [rsp + 0x1d0]
mov rcx, rsi
call fcn.1400328f4
mov rax, qword [rdi + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rdi]
movaps xmmword [rsi], xmm0
mov r14, qword [rsi]
movups xmm0, xmmword [rsi + 0x18]
movaps xmmword [rdi + 0x10], xmm0
mov rax, qword [rsi + 8]
mov qword [rdi], rax
mov rax, qword [rsi + 0x10]
mov qword [rdi + 8], rax
mov r13b, byte [rsi + 0x31]
mov bl, byte [rsi + 0x32]
mov eax, dword [rsi + 0x33]
mov dword [rsp + 0x80], eax
mov al, byte [rsi + 0x37]
mov byte [rsp + 0x84], al
mov dword [rdi + 0x18], r12d
movabs rax, 0x100000009
mov qword [rdi + 0x10], rax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov qword [rsi + 0x10], rdx
mov edx, dword [rdi + 0x18]
mov dword [rsi + 0x18], edx
mov edx, dword [rdi + 0x1c]
mov dword [rsi + 0x1c], edx
mov qword [rsi], rax
mov qword [rsi + 8], rcx
mov dword [rsi + 0x24], r12d
mov qword [rsi + 0x1c], r15
mov rax, qword [rsi + 0x20]
mov qword [rdi + 0x20], rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, qword [rsi + 0x10]
mov qword [rdi + 0x10], rdx
mov edx, dword [rsi + 0x18]
mov dword [rdi + 0x18], edx
mov edx, dword [rsi + 0x1c]
mov dword [rdi + 0x1c], edx
mov qword [rdi], rax
mov qword [rdi + 8], rcx
mov rcx, r14
mov edx, ebx
mov r8, qword [rsp + 0x2e0]
call fcn.140048647
mov rsi, rax
mov al, byte [0x1400a3530]
mov edx, 0x90
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035dc9
mov r12, rax
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0x78], r14
mov byte [rsp + 0xd8], bl
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
mov qword [rsp + 0x38], rax
test rax, rax
je 0x140035d1e
lea rax, [0x14008293c]
lea rsi, [rsp + 0x1d0]
mov qword [rsi], rax
mov rax, qword [rsi]
mov rcx, qword [0x1400a2888]
mov rdx, rcx
shr rdx, 0x13
xor rdx, rcx
imul rcx, rdx, 0x5ce1647a
not rcx
imul rcx, rcx, 0xffffffffb1093a94
rol rcx, 6
and ecx, 0xff3f
movabs rbx, 0xbff5ef4c7f939005
xor rbx, qword [rax + rcx]
mov ebp, 0x4191a602
xor ebp, dword [rax + rcx + 8]
mov ecx, 0xc
call fcn.140028b75
mov rdi, rax
mov r14, rdx
mov qword [rdx], rbx
mov dword [rdx + 8], ebp
mov rcx, rsi
mov rdx, qword [rsp + 0x58]
call fcn.14003649c
cmp qword [rsp + 0x350], 0
mov byte [rsp + 0x1c0], r13b
mov qword [rsp + 0x130], r12
je 0x140034bbb
movabs rax, 0x10000000b
mov qword [rsp + 0xe0], rax
jmp 0x140034bc3
mov qword [rsp + 0xe0], r15
mov dword [rsp + 0xe8], 0
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 0x38], rax
movups xmm0, xmmword [rsp + 0x1d0]
movups xmmword [rcx + 0x28], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 0x40], rax
mov eax, dword [rsp + 0xe8]
mov dword [rcx + 0x48], eax
mov qword [rcx], rdi
mov qword [rcx + 8], r14
mov qword [rcx + 0x10], 0xc
mov qword [rcx + 0x18], r15
mov dword [rcx + 0x20], 0
mov al, byte [0x1400a3530]
xor ebx, ebx
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov r13, rax
mov r12, r15
lea rax, [0x140083775]
lea rsi, [rsp + 0x1d0]
mov qword [rsi], rax
mov rax, qword [rsi]
mov rcx, qword [0x1400a2890]
mov rdx, rcx
shr rdx, 0x1e
xor rdx, rcx
add rdx, 0xffffffff9f250a27
rol rdx, 1
mov ecx, 0x352682c8
sub rcx, rdx
rol rcx, 2
movzx ecx, cx
movabs r15, 0xee6f08f153f329b3
xor r15, qword [rax + rcx]
mov ebp, 0xe154c669
xor ebp, dword [rax + rcx + 8]
mov ecx, 0xc
call fcn.140028b75
mov rdi, rax
mov r14, rdx
mov qword [rdx], r15
mov dword [rdx + 8], ebp
mov rax, qword [rsp + 0x1a8]
lea rdx, [rax + 0xc0]
mov rcx, rsi
call fcn.14003649c
mov rax, qword [rsi + 0x10]
mov qword [r13 + 0x38], rax
movups xmm0, xmmword [rsi]
movups xmmword [r13 + 0x28], xmm0
mov qword [r13 + 0x40], r12
mov dword [r13 + 0x48], ebx
mov qword [r13], rdi
mov qword [r13 + 8], r14
mov qword [r13 + 0x10], 0xc
mov qword [r13 + 0x18], r12
mov qword [rsp + 0x58], r13
mov dword [r13 + 0x20], ebx
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov r13, rax
lea rax, [0x14007dbc9]
lea rsi, [rsp + 0x1d0]
mov qword [rsi], rax
mov rax, qword [rsi]
mov rcx, 0xffffffffa448f915
xor rcx, qword [0x1400a2898]
add rcx, 0x24b9d6ed
rol rcx, 7
movzx ecx, cx
movabs rbx, 0xcf953ae4a1099f11
xor rbx, qword [rax + rcx]
mov ebp, 0x71f85e80
xor ebp, dword [rax + rcx + 8]
mov ecx, 0xc
call fcn.140028b75
mov rdi, rax
mov r14, rdx
mov qword [rdx], rbx
mov dword [rdx + 8], ebp
mov rcx, rsi
mov rdx, qword [rsp + 0x70]
call fcn.14003649c
mov rax, qword [rsi + 0x10]
mov qword [r13 + 0x38], rax
movups xmm0, xmmword [rsi]
movups xmmword [r13 + 0x28], xmm0
mov qword [r13 + 0x40], r12
xor eax, eax
mov dword [r13 + 0x48], eax
mov qword [r13], rdi
mov qword [r13 + 8], r14
mov qword [r13 + 0x10], 0xc
mov qword [r13 + 0x18], r12
mov qword [rsp + 0x70], r13
mov dword [r13 + 0x20], eax
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov rsi, rax
lea rax, [0x14007796e]
lea rdi, [rsp + 0x1d0]
mov qword [rdi], rax
mov rax, qword [rdi]
mov rcx, 0xffffffffb645f7d9
sub rcx, qword [0x1400a28a0]
rol rcx, 5
neg rcx
rol rcx, 6
movzx ecx, cx
movabs rbx, 0xf9ba465de19bd477
xor rbx, qword [rax + rcx]
mov ebp, 0x9f466245
xor ebp, dword [rax + rcx + 8]
mov ecx, 0xc
call fcn.140028b75
mov r14, rax
mov r13, rdx
mov qword [rdx], rbx
mov dword [rdx + 8], ebp
mov rcx, rdi
mov rdx, qword [rsp + 0x68]
call fcn.14003649c
movabs rax, 0x10000000a
cmp qword [rsp + 0x348], 0
je 0x140034e5e
mov qword [rsp + 0xe0], rax
jmp 0x140034e66
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe8], 0
mov rax, qword [rsp + 0x1e0]
mov qword [rsi + 0x38], rax
movups xmm0, xmmword [rsp + 0x1d0]
movups xmmword [rsi + 0x28], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsi + 0x40], rax
mov eax, dword [rsp + 0xe8]
mov dword [rsi + 0x48], eax
mov qword [rsi], r14
mov qword [rsi + 8], r13
mov qword [rsi + 0x10], 0xc
mov qword [rsi + 0x18], r12
mov dword [rsi + 0x20], 0
mov al, byte [0x1400a3530]
xor ebx, ebx
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov r14, rax
lea rax, [0x140078d94]
lea rdi, [rsp + 0x1d0]
mov qword [rdi], rax
mov rax, qword [rdi]
mov rcx, qword [0x1400a28a8]
rol rcx, 8
xor rcx, 0xffffffffe38eaa8c
mov edx, ecx
shr edx, 0xb
xor rdx, rcx
rol rdx, 1
movzx ecx, dx
movabs r15, 0x5a733be869ea132f
xor r15, qword [rax + rcx]
mov r12d, 0x9cca888f
xor r12d, dword [rax + rcx + 8]
mov ecx, 0xc
call fcn.140028b75
mov r13, rax
mov rbp, rdx
mov qword [rdx], r15
mov dword [rdx + 8], r12d
mov rcx, rdi
mov rdx, qword [rsp + 0x198]
call fcn.14003649c
mov rax, qword [rdi + 0x10]
mov qword [r14 + 0x38], rax
movups xmm0, xmmword [rdi]
movups xmmword [r14 + 0x28], xmm0
movabs rax, 0x100000010
mov qword [r14 + 0x40], rax
mov dword [r14 + 0x48], ebx
mov qword [r14], r13
mov qword [r14 + 8], rbp
mov qword [r14 + 0x10], 0xc
mov qword [r14 + 0x18], rax
mov dword [r14 + 0x20], ebx
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov rbp, rax
mov r8, qword [rsp + 0xd0]
mov rcx, r8
shr rcx, 0x20
movabs rax, 0xfffe00000000
add rax, r8
movabs rdx, 0xffff00000000
and rax, rdx
xor edx, edx
cmp cx, 3
cmovb rax, rdx
mov rcx, r8
movabs rdx, 0xffff0000ffff0000
and rcx, rdx
lea edx, [r8 + 1]
movzx r9d, dx
lea rdx, [0x140076e46]
lea r13, [rsp + 0x1d0]
mov qword [r13], rdx
mov rdx, qword [r13]
imul r8, qword [0x1400a28b0], 0x3585ae3f
or r9, rcx
add r8, 0x506971cc
rol r8, 3
movzx ecx, r8w
movabs rbx, 0xaa33b25d778a9fc4
xor rbx, qword [rdx + rcx]
or r9, rax
mov qword [rsp + 0x68], r9
mov edi, 0x5377f041
xor edi, dword [rdx + rcx + 8]
mov ecx, 0xc
call fcn.140028b75
mov r12, rax
mov r15, rdx
mov qword [rdx], rbx
mov dword [rdx + 8], edi
mov rdi, qword [rsp + 0x1a8]
lea rdx, [rdi + 0xe0]
mov rcx, r13
call fcn.14003649c
mov rax, qword [r13 + 0x10]
mov qword [rbp + 0x38], rax
movups xmm0, xmmword [r13]
movups xmmword [rbp + 0x28], xmm0
movabs rbx, 0x100000010
mov qword [rbp + 0x40], rbx
xor eax, eax
mov dword [rbp + 0x48], eax
mov qword [rbp], r12
mov qword [rbp + 8], r15
mov qword [rbp + 0x10], 0xc
mov qword [rbp + 0x18], rbx
mov dword [rbp + 0x20], eax
xor r15d, r15d
mov eax, 2
mov rcx, qword [rsp + 0x130]
mov qword [rcx], rax
mov rdx, qword [rsp + 0x38]
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rax
mov rdx, qword [rsp + 0x58]
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rax
mov qword [rcx + 0x30], rax
mov rdx, qword [rsp + 0x70]
mov qword [rcx + 0x38], rdx
mov qword [rcx + 0x40], rax
mov qword [rcx + 0x48], rax
mov qword [rcx + 0x50], rsi
mov qword [rcx + 0x58], rax
mov qword [rcx + 0x60], rax
mov qword [rcx + 0x68], r14
mov qword [rcx + 0x70], rax
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], rbp
mov qword [rcx + 0x88], rax
mov al, 0x13
mov byte [r13 + 0x50], al
mov byte [r13 + 0x54], al
mov qword [r13 + 0x58], r15
mov eax, 6
mov qword [r13], rax
mov qword [r13 + 8], rcx
mov qword [r13 + 0x10], rax
movabs rax, 0x8000000000000001
mov qword [r13 + 0x18], rax
mov word [r13 + 0x60], 2
lea rcx, [rsp + 0xe0]
mov rax, qword [rsp + 0x78]
mov qword [rcx], rax
mov rax, qword [rsp + 0x160]
mov qword [rcx + 0x28], rax
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x150]
movups xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x18], xmm1
mov byte [rcx + 0x30], 1
mov al, byte [rsp + 0x1c0]
mov byte [rcx + 0x31], al
mov al, byte [rsp + 0xd8]
mov byte [rcx + 0x32], al
mov eax, dword [rsp + 0x80]
mov dword [rcx + 0x33], eax
mov al, byte [rsp + 0x84]
mov byte [rcx + 0x37], al
mov rdx, qword [rsp + 0x2e0]
mov rsi, qword [rsp + 0x60]
mov r8, rsi
call fcn.140048713
lea rcx, [rsp + 0x1d0]
mov rdx, qword [rsp + 0x68]
mov r8, rsi
call fcn.140048ef6
mov rbp, qword [rsp + 0x2e8]
shr rbp, 0x30
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], 8
mov qword [rsp + 0x50], r15
add rbp, 0xfffffffffffffffe
je 0x1400357ca
mov r12, qword [rdi + 0x38]
mov rax, qword [rdi + 0x40]
shl rax, 3
lea r14, [rax + rax*4]
lea rax, [r12 - 0x24]
mov qword [rsp + 0x38], rax
mov edi, 8
xor r13d, r13d
test r14, r14
je 0x1400357ca
mov eax, dword [r12 + r14 - 0x28]
cmp rax, 1
je 0x1400352c8
cmp eax, 5
je 0x1400355e4
cmp eax, 6
jne 0x1400357ba
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov rsi, rax
lea rax, [0x14007679e]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [0x1400a28c8]
mov rdx, 0xffffffffd8a139ce
xor rcx, rdx
add rcx, 0xffffffffb445a9b3
rol rcx, 2
add rcx, 0xffffffff85d60571
rol rcx, 5
movzx ecx, cx
mov rbx, qword [rax + rcx]
movabs rdx, 0x6f7565b7173026a5
xor rbx, rdx
mov r15b, byte [rax + rcx + 8]
xor r15b, 0x96
jmp 0x140035650
mov r15, r12
mov rax, qword [rsp + 0x38]
add rax, r14
mov qword [rsp + 0x180], rax
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov rsi, rax
lea rax, [0x140080fc1]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [0x1400a28b8]
mov edx, 0x2bdcd92d
add rcx, rdx
rol rcx, 5
mov r9d, 0xffff
and rcx, r9
movzx eax, word [rax + rcx]
xor eax, 0xe221
mov word [rsp + 0x300], ax
lea rax, [rsp + 0x300]
mov qword [rsp + 0xb8], rax
mov r8d, 2
mov qword [rsp + 0xc0], r8
lea rax, [0x1400832fb]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [0x1400a28c0]
mov rdx, rcx
shr rdx, 9
xor rdx, rcx
mov rcx, 0xffffffffda31ae07
sub rcx, rdx
xor rcx, 0xffffffffa282cc75
mov rdx, rcx
shr rdx, 0x18
xor rdx, rcx
rol rdx, 4
and rdx, r9
movzx eax, word [rax + rdx]
xor eax, 0x1640
mov word [rsp + 0x2c8], ax
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r8
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x1d0], rax
lea rcx, [0x14001f460]
mov qword [rsp + 0x1d8], rcx
lea rax, [rsp + 0x180]
mov qword [rsp + 0x1e0], rax
lea rax, [0x140032329]
mov qword [rsp + 0x1e8], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
lea rax, [0x140085888]
mov qword [rsp + 0xe0], rax
mov eax, 3
mov qword [rsp + 0xe8], rax
xor ebx, ebx
mov qword [rsp + 0x100], rbx
lea r12, [rsp + 0x1d0]
mov qword [rsp + 0xf0], r12
mov qword [rsp + 0xf8], rax
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0xe0]
call fcn.14001ad30
movabs rax, 0x10000000a
lea rcx, [rsp + 0x158]
mov qword [rcx], rax
mov dword [rcx + 8], 0
mov rcx, qword [r15 + r14 - 0x18]
mov rdx, qword [r15 + r14 - 0x10]
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x200], 0x20
mov byte [rsp + 0x208], 3
mov qword [rsp + 0x1d0], rbx
mov qword [rsp + 0x1e0], rbx
lea rax, [rsp + 0x80]
mov qword [rsp + 0x1f0], rax
lea rax, [0x140084f58]
mov qword [rsp + 0x1f8], rax
mov r8, r12
call fcn.14005b880
test al, al
jne 0x140035d2d
movups xmm0, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0xe0], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0xf8]
movabs rbx, 0x100000010
mov qword [rax], rbx
mov dword [rax + 8], 0
mov rax, qword [rsp + 0x160]
mov qword [rsi + 0x20], rax
movups xmm0, xmmword [rsp + 0x140]
movups xmm1, xmmword [rsp + 0x150]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsi + 0x48], rax
movaps xmm0, xmmword [rsp + 0xe0]
mov rax, qword [rsp + 0xf0]
mov qword [rsi + 0x38], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsi + 0x40], rax
movups xmmword [rsi + 0x28], xmm0
cmp r13, qword [rsp + 0x40]
jne 0x1400355b9
lea rcx, [rsp + 0x40]
mov rdx, r13
call fcn.14003284b
mov rdi, qword [rsp + 0x48]
mov r13, qword [rsp + 0x50]
mov r12, r15
lea rax, [r13*2]
add rax, r13
mov ecx, 2
mov qword [rdi + rax*8], rcx
mov qword [rdi + rax*8 + 8], rsi
mov qword [rdi + rax*8 + 0x10], rcx
mov r13, qword [rsp + 0x50]
jmp 0x1400357b2
mov al, byte [0x1400a3530]
mov edx, 0x50
xor ecx, ecx
call fcn.140062670
test rax, rax
je 0x140035d1e
mov rsi, rax
lea rax, [0x14007c51a]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [0x1400a28d0]
mov edx, 0x7f26a16b
add rcx, rdx
mov edx, ecx
shr edx, 0xe
xor rdx, rcx
rol rdx, 1
movzx ecx, dx
mov rbx, qword [rax + rcx]
movabs rdx, 0x82397c6c302d81e4
xor rbx, rdx
mov r15b, byte [rax + rcx + 8]
xor r15b, 0x76
mov ecx, 9
call fcn.140028b75
mov rdi, rax
mov r13, rdx
mov qword [rdx], rbx
mov byte [rdx + 8], r15b
mov rcx, qword [r12 + r14 - 0x18]
mov rdx, qword [r12 + r14 - 0x10]
xor ebx, ebx
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], 1
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x200], 0x20
mov byte [rsp + 0x208], 3
mov qword [rsp + 0x1d0], rbx
mov qword [rsp + 0x1e0], rbx
lea rax, [rsp + 0x140]
mov qword [rsp + 0x1f0], rax
lea rax, [0x140084f58]
mov qword [rsp + 0x1f8], rax
lea r8, [rsp + 0x1d0]
call fcn.14005b880
test al, al
jne 0x140035d2d
movups xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0xe0], xmm0
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0xf0], rax
lea rcx, [rsp + 0xf8]
mov dword [rcx + 8], ebx
xor eax, eax
movabs rbx, 0x100000010
mov qword [rcx], rbx
mov qword [rsi], rdi
mov qword [rsi + 8], r13
mov qword [rsi + 0x10], 9
movabs rcx, 0x10000000a
mov qword [rsi + 0x18], rcx
mov dword [rsi + 0x20], eax
mov rax, qword [rsp + 0x100]
mov qword [rsi + 0x48], rax
movaps xmm0, xmmword [rsp + 0xe0]
mov rax, qword [rsp + 0xf0]
mov qword [rsi + 0x38], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsi + 0x40], rax
movups xmmword [rsi + 0x28], xmm0
mov r13, qword [rsp + 0x50]
cmp r13, qword [rsp + 0x40]
jne 0x14003578f
lea rcx, [rsp + 0x40]
mov rdx, r13
call fcn.14003284b
mov r13, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
lea rax, [r13*2]
add rax, r13
mov ecx, 2
mov qword [rdi + rax*8], rcx
mov qword [rdi + rax*8 + 8], rsi
mov qword [rdi + rax*8 + 0x10], rcx
inc r13
mov qword [rsp + 0x50], r13
dec rbp
add r14, 0xffffffffffffffd8
test rbp, rbp
jne 0x140035220
lea rdi, [rsp + 0x1d0]
movabs rax, 0x8000000000000000
mov qword [rdi], rax
mov al, 0x13
mov byte [rdi + 0x18], al
mov byte [rdi + 0x1c], al
xor r15d, r15d
mov dword [rdi + 0x20], r15d
mov byte [rdi + 0x24], al
mov byte [rdi + 0x28], al
mov dword [rdi + 0x2c], r15d
mov word [rdi + 0x30], r15w
mov byte [rdi + 0x32], 0xf
lea rax, [0x140083ebe]
lea r14, [rsp + 0xe0]
mov qword [r14], rax
mov rax, qword [r14]
mov rcx, qword [0x1400a28d8]
not rcx
mov edx, ecx
shr edx, 0x11
xor rdx, rcx
rol rdx, 3
mov ecx, 0xffff
and rdx, rcx
movabs rsi, 0x3ad6703f468fd5c4
xor rsi, qword [rax + rdx]
mov ecx, 8
call fcn.140028b75
mov qword [rdx], rsi
mov qword [r14], rax
mov qword [r14 + 8], rdx
mov qword [r14 + 0x10], 8
mov qword [r14 + 0x18], rbx
mov dword [r14 + 0x20], r15d
lea rsi, [rsp + 0x140]
mov rcx, rsi
mov rdx, r14
call fcn.1400485e7
mov rcx, rdi
call fcn.1400328f4
mov rax, qword [rsi + 0x10]
mov qword [rdi + 0x10], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rdi], xmm0
mov r8, rbx
mov rbx, qword [rdi]
movups xmm0, xmmword [rdi + 0x18]
movaps xmmword [rsi + 0x10], xmm0
mov rax, qword [rdi + 8]
mov qword [rsi], rax
mov rax, qword [rdi + 0x10]
mov qword [rsi + 8], rax
mov al, byte [rdi + 0x31]
mov byte [rsp + 0x38], al
mov bpl, byte [rdi + 0x32]
mov eax, dword [rdi + 0x33]
mov dword [rsp + 0x80], eax
mov al, byte [rdi + 0x37]
mov byte [rsp + 0x84], al
mov dword [rsi + 0x18], r15d
movabs rax, 0x100000009
mov qword [rsi + 0x10], rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, qword [rsi + 0x10]
mov qword [rdi + 0x10], rdx
mov edx, dword [rsi + 0x18]
mov dword [rdi + 0x18], edx
mov edx, dword [rsi + 0x1c]
mov dword [rdi + 0x1c], edx
mov qword [rdi], rax
mov qword [rdi + 8], rcx
mov dword [rdi + 0x24], r15d
mov qword [rdi + 0x1c], r8
mov rax, qword [rdi + 0x20]
mov qword [r14 + 0x28], rax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov qword [r14 + 0x18], rdx
mov edx, dword [rdi + 0x18]
mov dword [r14 + 0x20], edx
mov edx, dword [rdi + 0x1c]
mov dword [r14 + 0x24], edx
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rcx
mov rcx, rbx
mov edx, ebp
mov r13, qword [rsp + 0x2e8]
mov r8, r13
call fcn.140048647
mov rcx, rax
shr rcx, 0x20
movabs rdx, 0xfffe00000000
add rdx, rax
movabs r8, 0xffff00000000
and rdx, r8
cmp cx, 3
cmovb rdx, r15
lea ecx, [rax + 1]
movabs r8, 0xffff0000ffff0000
and r8, rax
movzx r12d, cx
or r12, r8
or r12, rdx
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rdi], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rdi + 0x10], rax
mov word [rdi + 0x51], r15w
mov dword [rdi + 0x53], 0x100
mov byte [rdi + 0x57], r15b
movabs rax, 0x8000000000000001
mov qword [rdi + 0x18], rax
mov byte [rdi + 0x50], 0x10
mov qword [rdi + 0x58], r15
mov word [rdi + 0x60], 2
mov qword [r14], rbx
mov byte [r14 + 0x30], 1
mov al, byte [rsp + 0x38]
mov byte [r14 + 0x31], al
mov byte [r14 + 0x32], bpl
mov eax, dword [rsp + 0x80]
mov dword [r14 + 0x33], eax
mov al, byte [rsp + 0x84]
mov byte [r14 + 0x37], al
lea rcx, [rsp + 0xe0]
mov rdx, r13
mov rbx, qword [rsp + 0x60]
mov r8, rbx
call fcn.140048713
lea rdi, [rsp + 0x1d0]
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.140048ef6
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov word [rsi + 0x30], r15w
mov byte [rsi + 0x32], r15b
mov al, 0x13
mov byte [rsi + 0x18], al
mov byte [rsi + 0x1c], al
mov dword [rsi + 0x20], r15d
mov byte [rsi + 0x24], al
mov byte [rsi + 0x28], al
mov dword [rsi + 0x2c], r15d
lea rax, [0x140075ded]
mov qword [rdi], rax
mov rcx, qword [rdi]
movabs rax, 0xffdc7bac81dd3d2c
imul rax, qword [0x1400a28e0]
rol rax, 6
add rax, 0x41bc41cb
rol rax, 5
mov edx, 0xffff
and rax, rdx
add rax, rcx
xorps xmm0, xmm0
movaps xmmword [rdi + 0x30], xmm0
movaps xmmword [rdi + 0x20], xmm0
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
mov rcx, 0xfffffffffffffff8
lea rdx, [0x1400858b8]
mov r8, qword [rcx + rdx + 8]
xor r8, qword [rax + rcx + 8]
mov qword [rsp + rcx + 0x1d8], r8
add rcx, 8
cmp rcx, 0x38
jb 0x140035aa5
mov ecx, 0xd0df1d7a
xor ecx, dword [rax + 0x40]
lea rdx, [rsp + 0x1d0]
mov dword [rdx + 0x40], ecx
movzx ecx, byte [rax + 0x46]
movzx eax, word [rax + 0x44]
xor eax, 0xdc82
mov word [rdx + 0x44], ax
xor cl, 0x78
mov byte [rdx + 0x46], cl
lea rdi, [rsp + 0xe0]
mov r8d, 0x47
mov rcx, rdi
call fcn.140074b90
mov ecx, 0x47
call fcn.140028b75
mov r14, rax
mov r15, rdx
mov r8d, 0x47
mov rcx, rdx
mov rdx, rdi
call fcn.140074b90
lea rdx, [rsp + 0x40]
mov qword [rdx], r14
mov qword [rdx + 8], r15
mov qword [rdx + 0x10], 0x47
lea rdi, [rsp + 0x1d0]
mov rcx, rdi
call fcn.1400438c1
lea r14, [rsp + 0x140]
mov rcx, r14
call fcn.1400328f4
mov rax, qword [rdi + 0x10]
mov qword [r14 + 0x10], rax
movups xmm0, xmmword [rdi]
movaps xmmword [r14], xmm0
mov rax, qword [r14 + 0x20]
mov qword [rsp + 0xa0], rax
movaps xmmword [rsp + 0x80], xmm0
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x90], rax
mov rax, qword [r14 + 0x18]
mov qword [rsp + 0x98], rax
mov eax, dword [rsi + 0x31]
mov ecx, dword [rsi + 0x34]
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xbb], ecx
movabs rax, 0x100000010
mov qword [rsp + 0xa4], rax
mov dword [rsp + 0xac], 0
movaps xmm0, xmmword [rsp + 0x80]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov qword [rdi + 0x20], rdx
mov edx, dword [rsp + 0xa8]
mov dword [rdi + 0x28], edx
mov edx, dword [rsp + 0xac]
mov dword [rdi + 0x2c], edx
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], rcx
movaps xmmword [rdi], xmm0
mov byte [rdi + 0x30], 1
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbb]
mov dword [rdi + 0x34], ecx
mov dword [rdi + 0x31], eax
lea rcx, [rsp + 0x1d0]
mov rdx, qword [rsp + 0x330]
mov r8, rbx
call fcn.140048713
mov rcx, qword [rsp + 0x328]
mov rdx, qword [rsp + 0x320]
call fcn.140043d54
mov rcx, qword [rsp + 0x340]
mov rdx, qword [rsp + 0x338]
call fcn.140043d54
movaps xmm6, xmmword [rsp + 0x3a0]
movaps xmm7, xmmword [rsp + 0x3b0]
add rsp, 0x3c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str._6GDT___BPu_K___y__q__o____y
jmp 0x140035cf0
lea r8, str._6GDT___BPu_K___y__q__o____y
jmp 0x140035d00
lea r8, str._6GDT___BPu_K___y__q__o____y
mov ecx, 2
mov edx, 2
call fcn.140077490
lea r8, str._6GDT___BPu_K___y__q__o____y
mov ecx, 3
mov edx, 3
call fcn.140077490
lea r8, str._6GDT___BPu_K___y__q__o____y
mov ecx, 4
mov edx, 4
call fcn.140077490
lea r8, str._6GDT___BPu_K___y__q__o____y
jmp 0x140035cf0
lea r8, str._6GDT___BPu_K___y__q__o____y
jmp 0x140035d00
lea r8, str._6GDT___BPu_K___y__q__o____y
xor ecx, ecx
xor edx, edx
call fcn.140077490
lea r8, str._6GDT___BPu_K___y__q__o____y
mov ecx, 1
mov edx, 1
call fcn.140077490
mov ecx, 8
mov edx, 0x28
call fcn.140075ee0
mov ecx, 8
mov edx, 0x50
call fcn.140075ee0
lea rax, [0x140086d98]
mov qword [rsp + 0x20], rax
lea rcx, str.a_Display_implementation_returned_an_error_unexpectedly
lea r9, [0x1400850f0]
lea r8, [rsp + 0xb8]
mov edx, 0x37
call fcn.140077920
mov ecx, 4
mov edx, 0x18
call fcn.140075ee0
mov ecx, 4
mov edx, 0x3c
call fcn.140075ee0
lea rax, [0x140087330]
lea rcx, [rsp + 0x1d0]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, [0x140092800]
mov qword [rcx + 0x10], rax
xorpd xmm0, xmm0
movupd xmmword [rcx + 0x18], xmm0
lea rdx, [0x140087340]
call fcn.1400773d0
lea rcx, [0x1400850d0]
lea r8, str._6GDT___BPu_K___y__q__o____y
mov edx, 0x1c
call fcn.1400779e0
mov ecx, 8
mov edx, 0x90
call fcn.140075ee0
mov ecx, 8
jmp 0x140035d5e
mov ecx, 8
mov rdx, rdi
call fcn.140075ee0
int3