Function at 0x8ffe4
Capabilities:
Encode data using add xor sub operations

Disassembly:
mov qword [rsp + 0x20], rbx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rax, qword [0x0001c170]
xor rax, rsp
mov qword [rsp + 0x20], rax
mov r11d, dword [rcx]
mov r10d, dword [rcx + 4]
lea r15, [0x00010000]
xor r11d, dword [r8]
xor r10d, dword [r8 + 4]
mov r14, rdx
movsxd r13, r9d
mov r9d, dword [rcx + 8]
mov r12, r8
xor r9d, dword [r8 + 8]
mov r8d, dword [rcx + 0xc]
mov dword [rsp + 0x14], r10d
xor r8d, dword [r12 + 0xc]
mov dword [rsp + 0x18], r9d
mov dword [rsp + 0x10], r11d
mov eax, r8d
mov dword [rsp + 0x1c], r8d
shr eax, 0x18
movzx edx, al
mov eax, r9d
mov ebx, dword [r15 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebx, dword [r15 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, r11b
xor ebx, dword [r15 + rcx*4 + 0x9a500]
xor ebx, dword [r15 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
mov dword [rsp], ebx
movzx edx, al
mov eax, r9d
mov edi, dword [r15 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov edx, dword [r15 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, r11d
xor edi, dword [r15 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r10b
xor edi, dword [r15 + rcx*4 + 0x9ad00]
xor edi, dword [r15 + rax*4 + 0x9a100]
mov eax, r10d
shr r10d, 0x10
shr eax, 0x18
mov dword [rsp + 4], edi
movzx ecx, al
mov eax, r11d
shr r11d, 8
xor edx, dword [r15 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 0x18
xor edx, dword [r15 + rcx*4 + 0x9a900]
movzx ecx, r9b
xor edx, dword [r15 + rax*4 + 0x9a100]
mov ecx, dword [r15 + rcx*4 + 0x9ad00]
movzx eax, r10b
xor ecx, dword [r15 + rax*4 + 0x9a900]
movzx eax, r11b
mov dword [rsp + 8], edx
xor ecx, dword [r15 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x1c]
xor ecx, dword [r15 + rax*4 + 0x9a100]
lea eax, [r13 - 1]
cmp eax, 1
mov dword [rsp + 0xc], ecx
jle 0x8f5e6
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x70], rsi
lea rsi, [r12 + 0x18]
lea ebp, [rax - 1]
nop dword [rax + rax]
mov r8d, dword [rsi + 4]
mov r9d, dword [rsi]
mov r11d, dword [rsi - 8]
mov r10d, dword [rsi - 4]
xor r8d, ecx
xor r9d, edx
xor r11d, ebx
xor r10d, edi
mov eax, r8d
shr eax, 0x18
mov dword [rsp + 0x1c], r8d
mov dword [rsp + 0x18], r9d
movzx edx, al
mov eax, r9d
mov dword [rsp + 0x14], r10d
mov ebx, dword [r15 + rdx*4 + 0x9ad00]
shr eax, 0x10
mov dword [rsp + 0x10], r11d
movzx ecx, al
mov eax, r10d
add rsi, 0x10
xor ebx, dword [r15 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, r11b
xor ebx, dword [r15 + rcx*4 + 0x9a500]
xor ebx, dword [r15 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov edi, dword [r15 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov edx, dword [r15 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, r11d
xor edi, dword [r15 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r10b
xor edi, dword [r15 + rcx*4 + 0x9ad00]
xor edi, dword [r15 + rax*4 + 0x9a100]
mov eax, r10d
shr r10d, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, r11d
shr r11d, 8
xor edx, dword [r15 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 0x18
xor edx, dword [r15 + rcx*4 + 0x9a900]
movzx ecx, r9b
xor edx, dword [r15 + rax*4 + 0x9a100]
mov ecx, dword [r15 + rcx*4 + 0x9ad00]
movzx eax, r10b
xor ecx, dword [r15 + rax*4 + 0x9a900]
movzx eax, r11b
xor ecx, dword [r15 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x1c]
xor ecx, dword [r15 + rax*4 + 0x9a100]
sub rbp, 1
jne 0x8f497
mov rsi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x60]
mov dword [rsp], ebx
mov dword [rsp + 4], edi
mov dword [rsp + 8], edx
mov dword [rsp + 0xc], ecx
mov rax, r13
mov r10, r13
add rax, rax
xor ebx, dword [r12 + rax*8 - 0x10]
mov r9d, dword [r12 + rax*8 - 8]
mov r8d, dword [r12 + rax*8 - 0xc]
xor r9d, edx
mov edx, dword [r12 + rax*8 - 4]
xor r8d, edi
xor edx, ecx
movzx eax, bl
mov dword [rsp + 0x10], ebx
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov dword [rsp + 0x1c], edx
mov dword [rsp + 0x14], r8d
mov byte [rsp], al
mov eax, r8d
mov dword [rsp + 0x18], r9d
shr eax, 8
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 1], al
mov eax, r9d
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 2], al
mov eax, edx
shr eax, 0x18
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 3], al
movzx eax, r8b
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 4], al
mov eax, r9d
shr eax, 8
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 5], al
mov eax, edx
shr edx, 8
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 6], al
mov eax, ebx
shr eax, 0x18
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 7], al
movzx eax, r9b
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 8], al
movzx eax, dl
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 9], al
mov eax, ebx
shr ebx, 8
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 0xa], al
mov eax, r8d
shr r8d, 0x10
shr eax, 0x18
shr r9d, 0x18
movzx ecx, al
movzx eax, byte [r15 + rcx*4 + 0x9a101]
mov byte [rsp + 0xb], al
movzx eax, byte [rsp + 0x1c]
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 0xc], al
movzx eax, bl
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 0xd], al
movzx eax, r8b
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 0xe], al
movzx eax, r9b
movzx eax, byte [r15 + rax*4 + 0x9a101]
mov byte [rsp + 0xf], al
add r10, r10
mov eax, dword [r12 + r10*8]
xor eax, dword [rsp]
mov dword [r14], eax
mov eax, dword [r12 + r10*8 + 4]
xor eax, dword [rsp + 4]
mov dword [r14 + 4], eax
mov eax, dword [r12 + r10*8 + 8]
xor eax, dword [rsp + 8]
mov dword [r14 + 8], eax
mov eax, dword [r12 + r10*8 + 0xc]
xor eax, dword [rsp + 0xc]
mov dword [r14 + 0xc], eax
xor eax, eax
mov dword [rsp], eax
mov dword [rsp + 4], eax
mov dword [rsp + 8], eax
mov dword [rsp + 0xc], eax
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x14], eax
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x1c], eax
mov rcx, qword [rsp + 0x20]
xor rcx, rsp
call fcn.000110ac
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rax, qword [0x0001c170]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov r11d, dword [rcx]
mov r10d, dword [rcx + 4]
mov r9d, dword [rcx + 8]
xor r11d, dword [r8]
xor r10d, dword [r8 + 4]
xor r9d, dword [r8 + 8]
lea r13, [0x00010000]
mov rsi, r8
mov r8d, dword [rcx + 0xc]
xor r8d, dword [rsi + 0xc]
mov qword [rsp], rdx
mov dword [rsp + 0x10], r9d
mov eax, r8d
mov dword [rsp + 0x14], r8d
mov dword [rsp + 0xc], r10d
shr eax, 0x18
mov dword [rsp + 8], r11d
lea r14, [rsi + 0x18]
movzx edx, al
mov eax, r9d
mov r15d, 3
mov ebp, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, r11b
xor ebp, dword [r13 + rcx*4 + 0x9a500]
xor ebp, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, r11d
xor r12d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9ad00]
xor r12d, dword [r13 + rax*4 + 0x9a100]
mov eax, r10d
shr r10d, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, r11d
shr r11d, 8
xor edi, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 0x18
xor edi, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, r9b
xor edi, dword [r13 + rax*4 + 0x9a100]
mov ecx, dword [r13 + rcx*4 + 0x9ad00]
movzx eax, r10b
xor ecx, dword [r13 + rax*4 + 0x9a900]
movzx eax, r11b
xor ecx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9a100]
nop
xor edi, dword [r14]
mov r8d, dword [r14 + 4]
mov r11d, dword [r14 - 4]
mov ebx, dword [r14 - 8]
xor r8d, ecx
xor r11d, r12d
mov eax, r8d
xor ebx, ebp
mov dword [rsp + 0x14], r8d
shr eax, 0x18
mov dword [rsp + 0x10], edi
mov dword [rsp + 8], ebx
movzx edx, al
mov eax, edi
mov dword [rsp + 0xc], r11d
mov r10d, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r11d
xor r10d, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, bl
xor r10d, dword [r13 + rcx*4 + 0x9a500]
xor r10d, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, edi
mov r9d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, ebx
xor r9d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r11b
xor r9d, dword [r13 + rcx*4 + 0x9ad00]
xor r9d, dword [r13 + rax*4 + 0x9a100]
mov eax, r11d
shr r11d, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, ebx
shr ebx, 8
xor r8d, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, dil
shr edi, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, dil
mov edi, dword [r14 + 8]
xor r8d, dword [r13 + rax*4 + 0x9a100]
mov edx, dword [r13 + rcx*4 + 0x9ad00]
xor edi, r10d
mov r10d, dword [r14 + 0x10]
movzx eax, r11b
mov dword [rsp + 8], edi
xor edx, dword [r13 + rax*4 + 0x9a900]
xor r10d, r8d
mov r8d, dword [r14 + 0x14]
movzx eax, bl
mov ebx, dword [r14 + 0xc]
mov dword [rsp + 0x10], r10d
xor edx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor ebx, r9d
xor edx, dword [r13 + rax*4 + 0x9a100]
mov dword [rsp + 0xc], ebx
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 0x18
movzx edx, al
mov eax, r10d
shr eax, 0x10
movzx ecx, al
mov r11d, dword [r13 + rdx*4 + 0x9ad00]
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9a500]
xor r11d, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9ad00]
xor r9d, dword [r13 + rax*4 + 0x9a100]
mov eax, ebx
shr ebx, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, edi
shr edi, 8
xor r8d, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, r10b
mov r10d, dword [r14 + 0x20]
xor r8d, dword [r13 + rax*4 + 0x9a100]
mov edx, dword [r13 + rcx*4 + 0x9ad00]
movzx eax, bl
xor edx, dword [r13 + rax*4 + 0x9a900]
mov ebx, dword [r14 + 0x1c]
xor r10d, r8d
mov r8d, dword [r14 + 0x24]
movzx eax, dil
mov edi, dword [r14 + 0x18]
xor edx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor edi, r11d
xor edx, dword [r13 + rax*4 + 0x9a100]
xor ebx, r9d
mov dword [rsp + 8], edi
xor r8d, edx
mov dword [rsp + 0xc], ebx
mov dword [rsp + 0x10], r10d
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 0x18
movzx edx, al
mov eax, r10d
mov r11d, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9a500]
xor r11d, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
shr r8d, 8
movzx ecx, al
movzx edx, r8b
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9ad00]
mov r8d, dword [r13 + rdx*4 + 0x9a500]
xor r9d, dword [r13 + rax*4 + 0x9a100]
mov eax, ebx
shr ebx, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, edi
shr edi, 8
xor r8d, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, r10b
mov r10d, dword [r14 + 0x2c]
xor r8d, dword [r13 + rax*4 + 0x9a100]
mov edx, dword [r13 + rcx*4 + 0x9ad00]
xor r10d, r9d
mov r9d, dword [r14 + 0x30]
movzx eax, bl
mov ebx, dword [r14 + 0x28]
xor edx, dword [r13 + rax*4 + 0x9a900]
xor r9d, r8d
mov r8d, dword [r14 + 0x34]
movzx eax, dil
xor ebx, r11d
mov dword [rsp + 0xc], r10d
xor edx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
mov dword [rsp + 8], ebx
xor edx, dword [r13 + rax*4 + 0x9a100]
mov dword [rsp + 0x10], r9d
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 0x18
movzx edx, al
mov eax, r9d
mov ebp, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, bl
xor ebp, dword [r13 + rcx*4 + 0x9a500]
xor ebp, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, ebx
xor r12d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9ad00]
xor r12d, dword [r13 + rax*4 + 0x9a100]
mov eax, r10d
shr eax, 0x18
movzx ecx, al
mov eax, ebx
xor edi, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
xor edi, dword [r13 + rcx*4 + 0x9a900]
xor edi, dword [r13 + rax*4 + 0x9a100]
shr r9d, 0x18
shr r10d, 0x10
movzx eax, r10b
shr ebx, 8
movzx ecx, r9b
mov ecx, dword [r13 + rcx*4 + 0x9ad00]
add r14, 0x40
xor ecx, dword [r13 + rax*4 + 0x9a900]
movzx eax, bl
xor ecx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9a100]
sub r15, 1
jne 0x8f944
mov r8d, dword [rsi + 0xd0]
mov r9d, dword [rsi + 0xd4]
mov edx, dword [rsi + 0xdc]
mov r10d, dword [rsi + 0xd8]
xor edx, ecx
mov dword [rsp + 0x24], ecx
xor r8d, ebp
xor r9d, r12d
xor r10d, edi
movzx eax, r8b
mov dword [rsp + 0x18], ebp
mov dword [rsp + 0x1c], r12d
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov dword [rsp + 0x20], edi
mov dword [rsp + 0x14], edx
mov byte [rsp + 0x18], al
mov eax, r9d
mov dword [rsp + 8], r8d
shr eax, 8
mov dword [rsp + 0xc], r9d
mov dword [rsp + 0x10], r10d
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x19], al
mov eax, r10d
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1a], al
mov eax, edx
shr eax, 0x18
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1b], al
movzx eax, r9b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x1c], al
mov eax, r10d
shr eax, 8
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1d], al
mov eax, edx
shr edx, 8
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1e], al
mov eax, r8d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1f], al
movzx eax, r10b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x20], al
movzx eax, dl
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x21], al
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x22], al
mov eax, r9d
shr r9d, 0x10
shr eax, 0x18
shr r10d, 0x18
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x23], al
movzx eax, byte [rsp + 0x14]
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x24], al
movzx eax, r8b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x25], al
movzx eax, r9b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x26], al
movzx eax, r10b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov r13, qword [rsp]
mov byte [rsp + 0x27], al
mov eax, dword [rsi + 0xe0]
xor eax, dword [rsp + 0x18]
mov dword [r13], eax
mov eax, dword [rsi + 0xe4]
xor eax, dword [rsp + 0x1c]
mov dword [r13 + 4], eax
mov eax, dword [rsi + 0xe8]
xor eax, dword [rsp + 0x20]
mov dword [r13 + 8], eax
mov eax, dword [rsi + 0xec]
xor eax, dword [rsp + 0x24]
mov dword [r13 + 0xc], eax
xor eax, eax
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x1c], eax
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], eax
mov dword [rsp + 8], eax
mov dword [rsp + 0xc], eax
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.000110ac
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rax, qword [0x0001c170]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov r11d, dword [rcx]
mov r10d, dword [rcx + 4]
mov r9d, dword [rcx + 8]
xor r11d, dword [r8]
xor r10d, dword [r8 + 4]
xor r9d, dword [r8 + 8]
lea r13, [0x00010000]
mov rsi, r8
mov r8d, dword [rcx + 0xc]
xor r8d, dword [rsi + 0xc]
mov qword [rsp], rdx
mov dword [rsp + 0x10], r9d
mov eax, r8d
mov dword [rsp + 0x14], r8d
mov dword [rsp + 0xc], r10d
shr eax, 0x18
mov dword [rsp + 8], r11d
lea r14, [rsi + 0x18]
movzx edx, al
mov eax, r9d
mov r15d, 2
mov ebp, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, r11b
xor ebp, dword [r13 + rcx*4 + 0x9a500]
xor ebp, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, r11d
xor r12d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9ad00]
xor r12d, dword [r13 + rax*4 + 0x9a100]
mov eax, r10d
shr r10d, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, r11d
shr r11d, 8
xor edi, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 0x18
xor edi, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, r9b
xor edi, dword [r13 + rax*4 + 0x9a100]
mov ecx, dword [r13 + rcx*4 + 0x9ad00]
movzx eax, r10b
xor ecx, dword [r13 + rax*4 + 0x9a900]
movzx eax, r11b
xor ecx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9a100]
nop
xor edi, dword [r14]
mov r8d, dword [r14 + 4]
mov r11d, dword [r14 - 4]
mov ebx, dword [r14 - 8]
xor r8d, ecx
xor r11d, r12d
mov eax, r8d
xor ebx, ebp
mov dword [rsp + 0x14], r8d
shr eax, 0x18
mov dword [rsp + 0x10], edi
mov dword [rsp + 8], ebx
movzx edx, al
mov eax, edi
mov dword [rsp + 0xc], r11d
mov r10d, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r11d
xor r10d, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, bl
xor r10d, dword [r13 + rcx*4 + 0x9a500]
xor r10d, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, edi
mov r9d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, ebx
xor r9d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r11b
xor r9d, dword [r13 + rcx*4 + 0x9ad00]
xor r9d, dword [r13 + rax*4 + 0x9a100]
mov eax, r11d
shr r11d, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, ebx
shr ebx, 8
xor r8d, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, dil
shr edi, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, dil
mov edi, dword [r14 + 8]
xor r8d, dword [r13 + rax*4 + 0x9a100]
mov edx, dword [r13 + rcx*4 + 0x9ad00]
xor edi, r10d
mov r10d, dword [r14 + 0x10]
movzx eax, r11b
mov dword [rsp + 8], edi
xor edx, dword [r13 + rax*4 + 0x9a900]
xor r10d, r8d
mov r8d, dword [r14 + 0x14]
movzx eax, bl
mov ebx, dword [r14 + 0xc]
mov dword [rsp + 0x10], r10d
xor edx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor ebx, r9d
xor edx, dword [r13 + rax*4 + 0x9a100]
mov dword [rsp + 0xc], ebx
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 0x18
movzx edx, al
mov eax, r10d
shr eax, 0x10
movzx ecx, al
mov r11d, dword [r13 + rdx*4 + 0x9ad00]
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9a500]
xor r11d, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9ad00]
xor r9d, dword [r13 + rax*4 + 0x9a100]
mov eax, ebx
shr ebx, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, edi
shr edi, 8
xor r8d, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, r10b
mov r10d, dword [r14 + 0x20]
xor r8d, dword [r13 + rax*4 + 0x9a100]
mov edx, dword [r13 + rcx*4 + 0x9ad00]
movzx eax, bl
xor edx, dword [r13 + rax*4 + 0x9a900]
mov ebx, dword [r14 + 0x1c]
xor r10d, r8d
mov r8d, dword [r14 + 0x24]
movzx eax, dil
mov edi, dword [r14 + 0x18]
xor edx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor edi, r11d
xor edx, dword [r13 + rax*4 + 0x9a100]
xor ebx, r9d
mov dword [rsp + 8], edi
xor r8d, edx
mov dword [rsp + 0xc], ebx
mov dword [rsp + 0x10], r10d
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 0x18
movzx edx, al
mov eax, r10d
mov r11d, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9a500]
xor r11d, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
shr r8d, 8
movzx ecx, al
movzx edx, r8b
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9ad00]
mov r8d, dword [r13 + rdx*4 + 0x9a500]
xor r9d, dword [r13 + rax*4 + 0x9a100]
mov eax, ebx
shr ebx, 0x10
shr eax, 0x18
movzx ecx, al
mov eax, edi
shr edi, 8
xor r8d, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9a900]
movzx ecx, r10b
mov r10d, dword [r14 + 0x2c]
xor r8d, dword [r13 + rax*4 + 0x9a100]
mov edx, dword [r13 + rcx*4 + 0x9ad00]
xor r10d, r9d
mov r9d, dword [r14 + 0x30]
movzx eax, bl
mov ebx, dword [r14 + 0x28]
xor edx, dword [r13 + rax*4 + 0x9a900]
xor r9d, r8d
mov r8d, dword [r14 + 0x34]
movzx eax, dil
xor ebx, r11d
mov dword [rsp + 0xc], r10d
xor edx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
mov dword [rsp + 8], ebx
xor edx, dword [r13 + rax*4 + 0x9a100]
mov dword [rsp + 0x10], r9d
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 0x18
movzx edx, al
mov eax, r9d
mov ebp, dword [r13 + rdx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9a900]
shr eax, 8
movzx ecx, al
movzx eax, bl
xor ebp, dword [r13 + rcx*4 + 0x9a500]
xor ebp, dword [r13 + rax*4 + 0x9a100]
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9a900]
shr eax, 8
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9a500]
movzx ecx, al
mov eax, ebx
xor r12d, dword [r13 + rcx*4 + 0x9a500]
shr eax, 0x18
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9ad00]
xor r12d, dword [r13 + rax*4 + 0x9a100]
mov eax, r10d
shr eax, 0x18
movzx ecx, al
mov eax, ebx
xor edi, dword [r13 + rcx*4 + 0x9ad00]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
xor edi, dword [r13 + rcx*4 + 0x9a900]
xor edi, dword [r13 + rax*4 + 0x9a100]
shr r9d, 0x18
shr r10d, 0x10
movzx eax, r10b
shr ebx, 8
movzx ecx, r9b
mov ecx, dword [r13 + rcx*4 + 0x9ad00]
add r14, 0x40
xor ecx, dword [r13 + rax*4 + 0x9a900]
movzx eax, bl
xor ecx, dword [r13 + rax*4 + 0x9a500]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9a100]
sub r15, 1
jne 0x90154
mov r8d, dword [rsi + 0x90]
mov r9d, dword [rsi + 0x94]
mov edx, dword [rsi + 0x9c]
mov r10d, dword [rsi + 0x98]
xor edx, ecx
mov dword [rsp + 0x24], ecx
xor r8d, ebp
xor r9d, r12d
xor r10d, edi
movzx eax, r8b
mov dword [rsp + 0x18], ebp
mov dword [rsp + 0x1c], r12d
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov dword [rsp + 0x20], edi
mov dword [rsp + 0x14], edx
mov byte [rsp + 0x18], al
mov eax, r9d
mov dword [rsp + 8], r8d
shr eax, 8
mov dword [rsp + 0xc], r9d
mov dword [rsp + 0x10], r10d
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x19], al
mov eax, r10d
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1a], al
mov eax, edx
shr eax, 0x18
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1b], al
movzx eax, r9b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x1c], al
mov eax, r10d
shr eax, 8
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1d], al
mov eax, edx
shr edx, 8
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1e], al
mov eax, r8d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x1f], al
movzx eax, r10b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x20], al
movzx eax, dl
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x21], al
mov eax, r8d
shr r8d, 8
shr eax, 0x10
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x22], al
mov eax, r9d
shr r9d, 0x10
shr eax, 0x18
shr r10d, 0x18
movzx ecx, al
movzx eax, byte [r13 + rcx*4 + 0x9a101]
mov byte [rsp + 0x23], al
movzx eax, byte [rsp + 0x14]
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x24], al
movzx eax, r8b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x25], al
movzx eax, r9b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov byte [rsp + 0x26], al
movzx eax, r10b
movzx eax, byte [r13 + rax*4 + 0x9a101]
mov r13, qword [rsp]
mov byte [rsp + 0x27], al
mov eax, dword [rsi + 0xa0]
xor eax, dword [rsp + 0x18]
mov dword [r13], eax
mov eax, dword [rsi + 0xa4]
xor eax, dword [rsp + 0x1c]
mov dword [r13 + 4], eax
mov eax, dword [rsi + 0xa8]
xor eax, dword [rsp + 0x20]
mov dword [r13 + 8], eax
mov eax, dword [rsi + 0xac]
xor eax, dword [rsp + 0x24]
mov dword [r13 + 0xc], eax
xor eax, eax
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x1c], eax
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], eax
mov dword [rsp + 8], eax
mov dword [rsp + 0xc], eax
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.000110ac
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 0x18], rbx
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x30
mov rax, qword [0x0001c170]
xor rax, rsp
mov qword [rsp + 0x20], rax
mov r11d, dword [rcx]
lea r14, [0x00010000]
mov r13, rdx
movsxd rbx, r9d
mov r12, r8
mov rax, rbx
add rax, rax
xor r11d, dword [r8 + rax*8]
mov r10d, dword [r8 + rax*8 + 4]
mov r9d, dword [r8 + rax*8 + 8]
mov r8d, dword [r8 + rax*8 + 0xc]
xor r9d, dword [rcx + 8]
xor r10d, dword [rcx + 4]
xor r8d, dword [rcx + 0xc]
mov dword [rsp + 0x18], r9d
mov dword [rsp + 0x14], r10d
mov eax, r8d
mov dword [rsp + 0x1c], r8d
mov dword [rsp + 0x10], r11d
shr eax, 8
movzx edx, al
mov eax, r9d
mov edi, dword [r14 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor edi, dword [r14 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, r11b
xor edi, dword [r14 + rcx*4 + 0x9bd00]
xor edi, dword [r14 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
mov dword [rsp], edi
movzx edx, al
mov eax, r9d
mov esi, dword [r14 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov edx, dword [r14 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, r11d
xor esi, dword [r14 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r10b
xor esi, dword [r14 + rcx*4 + 0x9b500]
xor esi, dword [r14 + rax*4 + 0x9b100]
mov eax, r10d
shr r10d, 0x10
shr eax, 8
mov dword [rsp + 4], esi
movzx ecx, al
mov eax, r11d
shr r11d, 0x18
xor edx, dword [r14 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 8
xor edx, dword [r14 + rcx*4 + 0x9b900]
movzx ecx, r9b
xor edx, dword [r14 + rax*4 + 0x9b100]
mov ecx, dword [r14 + rcx*4 + 0x9b500]
movzx eax, r10b
xor ecx, dword [r14 + rax*4 + 0x9b900]
movzx eax, r11b
mov dword [rsp + 8], edx
xor ecx, dword [r14 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x1c]
xor ecx, dword [r14 + rax*4 + 0x9b100]
lea eax, [rbx - 1]
movsxd r8, eax
mov dword [rsp + 0xc], ecx
cmp r8, 1
jle 0x90ad8
mov rax, r8
mov qword [rsp + 0x60], rbp
lea rbp, [r8 - 1]
add rax, rax
lea rbx, [r12 + rax*8 + 8]
nop dword [rax + rax]
xor edx, dword [rbx]
mov r8d, dword [rbx + 4]
mov r11d, dword [rbx - 8]
mov r10d, dword [rbx - 4]
xor r8d, ecx
mov r9d, edx
xor r11d, edi
xor r10d, esi
mov dword [rsp + 0x18], edx
mov eax, r8d
mov dword [rsp + 0x1c], r8d
mov dword [rsp + 0x14], r10d
shr eax, 8
mov dword [rsp + 0x10], r11d
sub rbx, 0x10
movzx edx, al
mov eax, r9d
mov edi, dword [r14 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor edi, dword [r14 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, r11b
xor edi, dword [r14 + rcx*4 + 0x9bd00]
xor edi, dword [r14 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov esi, dword [r14 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov edx, dword [r14 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, r11d
xor esi, dword [r14 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r10b
xor esi, dword [r14 + rcx*4 + 0x9b500]
xor esi, dword [r14 + rax*4 + 0x9b100]
mov eax, r10d
shr r10d, 0x10
shr eax, 8
movzx ecx, al
mov eax, r11d
shr r11d, 0x18
xor edx, dword [r14 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 8
xor edx, dword [r14 + rcx*4 + 0x9b900]
movzx ecx, r9b
xor edx, dword [r14 + rax*4 + 0x9b100]
mov ecx, dword [r14 + rcx*4 + 0x9b500]
movzx eax, r10b
xor ecx, dword [r14 + rax*4 + 0x9b900]
movzx eax, r11b
xor ecx, dword [r14 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x1c]
xor ecx, dword [r14 + rax*4 + 0x9b100]
sub rbp, 1
jne 0x90990
mov rbp, qword [rsp + 0x60]
mov dword [rsp + 8], edx
mov dword [rsp], edi
mov dword [rsp + 4], esi
mov dword [rsp + 0xc], ecx
mov r10d, dword [r12 + 0x10]
mov r8d, dword [r12 + 0x18]
mov r9d, dword [r12 + 0x14]
xor r8d, edx
mov edx, dword [r12 + 0x1c]
xor r10d, edi
xor edx, ecx
xor r9d, esi
movzx eax, r10b
movzx eax, byte [rax + r14 + 0x9c100]
mov dword [rsp + 0x1c], edx
mov dword [rsp + 0x18], r8d
mov byte [rsp], al
mov eax, edx
mov dword [rsp + 0x14], r9d
shr eax, 8
mov dword [rsp + 0x10], r10d
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 1], al
mov eax, r8d
shr eax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 2], al
mov eax, r9d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 3], al
movzx eax, r9b
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 4], al
mov eax, r10d
shr eax, 8
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 5], al
mov eax, edx
shr edx, 0x18
shr eax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 6], al
mov eax, r8d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 7], al
movzx eax, r8b
shr r8d, 8
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 8], al
mov eax, r9d
shr r9d, 0x10
shr eax, 8
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 9], al
mov eax, r10d
shr eax, 0x10
shr r10d, 0x18
movzx ecx, al
movzx eax, byte [rcx + r14 + 0x9c100]
mov byte [rsp + 0xa], al
movzx eax, dl
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 0xb], al
movzx eax, byte [rsp + 0x1c]
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 0xc], al
movzx eax, r8b
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 0xd], al
movzx eax, r9b
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 0xe], al
movzx eax, r10b
movzx eax, byte [rax + r14 + 0x9c100]
mov byte [rsp + 0xf], al
mov eax, dword [r12]
xor eax, dword [rsp]
mov dword [r13], eax
mov eax, dword [r12 + 4]
xor eax, dword [rsp + 4]
mov dword [r13 + 4], eax
mov eax, dword [r12 + 8]
xor eax, dword [rsp + 8]
mov dword [r13 + 8], eax
mov eax, dword [r12 + 0xc]
xor eax, dword [rsp + 0xc]
mov dword [r13 + 0xc], eax
xor eax, eax
mov dword [rsp], eax
mov dword [rsp + 4], eax
mov dword [rsp + 8], eax
mov dword [rsp + 0xc], eax
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x14], eax
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x1c], eax
mov rcx, qword [rsp + 0x20]
xor rcx, rsp
call fcn.000110ac
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rax, qword [0x0001c170]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov r11d, dword [r8 + 0xa0]
mov r10d, dword [r8 + 0xa4]
mov r9d, dword [r8 + 0xa8]
xor r9d, dword [rcx + 8]
xor r10d, dword [rcx + 4]
xor r11d, dword [rcx]
lea r13, [0x00010000]
mov rsi, r8
mov r8d, dword [r8 + 0xac]
xor r8d, dword [rcx + 0xc]
mov qword [rsp], rdx
mov dword [rsp + 0x10], r9d
mov eax, r8d
mov dword [rsp + 0x14], r8d
mov dword [rsp + 0xc], r10d
shr eax, 8
mov dword [rsp + 8], r11d
lea r14, [rsi + 0x98]
movzx edx, al
mov eax, r9d
mov r15d, 2
mov ebp, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, r11b
xor ebp, dword [r13 + rcx*4 + 0x9bd00]
xor ebp, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, r11d
xor r12d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9b500]
xor r12d, dword [r13 + rax*4 + 0x9b100]
mov eax, r10d
shr r10d, 0x10
shr eax, 8
movzx ecx, al
mov eax, r11d
shr r11d, 0x18
xor edi, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 8
xor edi, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, r9b
xor edi, dword [r13 + rax*4 + 0x9b100]
mov ecx, dword [r13 + rcx*4 + 0x9b500]
movzx eax, r10b
xor ecx, dword [r13 + rax*4 + 0x9b900]
movzx eax, r11b
xor ecx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9b100]
nop
xor edi, dword [r14]
mov r8d, dword [r14 + 4]
mov r11d, dword [r14 - 4]
mov ebx, dword [r14 - 8]
xor r8d, ecx
xor r11d, r12d
mov eax, r8d
xor ebx, ebp
mov dword [rsp + 0x14], r8d
shr eax, 8
mov dword [rsp + 0x10], edi
mov dword [rsp + 8], ebx
movzx edx, al
mov eax, edi
mov dword [rsp + 0xc], r11d
mov r10d, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r11d
xor r10d, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, bl
xor r10d, dword [r13 + rcx*4 + 0x9bd00]
xor r10d, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, edi
mov r9d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, ebx
xor r9d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r11b
xor r9d, dword [r13 + rcx*4 + 0x9b500]
xor r9d, dword [r13 + rax*4 + 0x9b100]
mov eax, r11d
shr r11d, 0x10
shr eax, 8
movzx ecx, al
mov eax, ebx
shr ebx, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, dil
shr edi, 8
xor r8d, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, dil
mov edi, dword [r14 - 0x18]
xor r8d, dword [r13 + rax*4 + 0x9b100]
mov edx, dword [r13 + rcx*4 + 0x9b500]
xor edi, r10d
mov r10d, dword [r14 - 0x10]
movzx eax, r11b
mov dword [rsp + 8], edi
xor edx, dword [r13 + rax*4 + 0x9b900]
xor r10d, r8d
mov r8d, dword [r14 - 0xc]
movzx eax, bl
mov ebx, dword [r14 - 0x14]
mov dword [rsp + 0x10], r10d
xor edx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor ebx, r9d
xor edx, dword [r13 + rax*4 + 0x9b100]
mov dword [rsp + 0xc], ebx
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 8
movzx edx, al
mov eax, r10d
shr eax, 0x10
movzx ecx, al
mov r11d, dword [r13 + rdx*4 + 0x9b500]
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9bd00]
xor r11d, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9b500]
xor r9d, dword [r13 + rax*4 + 0x9b100]
mov eax, ebx
shr ebx, 0x10
shr eax, 8
movzx ecx, al
mov eax, edi
shr edi, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 8
xor r8d, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, r10b
mov r10d, dword [r14 - 0x20]
xor r8d, dword [r13 + rax*4 + 0x9b100]
mov edx, dword [r13 + rcx*4 + 0x9b500]
movzx eax, bl
xor edx, dword [r13 + rax*4 + 0x9b900]
mov ebx, dword [r14 - 0x24]
xor r10d, r8d
mov r8d, dword [r14 - 0x1c]
movzx eax, dil
mov edi, dword [r14 - 0x28]
xor edx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor edi, r11d
xor edx, dword [r13 + rax*4 + 0x9b100]
xor ebx, r9d
mov dword [rsp + 8], edi
xor r8d, edx
mov dword [rsp + 0xc], ebx
mov dword [rsp + 0x10], r10d
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 8
movzx edx, al
mov eax, r10d
mov r11d, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9bd00]
xor r11d, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
shr r8d, 0x18
movzx ecx, al
movzx edx, r8b
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9b500]
mov r8d, dword [r13 + rdx*4 + 0x9bd00]
xor r9d, dword [r13 + rax*4 + 0x9b100]
mov eax, ebx
shr ebx, 0x10
shr eax, 8
movzx ecx, al
mov eax, edi
shr edi, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 8
xor r8d, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, r10b
mov r10d, dword [r14 - 0x34]
xor r8d, dword [r13 + rax*4 + 0x9b100]
mov edx, dword [r13 + rcx*4 + 0x9b500]
xor r10d, r9d
mov r9d, dword [r14 - 0x30]
movzx eax, bl
mov ebx, dword [r14 - 0x38]
xor edx, dword [r13 + rax*4 + 0x9b900]
xor r9d, r8d
mov r8d, dword [r14 - 0x2c]
movzx eax, dil
xor ebx, r11d
mov dword [rsp + 0xc], r10d
xor edx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
mov dword [rsp + 8], ebx
xor edx, dword [r13 + rax*4 + 0x9b100]
mov dword [rsp + 0x10], r9d
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 8
movzx edx, al
mov eax, r9d
mov ebp, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, bl
xor ebp, dword [r13 + rcx*4 + 0x9bd00]
xor ebp, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, ebx
xor r12d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9b500]
xor r12d, dword [r13 + rax*4 + 0x9b100]
mov eax, r10d
shr eax, 8
movzx ecx, al
mov eax, ebx
xor edi, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
xor edi, dword [r13 + rcx*4 + 0x9b900]
xor edi, dword [r13 + rax*4 + 0x9b100]
shr r9d, 8
shr r10d, 0x10
movzx eax, r10b
shr ebx, 0x18
movzx ecx, r9b
mov ecx, dword [r13 + rcx*4 + 0x9b500]
sub r14, 0x40
xor ecx, dword [r13 + rax*4 + 0x9b900]
movzx eax, bl
xor ecx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9b100]
sub r15, 1
jne 0x90e40
mov r10d, dword [rsi + 0x10]
mov edx, dword [rsi + 0x1c]
mov r8d, dword [rsi + 0x18]
mov r9d, dword [rsi + 0x14]
xor edx, ecx
mov dword [rsp + 0x24], ecx
xor r8d, edi
xor r10d, ebp
xor r9d, r12d
movzx eax, r10b
mov dword [rsp + 0x18], ebp
mov dword [rsp + 0x1c], r12d
movzx eax, byte [rax + r13 + 0x9c100]
mov dword [rsp + 0x20], edi
mov dword [rsp + 0x14], edx
mov byte [rsp + 0x18], al
mov eax, edx
mov dword [rsp + 0x10], r8d
shr eax, 8
mov dword [rsp + 0xc], r9d
mov dword [rsp + 8], r10d
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x19], al
mov eax, r8d
shr eax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1a], al
mov eax, r9d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1b], al
movzx eax, r9b
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x1c], al
mov eax, r10d
shr eax, 8
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1d], al
mov eax, edx
shr edx, 0x18
shr eax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1e], al
mov eax, r8d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1f], al
movzx eax, r8b
shr r8d, 8
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x20], al
mov eax, r9d
shr r9d, 0x10
shr eax, 8
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x21], al
mov eax, r10d
shr eax, 0x10
shr r10d, 0x18
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x22], al
movzx eax, dl
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x23], al
movzx eax, byte [rsp + 0x14]
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x24], al
movzx eax, r8b
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x25], al
movzx eax, r9b
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x26], al
movzx eax, r10b
movzx eax, byte [rax + r13 + 0x9c100]
mov r13, qword [rsp]
mov byte [rsp + 0x27], al
mov eax, dword [rsi]
xor eax, dword [rsp + 0x18]
mov dword [r13], eax
mov eax, dword [rsi + 4]
xor eax, dword [rsp + 0x1c]
mov dword [r13 + 4], eax
mov eax, dword [rsi + 8]
xor eax, dword [rsp + 0x20]
mov dword [r13 + 8], eax
mov eax, dword [rsi + 0xc]
xor eax, dword [rsp + 0x24]
mov dword [r13 + 0xc], eax
xor eax, eax
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x1c], eax
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], eax
mov dword [rsp + 8], eax
mov dword [rsp + 0xc], eax
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.000110ac
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rax, qword [0x0001c170]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov r11d, dword [r8 + 0xe0]
mov r10d, dword [r8 + 0xe4]
mov r9d, dword [r8 + 0xe8]
xor r9d, dword [rcx + 8]
xor r10d, dword [rcx + 4]
xor r11d, dword [rcx]
lea r13, [0x00010000]
mov rsi, r8
mov r8d, dword [r8 + 0xec]
xor r8d, dword [rcx + 0xc]
mov qword [rsp], rdx
mov dword [rsp + 0x10], r9d
mov eax, r8d
mov dword [rsp + 0x14], r8d
mov dword [rsp + 0xc], r10d
shr eax, 8
mov dword [rsp + 8], r11d
lea r14, [rsi + 0xd8]
movzx edx, al
mov eax, r9d
mov r15d, 3
mov ebp, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, r11b
xor ebp, dword [r13 + rcx*4 + 0x9bd00]
xor ebp, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, r11d
xor r12d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9b500]
xor r12d, dword [r13 + rax*4 + 0x9b100]
mov eax, r10d
shr r10d, 0x10
shr eax, 8
movzx ecx, al
mov eax, r11d
shr r11d, 0x18
xor edi, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
shr r9d, 8
xor edi, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, r9b
xor edi, dword [r13 + rax*4 + 0x9b100]
mov ecx, dword [r13 + rcx*4 + 0x9b500]
movzx eax, r10b
xor ecx, dword [r13 + rax*4 + 0x9b900]
movzx eax, r11b
xor ecx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9b100]
nop
xor edi, dword [r14]
mov r8d, dword [r14 + 4]
mov r11d, dword [r14 - 4]
mov ebx, dword [r14 - 8]
xor r8d, ecx
xor r11d, r12d
mov eax, r8d
xor ebx, ebp
mov dword [rsp + 0x14], r8d
shr eax, 8
mov dword [rsp + 0x10], edi
mov dword [rsp + 8], ebx
movzx edx, al
mov eax, edi
mov dword [rsp + 0xc], r11d
mov r10d, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r11d
xor r10d, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, bl
xor r10d, dword [r13 + rcx*4 + 0x9bd00]
xor r10d, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, edi
mov r9d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, ebx
xor r9d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r11b
xor r9d, dword [r13 + rcx*4 + 0x9b500]
xor r9d, dword [r13 + rax*4 + 0x9b100]
mov eax, r11d
shr r11d, 0x10
shr eax, 8
movzx ecx, al
mov eax, ebx
shr ebx, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, dil
shr edi, 8
xor r8d, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, dil
mov edi, dword [r14 - 0x18]
xor r8d, dword [r13 + rax*4 + 0x9b100]
mov edx, dword [r13 + rcx*4 + 0x9b500]
xor edi, r10d
mov r10d, dword [r14 - 0x10]
movzx eax, r11b
mov dword [rsp + 8], edi
xor edx, dword [r13 + rax*4 + 0x9b900]
xor r10d, r8d
mov r8d, dword [r14 - 0xc]
movzx eax, bl
mov ebx, dword [r14 - 0x14]
mov dword [rsp + 0x10], r10d
xor edx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor ebx, r9d
xor edx, dword [r13 + rax*4 + 0x9b100]
mov dword [rsp + 0xc], ebx
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 8
movzx edx, al
mov eax, r10d
shr eax, 0x10
movzx ecx, al
mov r11d, dword [r13 + rdx*4 + 0x9b500]
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9bd00]
xor r11d, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov r8d, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9b500]
xor r9d, dword [r13 + rax*4 + 0x9b100]
mov eax, ebx
shr ebx, 0x10
shr eax, 8
movzx ecx, al
mov eax, edi
shr edi, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 8
xor r8d, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, r10b
mov r10d, dword [r14 - 0x20]
xor r8d, dword [r13 + rax*4 + 0x9b100]
mov edx, dword [r13 + rcx*4 + 0x9b500]
movzx eax, bl
xor edx, dword [r13 + rax*4 + 0x9b900]
mov ebx, dword [r14 - 0x24]
xor r10d, r8d
mov r8d, dword [r14 - 0x1c]
movzx eax, dil
mov edi, dword [r14 - 0x28]
xor edx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor edi, r11d
xor edx, dword [r13 + rax*4 + 0x9b100]
xor ebx, r9d
mov dword [rsp + 8], edi
xor r8d, edx
mov dword [rsp + 0xc], ebx
mov dword [rsp + 0x10], r10d
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 8
movzx edx, al
mov eax, r10d
mov r11d, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, ebx
xor r11d, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, dil
xor r11d, dword [r13 + rcx*4 + 0x9bd00]
xor r11d, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr eax, 0x10
movzx edx, al
mov eax, r10d
mov r9d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
mov eax, edi
xor r9d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
shr r8d, 0x18
movzx ecx, al
movzx edx, r8b
movzx eax, bl
xor r9d, dword [r13 + rcx*4 + 0x9b500]
mov r8d, dword [r13 + rdx*4 + 0x9bd00]
xor r9d, dword [r13 + rax*4 + 0x9b100]
mov eax, ebx
shr ebx, 0x10
shr eax, 8
movzx ecx, al
mov eax, edi
shr edi, 0x18
xor r8d, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r10b
shr r10d, 8
xor r8d, dword [r13 + rcx*4 + 0x9b900]
movzx ecx, r10b
mov r10d, dword [r14 - 0x34]
xor r8d, dword [r13 + rax*4 + 0x9b100]
mov edx, dword [r13 + rcx*4 + 0x9b500]
xor r10d, r9d
mov r9d, dword [r14 - 0x30]
movzx eax, bl
mov ebx, dword [r14 - 0x38]
xor edx, dword [r13 + rax*4 + 0x9b900]
xor r9d, r8d
mov r8d, dword [r14 - 0x2c]
movzx eax, dil
xor ebx, r11d
mov dword [rsp + 0xc], r10d
xor edx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
mov dword [rsp + 8], ebx
xor edx, dword [r13 + rax*4 + 0x9b100]
mov dword [rsp + 0x10], r9d
xor r8d, edx
mov eax, r8d
mov dword [rsp + 0x14], r8d
shr eax, 8
movzx edx, al
mov eax, r9d
mov ebp, dword [r13 + rdx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
mov eax, r10d
xor ebp, dword [r13 + rcx*4 + 0x9b900]
shr eax, 0x18
movzx ecx, al
movzx eax, bl
xor ebp, dword [r13 + rcx*4 + 0x9bd00]
xor ebp, dword [r13 + rax*4 + 0x9b100]
mov eax, r8d
shr r8d, 0x18
shr eax, 0x10
movzx edx, al
mov eax, r9d
mov r12d, dword [r13 + rdx*4 + 0x9b900]
shr eax, 0x18
movzx edx, r8b
mov edi, dword [r13 + rdx*4 + 0x9bd00]
movzx ecx, al
mov eax, ebx
xor r12d, dword [r13 + rcx*4 + 0x9bd00]
shr eax, 8
movzx ecx, al
movzx eax, r10b
xor r12d, dword [r13 + rcx*4 + 0x9b500]
xor r12d, dword [r13 + rax*4 + 0x9b100]
mov eax, r10d
shr eax, 8
movzx ecx, al
mov eax, ebx
xor edi, dword [r13 + rcx*4 + 0x9b500]
shr eax, 0x10
movzx ecx, al
movzx eax, r9b
xor edi, dword [r13 + rcx*4 + 0x9b900]
xor edi, dword [r13 + rax*4 + 0x9b100]
shr r9d, 8
shr r10d, 0x10
movzx eax, r10b
shr ebx, 0x18
movzx ecx, r9b
mov ecx, dword [r13 + rcx*4 + 0x9b500]
sub r14, 0x40
xor ecx, dword [r13 + rax*4 + 0x9b900]
movzx eax, bl
xor ecx, dword [r13 + rax*4 + 0x9bd00]
movzx eax, byte [rsp + 0x14]
xor ecx, dword [r13 + rax*4 + 0x9b100]
sub r15, 1
jne 0x91648
mov r10d, dword [rsi + 0x10]
mov edx, dword [rsi + 0x1c]
mov r8d, dword [rsi + 0x18]
mov r9d, dword [rsi + 0x14]
xor edx, ecx
mov dword [rsp + 0x24], ecx
xor r8d, edi
xor r10d, ebp
xor r9d, r12d
movzx eax, r10b
mov dword [rsp + 0x18], ebp
mov dword [rsp + 0x1c], r12d
movzx eax, byte [rax + r13 + 0x9c100]
mov dword [rsp + 0x20], edi
mov dword [rsp + 0x14], edx
mov byte [rsp + 0x18], al
mov eax, edx
mov dword [rsp + 0x10], r8d
shr eax, 8
mov dword [rsp + 0xc], r9d
mov dword [rsp + 8], r10d
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x19], al
mov eax, r8d
shr eax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1a], al
mov eax, r9d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1b], al
movzx eax, r9b
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x1c], al
mov eax, r10d
shr eax, 8
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1d], al
mov eax, edx
shr edx, 0x18
shr eax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1e], al
mov eax, r8d
shr eax, 0x18
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x1f], al
movzx eax, r8b
shr r8d, 8
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x20], al
mov eax, r9d
shr r9d, 0x10
shr eax, 8
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x21], al
mov eax, r10d
shr eax, 0x10
shr r10d, 0x18
movzx ecx, al
movzx eax, byte [rcx + r13 + 0x9c100]
mov byte [rsp + 0x22], al
movzx eax, dl
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x23], al
movzx eax, byte [rsp + 0x14]
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x24], al
movzx eax, r8b
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x25], al
movzx eax, r9b
movzx eax, byte [rax + r13 + 0x9c100]
mov byte [rsp + 0x26], al
movzx eax, r10b
movzx eax, byte [rax + r13 + 0x9c100]
mov r13, qword [rsp]
mov byte [rsp + 0x27], al
mov eax, dword [rsi]
xor eax, dword [rsp + 0x18]
mov dword [r13], eax
mov eax, dword [rsi + 4]
xor eax, dword [rsp + 0x1c]
mov dword [r13 + 4], eax
mov eax, dword [rsi + 8]
xor eax, dword [rsp + 0x20]
mov dword [r13 + 8], eax
mov eax, dword [rsi + 0xc]
xor eax, dword [rsp + 0x24]
mov dword [r13 + 0xc], eax
xor eax, eax
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x1c], eax
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], eax
mov dword [rsp + 8], eax
mov dword [rsp + 0xc], eax
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.000110ac
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, dword [r8]
mov r10, rdx
mov rdx, rcx
mov rcx, r10
cmp r9d, 1
jne 0x91d02
add r8, 4
cmp eax, 0xe
jne 0x91cf0
jmp 0x8f7d4
cmp eax, 0xa
jne 0x91cfa
jmp 0x8ffe4
mov r9d, eax
jmp 0x8f308
cmp eax, 0xe
jne 0x91d13
add r8, 0xf4
jmp 0x914c8
cmp eax, 0xa
jne 0x91d24
add r8, 0xb4
jmp 0x90cc0
cmp eax, 0xc
jne 0x91d38
add r8, 0xd4
mov r9d, eax
jmp 0x907f4
add r8, 0xf4
mov r9d, eax
jmp 0x907f4