Function at 0x18005bd30
Capabilities:
Authenticate hmac
Encode data using xor
Parse credit card information
Parse pe header

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2c8]
sub rsp, 0x3c8
cmp qword [0x180072c20], 0
jne 0x18005c55b
mov eax, dword [0x18006bf70]
lea rcx, [rsp + 0x71]
movups xmm0, xmmword [0x18006bf38]
mov dword [rbp - 0x57], eax
lea rax, [rsp + 0x71]
movups xmm1, xmmword [0x18006bf48]
mov edi, 1
mov r13d, 3
sub rdi, rax
mov r10d, 6
mov eax, 2
mov r11d, 7
sub rax, rcx
mov esi, 9
mov qword [rbp + 0x328], rax
lea rcx, [rsp + 0x71]
lea rax, [rsp + 0x71]
mov r14d, 0xa
sub r13, rax
mov r15d, 0xb
mov eax, 4
mov r12d, 0xc
sub rax, rcx
xor ebx, ebx
mov qword [rbp - 0x30], rax
lea rcx, [rsp + 0x71]
mov eax, 5
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp - 0x28], rax
lea rax, [rsp + 0x71]
sub r10, rax
lea rax, [rsp + 0x71]
sub r11, rax
mov eax, 8
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp - 0x20], rax
lea rax, [rsp + 0x71]
sub rsi, rax
lea rax, [rsp + 0x71]
sub r14, rax
lea rax, [rsp + 0x71]
sub r15, rax
lea rax, [rsp + 0x71]
sub r12, rax
mov eax, 0xd
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp - 0x18], rax
mov eax, 0xe
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp - 0x10], rax
mov eax, 0xf
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp - 8], rax
mov eax, 0x10
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp], rax
mov eax, 0x11
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 8], rax
mov eax, 0x12
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x10], rax
mov eax, 0x13
sub rax, rcx
lea rcx, [rsp + 0x71]
movups xmmword [rsp + 0x71], xmm0
mov qword [rbp + 0x18], rax
mov eax, 0x14
movups xmm0, xmmword [0x18006bf58]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006bf68]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
sub rax, rcx
movabs r9, 0x47ae147ae147ae15
mov qword [rbp + 0x20], rax
lea rcx, [rsp + 0x71]
mov eax, 0x15
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x28], rax
mov eax, 0x16
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x30], rax
mov eax, 0x17
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x38], rax
mov eax, 0x18
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x40], rax
mov eax, 0x19
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x48], rax
mov eax, 0x1a
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x50], rax
mov eax, 0x1b
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x58], rax
mov eax, 0x1c
sub rax, rcx
lea rcx, [rsp + 0x71]
mov qword [rbp + 0x60], rax
mov eax, 0x1d
sub rax, rcx
mov qword [rbp + 0x68], rax
nop dword [rax]
nop dword [rax + rax]
mov rax, r9
lea r8, [rsp + 0x71]
mul rbx
add r8, rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [rdi + r8]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x328]
add rcx, r8
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x30]
add rcx, r8
add al, 0x34
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x28]
add rcx, r8
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x36
lea rcx, [r10 + r8]
xor byte [r8 + 5], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r11 + r8]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x20]
add al, 0x38
add rcx, r8
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [rsi + r8]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r14 + r8]
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r15 + r8]
add al, 0x3b
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x3c
xor byte [r8 + 0xb], al
lea rcx, [r12 + r8]
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x18]
add rcx, r8
add al, 0x3d
xor byte [r8 + 0xc], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x10]
add rcx, r8
add al, 0x3e
xor byte [r8 + 0xd], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 8]
add rcx, r8
add al, 0x3f
xor byte [r8 + 0xe], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp]
add rcx, r8
add al, 0x40
xor byte [r8 + 0xf], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 8]
add rcx, r8
add al, 0x41
xor byte [r8 + 0x10], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x42
mov rcx, qword [rbp + 0x10]
xor byte [r8 + 0x11], al
add rcx, r8
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x18]
add rcx, r8
add al, 0x43
xor byte [r8 + 0x12], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x20]
add rcx, r8
add al, 0x44
xor byte [r8 + 0x13], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x28]
add rcx, r8
add al, 0x45
xor byte [r8 + 0x14], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x30]
add rcx, r8
add al, 0x46
xor byte [r8 + 0x15], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x38]
add al, 0x47
add rcx, r8
xor byte [r8 + 0x16], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x40]
add rcx, r8
add al, 0x48
xor byte [r8 + 0x17], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x48]
add rcx, r8
add al, 0x49
xor byte [r8 + 0x18], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x50]
add rcx, r8
add al, 0x4a
xor byte [r8 + 0x19], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x58]
add rcx, r8
add al, 0x4b
xor byte [r8 + 0x1a], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x60]
add al, 0x4c
add rcx, r8
xor byte [r8 + 0x1b], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x68]
add al, 0x4d
add rcx, r8
xor byte [r8 + 0x1c], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
add rbx, 0x1e
sub al, cl
add al, 0x4e
xor byte [r8 + 0x1d], al
cmp rbx, 0x3c
jb 0x18005bf80
movzx ecx, byte [0x18006bf34]
lea rdx, [rsp + 0x71]
mov eax, dword [0x18006bf30]
xor cl, 0x4d
movups xmm0, xmmword [0x18006bf18]
mov dword [rsp + 0x48], eax
xor al, 0x49
movsd xmm1, qword [0x18006bf28]
xor byte [rsp + 0x49], 0x4a
xor byte [rsp + 0x4a], 0x4b
xor byte [rsp + 0x4b], 0x4c
movups xmmword [rsp + 0x30], xmm0
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
xor byte [rsp + 0x36], 0x37
xor byte [rsp + 0x37], 0x38
xor byte [rsp + 0x38], 0x39
xor byte [rsp + 0x39], 0x3a
xor byte [rsp + 0x3a], 0x3b
xor byte [rsp + 0x3b], 0x3c
xor byte [rsp + 0x3c], 0x3d
xor byte [rsp + 0x3d], 0x3e
xor byte [rsp + 0x3e], 0x3f
xor byte [rsp + 0x3f], 0x40
movsd qword [rsp + 0x40], xmm1
xor byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x42
xor byte [rsp + 0x42], 0x43
xor byte [rsp + 0x43], 0x44
xor byte [rsp + 0x44], 0x45
xor byte [rsp + 0x45], 0x46
xor byte [rsp + 0x46], 0x47
xor byte [rsp + 0x47], 0x48
mov byte [rsp + 0x4c], cl
lea rcx, [rsp + 0x30]
mov byte [rsp + 0x30], 0x25
mov byte [rsp + 0x48], al
call fcn.180001140
xor al, al
jmp 0x18005f768
cmp qword [0x180072c78], 0
movaps xmmword [rsp + 0x3b0], xmm6
je 0x18005c572
call fcn.1800613a0
mov rsi, qword [0x18006c5a0]
movdqa xmm6, xmmword [0x18006c590]
mov rcx, rsi
call fcn.180010800
xor ebx, ebx
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0x70], rbx
mov rdi, rax
mov rax, qword [0x180072c20]
mov edx, ebx
lea r15, [0x18006c5b0]
lea r12, [0x18006c5c0]
lea r13, [0x18006c5d0]
mov rcx, qword [rax]
mov r11, qword [rcx + 0x60]
test rsi, rsi
je 0x18005c65a
cmp rsi, 0x40
jb 0x18005c65f
lea rcx, [rsi - 1]
lea rax, [r15 - 1]
add rcx, rdi
add rax, rsi
cmp rdi, rax
ja 0x18005c5e9
cmp rcx, r15
jae 0x18005c65f
mov r8, rsi
and r8, 0xffffffffffffffc0
mov r9, r12
lea rax, [rdi + 0x10]
mov r10, r13
sub r9, rdi
sub r10, rdi
mov rcx, r15
sub rcx, rdi
nop word [rax + rax]
movdqu xmm0, xmmword [rcx + rax - 0x10]
add rdx, 0x40
movdqu xmm1, xmmword [rcx + rax]
lea rax, [rax + 0x40]
pxor xmm0, xmm6
pxor xmm1, xmm6
movdqu xmmword [rax - 0x50], xmm0
movdqu xmm0, xmmword [r9 + rax - 0x40]
movdqu xmmword [rax - 0x40], xmm1
pxor xmm0, xmm6
movdqu xmm1, xmmword [r10 + rax - 0x40]
movdqu xmmword [rax - 0x30], xmm0
pxor xmm1, xmm6
movdqu xmmword [rax - 0x20], xmm1
cmp rdx, r8
jb 0x18005c610
cmp rdx, rsi
jae 0x18005c684
mov r9, r15
lea rcx, [rdi + rdx]
sub r9, rdi
mov r8, rsi
sub r8, rdx
nop
movzx eax, byte [rcx + r9]
lea rcx, [rcx + 1]
xor al, 0xeb
mov byte [rcx - 1], al
sub r8, 1
jne 0x18005c670
mov rcx, qword [0x180072c20]
lea rax, [0x180072c50]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, rsi
mov rdx, rdi
call r11
mov dword [rbp + 0x310], eax
test eax, eax
jns 0x18005d5fc
movups xmm0, xmmword [0x18006bfb8]
mov ecx, dword [0x18006bff0]
lea rdx, [rsp + 0x71]
movups xmm1, xmmword [0x18006bfc8]
mov edi, 1
mov dword [rbp - 0x57], ecx
sub rdi, rdx
mov qword [rbp + 0x320], rbx
lea rdx, [rsp + 0x71]
mov eax, 2
sub rax, rdx
mov r13d, 3
mov qword [rbp + 0x68], rax
lea rdx, [rsp + 0x71]
sub r13, rdx
mov eax, 4
lea rdx, [rsp + 0x71]
mov r10d, 6
sub rax, rdx
mov r11d, 7
mov qword [rbp + 0x58], rax
lea rdx, [rsp + 0x71]
mov eax, 5
mov esi, 9
sub rax, rdx
mov r14d, 0xa
mov qword [rbp + 0x50], rax
lea rdx, [rsp + 0x71]
sub r10, rdx
mov eax, 8
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x48], r10
sub r11, rdx
mov r15d, 0xb
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x40], r11
sub rax, rdx
mov r12d, 0xc
mov qword [rbp + 0x38], rax
lea rdx, [rsp + 0x71]
sub rsi, rdx
mov eax, 0xd
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x30], rsi
sub r14, rdx
mov rcx, rbx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x28], r14
sub r15, rdx
lea rdx, [rsp + 0x71]
sub r12, rdx
mov qword [rbp + 0x20], r15
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x18], r12
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x10], rax
mov eax, 0xe
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 8], rax
mov eax, 0xf
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp], rax
mov eax, 0x10
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 8], rax
mov eax, 0x11
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x10], rax
mov eax, 0x12
movups xmmword [rsp + 0x71], xmm0
sub rax, rdx
movups xmm0, xmmword [0x18006bfd8]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006bfe8]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
mov r10, qword [rbp + 0x58]
lea rdx, [rsp + 0x71]
mov r11, qword [rbp + 0x50]
mov rbx, rdi
mov rdi, qword [rbp + 0x68]
movabs r9, 0x47ae147ae147ae15
mov rsi, qword [rbp + 0x48]
mov r14, qword [rbp + 0x40]
mov r15, qword [rbp + 0x38]
mov r12, qword [rbp + 0x30]
mov qword [rbp - 0x18], rax
mov eax, 0x13
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x20], rax
mov eax, 0x14
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x28], rax
mov eax, 0x15
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x30], rax
mov eax, 0x16
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0xc0], rax
mov eax, 0x17
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0xc8], rax
mov eax, 0x18
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0xd0], rax
mov eax, 0x19
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x90], rax
mov eax, 0x1a
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x98], rax
mov eax, 0x1b
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0xa0], rax
mov eax, 0x1c
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0xa8], rax
mov eax, 0x1d
sub rax, rdx
mov qword [rbp + 0xb0], rax
nop
mov rax, r9
lea r8, [rsp + 0x71]
mul rcx
add r8, rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [rbx + r8]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [rdi + r8]
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r10 + r8]
add al, 0x34
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r11 + r8]
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [rsi + r8]
add al, 0x36
xor byte [r8 + 5], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r14 + r8]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r15 + r8]
add al, 0x38
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r12 + r8]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x28]
add rcx, r8
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x20]
add al, 0x3b
add rcx, r8
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x18]
add al, 0x3c
xor byte [r8 + 0xb], al
add rcx, r8
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x10]
add rcx, r8
add al, 0x3d
xor byte [r8 + 0xc], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 8]
add rcx, r8
add al, 0x3e
xor byte [r8 + 0xd], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp]
add rcx, r8
add al, 0x3f
xor byte [r8 + 0xe], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 8]
add rcx, r8
add al, 0x40
xor byte [r8 + 0xf], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x10]
add al, 0x41
add rcx, r8
xor byte [r8 + 0x10], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
add al, 0x42
xor byte [r8 + 0x11], al
mov rax, r9
mov rcx, qword [rbp - 0x18]
add rcx, r8
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x20]
add rcx, r8
add al, 0x43
xor byte [r8 + 0x12], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x28]
add rcx, r8
add al, 0x44
xor byte [r8 + 0x13], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x30]
add rcx, r8
add al, 0x45
xor byte [r8 + 0x14], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0xc0]
add rcx, r8
add al, 0x46
xor byte [r8 + 0x15], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0xc8]
add rcx, r8
add al, 0x47
xor byte [r8 + 0x16], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0xd0]
add rcx, r8
add al, 0x48
xor byte [r8 + 0x17], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x90]
add rcx, r8
add al, 0x49
xor byte [r8 + 0x18], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x98]
add rcx, r8
add al, 0x4a
xor byte [r8 + 0x19], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0xa0]
add rcx, r8
add al, 0x4b
xor byte [r8 + 0x1a], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0xa8]
add rcx, r8
add al, 0x4c
xor byte [r8 + 0x1b], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0xb0]
add al, 0x4d
add rcx, r8
xor byte [r8 + 0x1c], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x320]
add al, 0x4e
add rcx, 0x1e
xor byte [r8 + 0x1d], al
mov qword [rbp + 0x320], rcx
cmp rcx, 0x3c
jb 0x18005c920
mov eax, dword [0x18006bfb0]
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x68], eax
mov edi, 1
movups xmm0, xmmword [0x18006bf78]
lea rax, [rsp + 0x30]
mov r13d, 3
movups xmm1, xmmword [0x18006bf88]
sub rdi, rax
mov r10d, 6
mov eax, 2
mov r11d, 7
sub rax, rcx
mov esi, 9
mov qword [rbp + 0x328], rax
lea rcx, [rsp + 0x30]
lea rax, [rsp + 0x30]
mov r14d, 0xa
sub r13, rax
mov r15d, 0xb
mov eax, 4
mov r12d, 0xc
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x30], rax
mov eax, 5
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x28], rax
lea rax, [rsp + 0x30]
sub r10, rax
lea rax, [rsp + 0x30]
sub r11, rax
mov eax, 8
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x20], rax
lea rax, [rsp + 0x30]
sub rsi, rax
lea rax, [rsp + 0x30]
sub r14, rax
lea rax, [rsp + 0x30]
sub r15, rax
lea rax, [rsp + 0x30]
sub r12, rax
mov eax, 0xd
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x18], rax
mov eax, 0xe
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x10], rax
mov eax, 0xf
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 8], rax
mov eax, 0x10
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp], rax
mov eax, 0x11
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 8], rax
mov eax, 0x12
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x10], rax
mov eax, 0x13
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x18], rax
mov eax, 0x14
movups xmmword [rsp + 0x30], xmm0
sub rax, rcx
movups xmm0, xmmword [0x18006bf98]
movups xmmword [rsp + 0x40], xmm1
movsd xmm1, qword [0x18006bfa8]
movups xmmword [rsp + 0x50], xmm0
movsd qword [rsp + 0x60], xmm1
mov rbx, qword [rbp + 0x70]
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x20], rax
mov eax, 0x15
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x28], rax
mov eax, 0x16
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x30], rax
mov eax, 0x17
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x38], rax
mov eax, 0x18
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x40], rax
mov eax, 0x19
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x48], rax
mov eax, 0x1a
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x50], rax
mov eax, 0x1b
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x58], rax
mov eax, 0x1c
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x60], rax
mov eax, 0x1d
sub rax, rcx
mov qword [rbp + 0x68], rax
nop dword [rax]
nop dword [rax + rax]
mov rax, r9
lea r8, [rsp + 0x30]
mul rbx
add r8, rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [rdi + r8]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x328]
add rcx, r8
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x30]
add rcx, r8
add al, 0x34
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x28]
add rcx, r8
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x36
lea rcx, [r8 + r10]
xor byte [r8 + 5], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r11]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x20]
add al, 0x38
add rcx, r8
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + rsi]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r14]
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r15]
add al, 0x3b
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x3c
xor byte [r8 + 0xb], al
lea rcx, [r8 + r12]
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x18]
add rcx, r8
add al, 0x3d
xor byte [r8 + 0xc], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x10]
add rcx, r8
add al, 0x3e
xor byte [r8 + 0xd], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 8]
add rcx, r8
add al, 0x3f
xor byte [r8 + 0xe], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp]
add rcx, r8
add al, 0x40
xor byte [r8 + 0xf], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 8]
add rcx, r8
add al, 0x41
xor byte [r8 + 0x10], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x42
mov rcx, qword [rbp + 0x10]
xor byte [r8 + 0x11], al
add rcx, r8
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x18]
add rcx, r8
add al, 0x43
xor byte [r8 + 0x12], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x20]
add rcx, r8
add al, 0x44
xor byte [r8 + 0x13], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x28]
add rcx, r8
add al, 0x45
xor byte [r8 + 0x14], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x30]
add rcx, r8
add al, 0x46
xor byte [r8 + 0x15], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x38]
add al, 0x47
add rcx, r8
xor byte [r8 + 0x16], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x40]
add rcx, r8
add al, 0x48
xor byte [r8 + 0x17], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x48]
add rcx, r8
add al, 0x49
xor byte [r8 + 0x18], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x50]
add rcx, r8
add al, 0x4a
xor byte [r8 + 0x19], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x58]
add rcx, r8
add al, 0x4b
xor byte [r8 + 0x1a], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x60]
add al, 0x4c
add rcx, r8
xor byte [r8 + 0x1b], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x68]
add al, 0x4d
add rcx, r8
xor byte [r8 + 0x1c], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
add rbx, 0x1e
sub al, cl
add al, 0x4e
xor byte [r8 + 0x1d], al
cmp rbx, 0x3c
jb 0x18005d0e0
mov r8d, dword [rbp + 0x310]
lea rdx, [rsp + 0x71]
lea rcx, [rsp + 0x30]
jmp 0x18005e2c0
mov eax, dword [0x18006c014]
mov r14d, 8
movzx ecx, byte [0x18006c000]
movzx edx, byte [0x18006c010]
xor cl, 0x39
movsd xmm0, qword [str.a_a]
xor dl, 0x39
movsd qword [rbp - 0x50], xmm0
xor byte [rbp - 0x4f], 0x32
xor byte [rbp - 0x4e], 0x33
xor byte [rbp - 0x4d], 0x34
xor byte [rbp - 0x4c], 0x35
xor byte [rbp - 0x4b], 0x36
xor byte [rbp - 0x4a], 0x37
xor byte [rbp - 0x49], 0x38
movsd xmm0, qword [str.ewkwzye9]
mov dword [rbp + 0x318], eax
movzx eax, word [0x18006c018]
xor byte [rbp + 0x319], 0x32
xor byte [rbp + 0x31a], 0x33
xor byte [rbp + 0x31b], 0x34
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x32
xor byte [rbp - 0x3e], 0x33
xor byte [rbp - 0x3d], 0x34
xor byte [rbp - 0x3c], 0x35
xor byte [rbp - 0x3b], 0x36
xor byte [rbp - 0x3a], 0x37
xor byte [rbp - 0x39], 0x38
mov word [rbp + 0x31c], ax
xor al, 0x35
xor byte [rbp + 0x31d], 0x36
mov byte [rbp + 0x31c], al
lea rax, [rbp + 0x318]
mov byte [rbp - 0x48], cl
lea rcx, [rbp - 0x50]
mov qword [rbp + 0x120], rax
mov rax, qword [0x180072c20]
mov byte [rbp - 0x38], dl
lea rdx, [rbp - 0x40]
mov qword [rbp + 0xe0], rcx
mov byte [rbp - 0x50], 0x50
mov dword [rbp + 0xe8], ebx
mov qword [rbp + 0xec], 0x10
mov qword [rbp + 0xf4], rbx
mov dword [rbp + 0xfc], ebx
mov byte [rbp - 0x40], 0x54
mov qword [rbp + 0x100], rdx
mov dword [rbp + 0x108], ebx
mov qword [rbp + 0x10c], 0x10
mov qword [rbp + 0x114], r14
mov dword [rbp + 0x11c], ebx
mov byte [rbp + 0x318], 0x43
mov dword [rbp + 0x128], ebx
mov qword [rbp + 0x12c], 0x1c
mov qword [rbp + 0x134], 0x10
mov dword [rbp + 0x13c], ebx
mov rcx, qword [rax]
mov r10, qword [rcx + 0x58]
mov rcx, rbx
test rsi, rsi
je 0x18005d804
cmp rsi, 0x40
jb 0x18005d7df
lea rdx, [rsi - 1]
lea rax, [r15 - 1]
add rdx, rdi
add rax, rsi
cmp rdi, rax
ja 0x18005d779
cmp rdx, r15
jae 0x18005d7df
mov r8, rsi
and r8, 0xffffffffffffffc0
sub r12, rdi
lea rax, [rdi + 0x10]
sub r13, rdi
mov rdx, r15
sub rdx, rdi
movdqu xmm0, xmmword [rdx + rax - 0x10]
add rcx, 0x40
movdqu xmm1, xmmword [rdx + rax]
lea rax, [rax + 0x40]
pxor xmm0, xmm6
pxor xmm1, xmm6
movdqu xmmword [rax - 0x50], xmm0
movdqu xmm0, xmmword [r12 + rax - 0x40]
movdqu xmmword [rax - 0x40], xmm1
pxor xmm0, xmm6
movdqu xmm1, xmmword [rax + r13 - 0x40]
movdqu xmmword [rax - 0x30], xmm0
pxor xmm1, xmm6
movdqu xmmword [rax - 0x20], xmm1
cmp rcx, r8
jb 0x18005d790
cmp rcx, rsi
jae 0x18005d804
sub r15, rdi
lea rdx, [rdi + rcx]
mov r8, rsi
sub r8, rcx
nop dword [rax]
movzx eax, byte [r15 + rdx]
lea rdx, [rdx + 1]
xor al, 0xeb
mov byte [rdx - 1], al
sub r8, 1
jne 0x18005d7f0
mov rcx, qword [0x180072c20]
lea rax, [0x180072c58]
mov qword [rsp + 0x28], rax
lea rdx, [rbp + 0xe0]
mov r13d, 3
mov qword [rsp + 0x20], rsi
mov r8d, r13d
mov r9, rdi
call r10
mov dword [rbp + 0x310], eax
test eax, eax
jns 0x18005e086
movups xmm0, xmmword [0x18006c060]
mov ecx, dword [0x18006c098]
lea rax, [rsp + 0x71]
movups xmm1, xmmword [0x18006c070]
lea rdx, [rsp + 0x71]
mov dword [rbp - 0x57], ecx
mov edi, 1
mov qword [rbp + 0x320], rbx
sub rdi, rax
mov r10d, 6
mov eax, 2
mov r11d, 7
sub rax, rdx
mov esi, 9
mov qword [rbp + 0x328], rax
lea rdx, [rsp + 0x71]
lea rax, [rsp + 0x71]
mov r15d, 0xb
sub r13, rax
mov r12d, 0xc
mov eax, 4
mov rcx, rbx
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x30], rax
mov eax, 5
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x28], rax
lea rax, [rsp + 0x71]
sub r10, rax
lea rax, [rsp + 0x71]
sub r11, rax
lea rax, [rsp + 0x71]
sub r14, rax
lea rax, [rsp + 0x71]
sub rsi, rax
mov qword [rbp - 0x20], r14
lea rax, [rsp + 0x71]
mov r14d, 0xa
sub r14, rax
lea rax, [rsp + 0x71]
sub r15, rax
lea rax, [rsp + 0x71]
sub r12, rax
mov eax, 0xd
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x18], rax
mov eax, 0xe
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 0x10], rax
mov eax, 0xf
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp - 8], rax
mov eax, 0x10
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp], rax
mov eax, 0x11
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 8], rax
mov eax, 0x12
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x10], rax
mov eax, 0x13
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x18], rax
mov eax, 0x14
movups xmmword [rsp + 0x71], xmm0
sub rax, rdx
movups xmm0, xmmword [0x18006c080]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006c090]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
mov rbx, qword [rbp - 0x28]
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x20], rax
movabs r9, 0x47ae147ae147ae15
mov eax, 0x15
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x28], rax
mov eax, 0x16
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x30], rax
mov eax, 0x17
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x38], rax
mov eax, 0x18
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x40], rax
mov eax, 0x19
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x48], rax
mov eax, 0x1a
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x50], rax
mov eax, 0x1b
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x58], rax
mov eax, 0x1c
sub rax, rdx
lea rdx, [rsp + 0x71]
mov qword [rbp + 0x60], rax
mov eax, 0x1d
sub rax, rdx
mov qword [rbp + 0x68], rax
nop dword [rax + rax]
mov rax, r9
lea r8, [rsp + 0x71]
mul rcx
add r8, rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + rdi]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x328]
add rcx, r8
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x30]
add al, 0x34
add rcx, r8
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + rbx]
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
add al, 0x36
xor byte [r8 + 5], al
lea rcx, [r8 + r10]
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + r11]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x20]
add al, 0x38
add rcx, r8
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + rsi]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + r14]
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + r15]
add al, 0x3b
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
lea rcx, [r8 + r12]
add al, 0x3c
xor byte [r8 + 0xb], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x18]
add rcx, r8
add al, 0x3d
xor byte [r8 + 0xc], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 0x10]
add rcx, r8
add al, 0x3e
xor byte [r8 + 0xd], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp - 8]
add rcx, r8
add al, 0x3f
xor byte [r8 + 0xe], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp]
add rcx, r8
add al, 0x40
xor byte [r8 + 0xf], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 8]
add al, 0x41
add rcx, r8
xor byte [r8 + 0x10], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
add al, 0x42
xor byte [r8 + 0x11], al
mov rax, r9
mov rcx, qword [rbp + 0x10]
add rcx, r8
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x18]
add rcx, r8
add al, 0x43
xor byte [r8 + 0x12], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x20]
add rcx, r8
add al, 0x44
xor byte [r8 + 0x13], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x28]
add rcx, r8
add al, 0x45
xor byte [r8 + 0x14], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x30]
add rcx, r8
add al, 0x46
xor byte [r8 + 0x15], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x38]
add rcx, r8
add al, 0x47
xor byte [r8 + 0x16], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x40]
add rcx, r8
add al, 0x48
xor byte [r8 + 0x17], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x48]
add rcx, r8
add al, 0x49
xor byte [r8 + 0x18], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x50]
add rcx, r8
add al, 0x4a
xor byte [r8 + 0x19], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x58]
add rcx, r8
add al, 0x4b
xor byte [r8 + 0x1a], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x60]
add rcx, r8
add al, 0x4c
xor byte [r8 + 0x1b], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x68]
add al, 0x4d
add rcx, r8
xor byte [r8 + 0x1c], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, byte [rbp + 0x320]
sub al, cl
mov rcx, qword [rbp + 0x320]
add al, 0x4e
add rcx, 0x1e
xor byte [r8 + 0x1d], al
mov qword [rbp + 0x320], rcx
cmp rcx, 0x3c
jb 0x18005da60
movups xmm0, xmmword [0x18006c020]
movzx eax, word [0x18006c058]
movups xmm1, xmmword [0x18006c030]
mov rbx, qword [rbp + 0x70]
movups xmmword [rsp + 0x30], xmm0
mov word [rsp + 0x68], ax
movups xmm0, xmmword [0x18006c040]
movzx eax, byte [0x18006c05a]
movups xmmword [rsp + 0x40], xmm1
mov byte [rsp + 0x6a], al
movsd xmm1, qword [0x18006c050]
movups xmmword [rsp + 0x50], xmm0
movsd qword [rsp + 0x60], xmm1
nop word [rax + rax]
mov rax, r9
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rsp + rbx + 0x30], al
inc rbx
cmp rbx, 0x3b
jb 0x18005e040
mov r8d, dword [rbp + 0x310]
lea rdx, [rsp + 0x71]
lea rcx, [rsp + 0x30]
jmp 0x18005e2c0
mov rcx, qword [0x180072c20]
lea r9, [0x180072c60]
mov dword [rbp + 0x78], 0x40
lea rdx, [rbp + 0x78]
mov qword [rbp + 0x84], 0x10000
mov r15d, 2
mov dword [rbp + 0x7c], r15d
mov r12d, 4
mov dword [rbp + 0x80], r12d
xor r8d, r8d
mov dword [rbp + 0x8c], ebx
mov rax, qword [rcx]
call qword [rax + 0x18]
mov r8d, eax
test eax, eax
jns 0x18005e2d6
movups xmm0, xmmword [0x18006c0d8]
mov ecx, dword [0x18006c110]
movabs r9, 0x47ae147ae147ae15
movups xmm1, xmmword [0x18006c0e8]
mov dword [rbp - 0x57], ecx
movzx ecx, byte [0x18006c114]
movups xmmword [rsp + 0x71], xmm0
mov byte [rbp - 0x53], cl
movups xmm0, xmmword [0x18006c0f8]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006c108]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
nop word [rax + rax]
mov rax, r9
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rsp + rbx + 0x71], al
inc rbx
cmp rbx, 0x3d
jb 0x18005e130
movzx edx, word [0x18006c0d4]
mov ecx, dword [str.DR_tj]
movups xmm1, xmmword [0x18006c0b0]
mov dword [rsp + 0x60], ecx
xor cl, 0x61
movups xmm0, xmmword [0x18006c0a0]
xor byte [rsp + 0x61], 0x62
xor byte [rsp + 0x62], 0x31
xor byte [rsp + 0x63], 0x32
movups xmmword [rsp + 0x30], xmm0
xor byte [rsp + 0x31], 0x32
movups xmm0, xmmword [0x18006c0c0]
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
xor byte [rsp + 0x36], 0x37
xor byte [rsp + 0x37], 0x38
xor byte [rsp + 0x38], 0x39
xor byte [rsp + 0x39], 0x3a
xor byte [rsp + 0x3a], 0x3b
xor byte [rsp + 0x3b], 0x3c
xor byte [rsp + 0x3c], 0x3d
xor byte [rsp + 0x3d], 0x3e
xor byte [rsp + 0x3e], 0x3f
xor byte [rsp + 0x3f], 0x40
movups xmmword [rsp + 0x40], xmm1
xor byte [rsp + 0x41], 0x42
xor byte [rsp + 0x42], 0x43
xor byte [rsp + 0x43], 0x44
xor byte [rsp + 0x44], 0x45
xor byte [rsp + 0x45], 0x46
xor byte [rsp + 0x46], 0x47
xor byte [rsp + 0x47], 0x48
xor byte [rsp + 0x48], 0x49
xor byte [rsp + 0x49], 0x4a
xor byte [rsp + 0x4a], 0x4b
xor byte [rsp + 0x4b], 0x4c
xor byte [rsp + 0x4c], 0x4d
xor byte [rsp + 0x4d], 0x4e
xor byte [rsp + 0x4e], 0x4f
xor byte [rsp + 0x4f], 0x50
movups xmmword [rsp + 0x50], xmm0
xor byte [rsp + 0x51], 0x52
xor byte [rsp + 0x52], 0x53
xor byte [rsp + 0x53], 0x54
xor byte [rsp + 0x54], 0x55
xor byte [rsp + 0x55], 0x56
xor byte [rsp + 0x56], 0x57
xor byte [rsp + 0x57], 0x58
xor byte [rsp + 0x58], 0x59
xor byte [rsp + 0x59], 0x5a
xor byte [rsp + 0x5a], 0x5b
xor byte [rsp + 0x5b], 0x5c
xor byte [rsp + 0x5c], 0x5d
xor byte [rsp + 0x5d], 0x5e
xor byte [rsp + 0x5e], 0x5f
xor byte [rsp + 0x5f], 0x60
mov word [rsp + 0x64], dx
xor dl, 0x33
movd eax, xmm1
mov byte [rsp + 0x60], cl
lea rcx, [rsp + 0x30]
mov byte [rsp + 0x64], dl
lea rdx, [rsp + 0x71]
xor al, 0x41
mov byte [rsp + 0x30], 0x25
mov byte [rsp + 0x40], al
movd eax, xmm0
xor al, 0x51
xor byte [rsp + 0x65], 0x34
mov byte [rsp + 0x50], al
call fcn.180001140
xor bl, bl
movabs rdi, 0x7ffffffdfffe
jmp 0x18005f742
mov rdi, qword [0x18006c5a8]
mov rcx, rdi
call fcn.180010800
mov rcx, qword [0x180072c20]
mov r10, rax
mov qword [rbp + 0x320], rax
lea r11, [0x18006c930]
mov rdx, qword [rcx]
mov rsi, qword [rdx + 0x78]
mov rdx, rbx
mov qword [rbp + 0x310], rsi
test rdi, rdi
je 0x18005e3b0
cmp rdi, 0x40
jb 0x18005e3b5
lea rcx, [rdi - 1]
add rcx, rax
lea rax, [r11 - 1]
add rax, rdi
cmp r10, rax
ja 0x18005e339
cmp rcx, r11
jae 0x18005e3b5
mov r8, rdi
and r8, 0xffffffffffffffc0
lea r9, [0x18006c940]
mov rcx, r11
lea rsi, [0x18006c950]
sub r9, r10
sub rsi, r10
lea rax, [r10 + 0x10]
sub rcx, r10
nop
movdqu xmm0, xmmword [rax + rcx - 0x10]
add rdx, 0x40
movdqu xmm1, xmmword [rax + rcx]
lea rax, [rax + 0x40]
pxor xmm0, xmm6
pxor xmm1, xmm6
movdqu xmmword [rax - 0x50], xmm0
movdqu xmm0, xmmword [rax + r9 - 0x40]
movdqu xmmword [rax - 0x40], xmm1
pxor xmm0, xmm6
movdqu xmm1, xmmword [rax + rsi - 0x40]
movdqu xmmword [rax - 0x30], xmm0
pxor xmm1, xmm6
movdqu xmmword [rax - 0x20], xmm1
cmp rdx, r8
jb 0x18005e360
mov rsi, qword [rbp + 0x310]
cmp rdx, rdi
jae 0x18005e3d6
sub r11, r10
lea rcx, [r10 + rdx]
mov r9, rdi
sub r9, rdx
movzx eax, byte [rcx + r11]
lea rcx, [rcx + 1]
xor al, 0xeb
mov byte [rcx - 1], al
sub r9, 1
jne 0x18005e3c2
mov rcx, qword [0x180072c20]
lea rax, [0x180072c70]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, rdi
mov rdx, r10
call rsi
mov r10d, eax
test eax, eax
jns 0x18005e519
movups xmm0, xmmword [0x18006c158]
mov ecx, dword [0x18006c190]
mov r8, rbx
movups xmm1, xmmword [0x18006c168]
mov dword [rbp - 0x57], ecx
movabs r9, 0x47ae147ae147ae15
movzx ecx, byte [0x18006c194]
movups xmmword [rsp + 0x71], xmm0
mov byte [rbp - 0x53], cl
movups xmm0, xmmword [0x18006c178]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006c188]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
nop
mov rax, r9
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x71], al
inc r8
cmp r8, 0x3d
jb 0x18005e450
movups xmm0, xmmword [0x18006c118]
movzx eax, word [0x18006c150]
movups xmm1, xmmword [0x18006c128]
mov word [rsp + 0x68], ax
movzx eax, byte [0x18006c152]
movups xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x6a], al
movups xmm0, xmmword [0x18006c138]
movups xmmword [rsp + 0x40], xmm1
movsd xmm1, qword [0x18006c148]
movups xmmword [rsp + 0x50], xmm0
movsd qword [rsp + 0x60], xmm1
nop dword [rax + rax]
mov rax, r9
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rsp + rbx + 0x30], al
inc rbx
cmp rbx, 0x3b
jb 0x18005e4d0
mov r8d, r10d
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x71]
call fcn.180001140
xor bl, bl
jmp 0x18005f71d
xor eax, eax
lea rcx, [rbp + 0x1c5]
xor edx, edx
mov dword [rbp + 0x1a4], eax
mov r8d, 0xe3
call fcn.1800107e0
mov rcx, qword [0x180072c20]
lea r8, [0x180072c90]
movdqa xmm0, xmmword [0x18006c580]
lea rdx, [rbp + 0x1a0]
mov edi, 1
mov dword [rbp + 0x1a0], ebx
mov dword [rbp + 0x1a8], edi
mov esi, 5
mov dword [rbp + 0x1ac], esi
movdqu xmmword [rbp + 0x1b0], xmm0
mov dword [rbp + 0x1c0], edi
mov byte [rbp + 0x1c4], 0xf
mov rax, qword [rcx]
call qword [rax + 0xa0]
mov dword [rbp + 0x310], eax
test eax, eax
jns 0x18005ed08
movups xmm0, xmmword [0x18006c1d8]
mov ecx, dword [0x18006c210]
mov r8, rbx
movups xmm1, xmmword [0x18006c1e8]
mov dword [rbp - 0x57], ecx
movabs r9, 0x47ae147ae147ae15
movzx ecx, byte [0x18006c214]
movups xmmword [rsp + 0x71], xmm0
mov byte [rbp - 0x53], cl
movups xmm0, xmmword [0x18006c1f8]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006c208]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
nop dword [rax]
mov rax, r9
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x71], al
inc r8
cmp r8, 0x3d
jb 0x18005e5f0
movzx eax, word [0x18006c1d0]
lea rcx, [rsp + 0x30]
movups xmm0, xmmword [0x18006c198]
mov word [rsp + 0x68], ax
lea rax, [rsp + 0x30]
movups xmm1, xmmword [0x18006c1a8]
sub rdi, rax
mov r10d, 6
lea rax, [rsp + 0x30]
mov r11d, 7
sub r15, rax
lea rax, [rsp + 0x30]
sub r13, rax
mov qword [rbp + 0x328], r15
lea rax, [rsp + 0x30]
mov r15d, 0xb
sub r12, rax
lea rax, [rsp + 0x30]
sub rsi, rax
mov qword [rbp - 0x30], r12
lea rax, [rsp + 0x30]
mov qword [rbp - 0x28], rsi
sub r10, rax
mov esi, 9
lea rax, [rsp + 0x30]
mov r12d, 0xc
sub r11, rax
lea rax, [rsp + 0x30]
sub r14, rax
lea rax, [rsp + 0x30]
sub rsi, rax
mov qword [rbp - 0x20], r14
lea rax, [rsp + 0x30]
mov r14d, 0xa
sub r14, rax
lea rax, [rsp + 0x30]
sub r15, rax
lea rax, [rsp + 0x30]
sub r12, rax
mov eax, 0xd
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x18], rax
mov eax, 0xe
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x10], rax
mov eax, 0xf
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 8], rax
mov eax, 0x10
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp], rax
mov eax, 0x11
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 8], rax
mov eax, 0x12
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x10], rax
mov eax, 0x13
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x18], rax
mov eax, 0x14
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x20], rax
mov eax, 0x15
sub rax, rcx
lea rcx, [rsp + 0x30]
movups xmmword [rsp + 0x30], xmm0
mov qword [rbp + 0x28], rax
movups xmm0, xmmword [0x18006c1b8]
movups xmmword [rsp + 0x40], xmm1
movsd xmm1, qword [0x18006c1c8]
movups xmmword [rsp + 0x50], xmm0
movsd qword [rsp + 0x60], xmm1
mov eax, 0x16
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x30], rax
mov eax, 0x17
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x38], rax
mov eax, 0x18
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x40], rax
mov eax, 0x19
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x48], rax
mov eax, 0x1a
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x50], rax
mov eax, 0x1b
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x58], rax
mov eax, 0x1c
sub rax, rcx
mov qword [rbp + 0x60], rax
nop word [rax + rax]
mov rax, r9
lea r8, [rsp + 0x30]
mul rbx
add r8, rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [rdi + r8]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x328]
add rcx, r8
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x30]
add rcx, r8
add al, 0x34
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x28]
add rcx, r8
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x36
lea rcx, [r10 + r8]
xor byte [r8 + 5], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r11 + r8]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x20]
add al, 0x38
add rcx, r8
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [rsi + r8]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r14 + r8]
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r15 + r8]
add al, 0x3b
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x3c
xor byte [r8 + 0xb], al
lea rcx, [r12 + r8]
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x18]
add rcx, r8
add al, 0x3d
xor byte [r8 + 0xc], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x10]
add rcx, r8
add al, 0x3e
xor byte [r8 + 0xd], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 8]
add rcx, r8
add al, 0x3f
xor byte [r8 + 0xe], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp]
add rcx, r8
add al, 0x40
xor byte [r8 + 0xf], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 8]
add rcx, r8
add al, 0x41
xor byte [r8 + 0x10], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x42
mov rcx, qword [rbp + 0x10]
xor byte [r8 + 0x11], al
add rcx, r8
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x18]
add rcx, r8
add al, 0x43
xor byte [r8 + 0x12], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x20]
add rcx, r8
add al, 0x44
xor byte [r8 + 0x13], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x28]
add rcx, r8
add al, 0x45
xor byte [r8 + 0x14], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x30]
add rcx, r8
add al, 0x46
xor byte [r8 + 0x15], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x38]
add al, 0x47
add rcx, r8
xor byte [r8 + 0x16], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x40]
add rcx, r8
add al, 0x48
xor byte [r8 + 0x17], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x48]
add rcx, r8
add al, 0x49
xor byte [r8 + 0x18], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x50]
add rcx, r8
add al, 0x4a
xor byte [r8 + 0x19], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x58]
add al, 0x4b
add rcx, r8
xor byte [r8 + 0x1a], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x60]
add al, 0x4c
add rcx, r8
xor byte [r8 + 0x1b], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
add rbx, 0x1d
sub al, cl
add al, 0x4d
xor byte [r8 + 0x1c], al
cmp rbx, 0x3a
jb 0x18005e810
mov r8d, dword [rbp + 0x310]
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x71]
call fcn.180001140
xor bl, bl
jmp 0x18005f71d
mov rcx, qword [0x180072c20]
lea r8, [0x180072c88]
xorps xmm0, xmm0
mov qword [rbp + 0x160], rbx
movdqu xmmword [rbp + 0x148], xmm0
mov dword [rbp + 0x140], r13d
lea rdx, [rbp + 0x140]
mov dword [rbp + 0x144], edi
mov dword [rbp + 0x15c], edi
mov dword [rbp + 0x158], edi
mov rax, qword [rcx]
call qword [rax + 0xb0]
mov dword [rbp + 0x310], eax
test eax, eax
jns 0x18005f300
movups xmm0, xmmword [0x18006c258]
mov ecx, dword [0x18006c290]
mov r8, rbx
movups xmm1, xmmword [0x18006c268]
mov dword [rbp - 0x57], ecx
movabs r9, 0x47ae147ae147ae15
movzx ecx, byte [0x18006c294]
movups xmmword [rsp + 0x71], xmm0
mov byte [rbp - 0x53], cl
movups xmm0, xmmword [0x18006c278]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006c288]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
nop
mov rax, r9
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x71], al
inc r8
cmp r8, 0x3d
jb 0x18005edb0
mov eax, dword [0x18006c250]
lea rcx, [rsp + 0x30]
movups xmm0, xmmword [0x18006c218]
mov dword [rsp + 0x68], eax
mov r10d, 6
movzx eax, word [0x18006c254]
mov r11d, 7
movups xmm1, xmmword [0x18006c228]
mov word [rsp + 0x6c], ax
movzx eax, byte [0x18006c256]
mov byte [rsp + 0x6e], al
lea rax, [rsp + 0x30]
sub rdi, rax
lea rax, [rsp + 0x30]
sub r15, rax
lea rax, [rsp + 0x30]
sub r13, rax
mov qword [rbp + 0x328], r15
lea rax, [rsp + 0x30]
mov r15d, 0xb
sub r12, rax
lea rax, [rsp + 0x30]
sub rsi, rax
mov qword [rbp - 0x30], r12
lea rax, [rsp + 0x30]
mov qword [rbp - 0x28], rsi
sub r10, rax
mov esi, 9
lea rax, [rsp + 0x30]
mov r12d, 0xc
sub r11, rax
lea rax, [rsp + 0x30]
sub r14, rax
lea rax, [rsp + 0x30]
sub rsi, rax
mov qword [rbp - 0x20], r14
lea rax, [rsp + 0x30]
mov r14d, 0xa
sub r14, rax
lea rax, [rsp + 0x30]
sub r15, rax
lea rax, [rsp + 0x30]
sub r12, rax
mov eax, 0xd
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x18], rax
mov eax, 0xe
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x10], rax
mov eax, 0xf
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp - 8], rax
mov eax, 0x10
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp], rax
mov eax, 0x11
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 8], rax
mov eax, 0x12
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x10], rax
mov eax, 0x13
sub rax, rcx
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x18], rax
mov eax, 0x14
movups xmmword [rsp + 0x30], xmm0
sub rax, rcx
movups xmm0, xmmword [0x18006c238]
mov qword [rbp + 0x20], rax
movups xmmword [rsp + 0x40], xmm1
movsd xmm1, qword [0x18006c248]
movups xmmword [rsp + 0x50], xmm0
movsd qword [rsp + 0x60], xmm1
nop dword [rax]
nop word [rax + rax]
mov rax, r9
lea r8, [rsp + 0x30]
mul rbx
add r8, rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + rdi]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x328]
add rcx, r8
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x30]
add rcx, r8
add al, 0x34
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x28]
add rcx, r8
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x36
lea rcx, [r8 + r10]
xor byte [r8 + 5], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r11]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x20]
add al, 0x38
add rcx, r8
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + rsi]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r14]
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r15]
add al, 0x3b
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x3c
xor byte [r8 + 0xb], al
lea rcx, [r8 + r12]
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x18]
add rcx, r8
add al, 0x3d
xor byte [r8 + 0xc], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x10]
add rcx, r8
add al, 0x3e
xor byte [r8 + 0xd], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 8]
add rcx, r8
add al, 0x3f
xor byte [r8 + 0xe], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp]
add rcx, r8
add al, 0x40
xor byte [r8 + 0xf], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 8]
add rcx, r8
add al, 0x41
xor byte [r8 + 0x10], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x10]
add al, 0x42
xor byte [r8 + 0x11], al
add rcx, r8
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x18]
add al, 0x43
add rcx, r8
xor byte [r8 + 0x12], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x20]
add al, 0x44
add rcx, r8
xor byte [r8 + 0x13], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
add rbx, 0x15
sub al, cl
add al, 0x45
xor byte [r8 + 0x14], al
cmp rbx, 0x3f
jb 0x18005ef60
mov r8d, dword [rbp + 0x310]
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x71]
call fcn.180001140
xor bl, bl
jmp 0x18005f71d
movdqa xmm0, xmmword [0x18006c560]
lea r8, [0x180072c98]
mov rcx, qword [0x180072c20]
lea rdx, [rbp + 0x168]
movdqu xmmword [rbp + 0x168], xmm0
mov dword [rbp + 0x17c], edi
mov dword [rbp + 0x184], edi
mov dword [rbp + 0x180], edi
mov dword [rbp + 0x188], r14d
movups xmm0, xmmword [rbp + 0x17c]
mov dword [rbp + 0x178], ebx
movups xmmword [rbp + 0x18c], xmm0
mov rax, qword [rcx]
call qword [rax + 0xa8]
mov dword [rbp + 0x310], eax
test eax, eax
jns 0x18005f715
movups xmm0, xmmword [0x18006c2e8]
mov ecx, dword [0x18006c320]
mov r8, rbx
movups xmm1, xmmword [str.3_0]
mov dword [rbp - 0x57], ecx
movabs r9, 0x47ae147ae147ae15
movzx ecx, byte [0x18006c324]
movups xmmword [rsp + 0x71], xmm0
mov byte [rbp - 0x53], cl
movups xmm0, xmmword [0x18006c308]
movups xmmword [rbp - 0x7f], xmm1
movsd xmm1, qword [0x18006c318]
movups xmmword [rbp - 0x6f], xmm0
movsd qword [rbp - 0x5f], xmm1
nop dword [rax + rax]
mov rax, r9
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x71], al
inc r8
cmp r8, 0x3d
jb 0x18005f3c0
movzx eax, byte [0x18006c2e0]
mov r10d, 6
movups xmm0, xmmword [0x18006c2a0]
mov r11d, 7
movups xmm1, xmmword [0x18006c2b0]
mov byte [rsp + 0x70], al
lea rax, [rsp + 0x30]
sub rdi, rax
lea rax, [rsp + 0x30]
sub r15, rax
lea rax, [rsp + 0x30]
sub r13, rax
mov qword [rbp + 0x328], r15
lea rax, [rsp + 0x30]
mov r15d, 0xb
sub r12, rax
lea rax, [rsp + 0x30]
sub rsi, rax
mov qword [rbp - 0x30], r12
lea rax, [rsp + 0x30]
mov qword [rbp - 0x28], rsi
sub r10, rax
mov esi, 9
lea rax, [rsp + 0x30]
mov r12d, 0xc
sub r11, rax
lea rax, [rsp + 0x30]
sub r14, rax
lea rax, [rsp + 0x30]
sub rsi, rax
mov qword [rbp - 0x20], r14
lea rax, [rsp + 0x30]
mov r14d, 0xa
sub r14, rax
lea rax, [rsp + 0x30]
sub r15, rax
lea rax, [rsp + 0x30]
movups xmmword [rsp + 0x30], xmm0
sub r12, rax
movups xmm0, xmmword [0x18006c2c0]
movups xmmword [rsp + 0x40], xmm1
movups xmm1, xmmword [0x18006c2d0]
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x60], xmm1
nop dword [rax]
nop word [rax + rax]
mov rax, r9
lea r8, [rsp + 0x30]
mul rbx
add r8, rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [rdi + r8]
add al, 0x31
xor byte [r8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp + 0x328]
add rcx, r8
add al, 0x32
xor byte [r8 + 1], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r13]
add al, 0x33
xor byte [r8 + 2], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x30]
add rcx, r8
add al, 0x34
xor byte [r8 + 3], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x28]
add rcx, r8
add al, 0x35
xor byte [r8 + 4], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x36
lea rcx, [r8 + r10]
xor byte [r8 + 5], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r11]
add al, 0x37
xor byte [r8 + 6], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
mov rcx, qword [rbp - 0x20]
add al, 0x38
add rcx, r8
xor byte [r8 + 7], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + rsi]
add al, 0x39
xor byte [r8 + 8], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r14]
add al, 0x3a
xor byte [r8 + 9], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
lea rcx, [r8 + r15]
add al, 0x3b
xor byte [r8 + 0xa], al
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x3c
xor byte [r8 + 0xb], al
lea rcx, [r8 + r12]
mov rax, r9
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
movsx eax, cl
imul ecx, eax, 0x32
movzx eax, bl
add rbx, 0xd
sub al, cl
add al, 0x3d
xor byte [r8 + 0xc], al
cmp rbx, 0x41
jb 0x18005f4d0
mov r8d, dword [rbp + 0x310]
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x71]
call fcn.180001140
xor bl, bl
jmp 0x18005f71d
call fcn.18005f780
movzx ebx, al
mov rax, qword [rbp + 0x320]
movabs rdi, 0x7ffffffdfffe
lea rcx, [rax - 0x10000]
cmp rcx, rdi
ja 0x18005f742
mov rcx, rax
call fcn.180010820
mov rax, qword [rbp + 0xb8]
movaps xmm6, xmmword [rsp + 0x3b0]
lea rcx, [rax - 0x10000]
cmp rcx, rdi
ja 0x18005f765
mov rcx, rax
call fcn.180010820
movzx eax, bl
add rsp, 0x3c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret