Function at 0x1401d67c8
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x18
mov r10d, dword [rcx + 4]
lea rax, [r8*8]
add qword [rcx + 0xa0], rax
mov r13, rcx
mov r11d, dword [rcx]
mov dword [rsp + 0x78], r11d
cmp r10d, 4
jae 0x1401d685d
mov eax, 4
mov r9d, r8d
sub eax, r10d
mov ecx, eax
cmp r8, rcx
cmovae r9d, eax
add r10d, r9d
test r9d, r9d
je 0x1401d684f
mov eax, r9d
sub r8, rax
mov qword [rsp + 0x70], r8
movzx eax, byte [rdx]
inc rdx
shl r11d, 8
or r11d, eax
add r9d, 0xffffffff
jne 0x1401d6832
mov qword [rsp + 0x68], rdx
mov dword [rsp + 0x78], r11d
test r8, r8
jne 0x1401d685d
mov dword [r13 + 4], r10d
jmp 0x1401d83e4
mov ecx, dword [r13 + 8]
lea r14, [0x140000000]
mov eax, ecx
test ecx, ecx
je 0x1401d6885
sub eax, 1
je 0x1401d71e1
cmp eax, 1
je 0x1401d7ad0
jmp 0x1401d83c1
mov eax, dword [r13 + 0xc]
xor dword [r13 + 0x64], eax
mov eax, dword [r13 + 0x6c]
xor dword [r13 + 0x10], eax
mov eax, dword [r13 + 0x78]
xor dword [r13 + 0x1c], eax
mov eax, dword [r13 + 0x84]
mov edx, dword [r13 + 0x10]
xor dword [r13 + 0x90], edx
mov r8d, dword [r13 + 0x90]
mov ecx, dword [r13 + 0x14]
xor dword [r13 + 0x94], ecx
xor dword [r13 + 0x4c], ecx
mov r9d, dword [r13 + 0x94]
xor dword [r13 + 0x48], edx
lea rdx, [0x140000000]
mov dword [rsp], eax
mov eax, dword [r13 + 0x18]
xor dword [r13 + 0x98], eax
xor dword [r13 + 0x50], eax
movzx eax, byte [r13 + 0x92]
mov r10d, dword [r13 + 0x98]
mov dword [r13 + 0xc], r11d
mov r15d, dword [r14 + rax*4 + 0x4a6820]
mov eax, r8d
shr rax, 0x18
mov r14d, r15d
xor r14d, dword [rdx + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x91]
mov r12d, dword [rdx + rax*4 + 0x4a7040]
xor r14d, r12d
movzx eax, r8b
mov edi, dword [rdx + rax*4 + 0x4a7480]
xor r14d, edi
mov eax, r9d
shr rax, 0x18
mov ebp, dword [rdx + rax*4 + 0x4a6c40]
mov esi, ebp
movzx eax, byte [r13 + 0x96]
xor esi, dword [rdx + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x95]
mov eax, dword [rdx + rax*4 + 0x4a7040]
xor esi, eax
xor r12d, eax
movzx eax, r9b
lea r9, [0x140000000]
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor edi, eax
xor esi, eax
mov eax, r10d
shr rax, 0x18
mov ebx, dword [rdx + rax*4 + 0x4a6c40]
xor ebp, ebx
movzx eax, byte [r13 + 0x9a]
mov ecx, dword [rdx + rax*4 + 0x4a6820]
xor r15d, ecx
movzx eax, byte [r13 + 0x99]
xor ecx, dword [rdx + rax*4 + 0x4a7040]
xor ebx, ecx
movzx eax, r10b
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r11d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor ebp, r8d
movzx eax, byte [r13 + 0xe]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r8d, eax
xor r15d, eax
movzx eax, byte [r13 + 0xd]
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r12d, ecx
movzx eax, r11b
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov eax, edi
xor r8d, ecx
xor eax, r8d
movzx r13d, al
mov eax, r15d
mov rcx, qword [rsp + 0x60]
xor eax, esi
mov r10d, 0xff0000
mov edx, 0xff00
and eax, r10d
mov r11d, r15d
or r13d, eax
shl r11d, 8
mov eax, r12d
xor r11d, ebx
xor eax, ebx
and r11d, r10d
and eax, edx
mov r9d, 0xff000000
or r13d, eax
mov eax, ebp
xor eax, r14d
and eax, r9d
or r13d, eax
mov eax, edi
shr eax, 0x18
xor eax, r14d
mov dword [rcx + 0x90], r13d
movzx eax, al
or r11d, eax
mov eax, r12d
shl eax, 8
xor eax, r8d
and eax, edx
or r11d, eax
mov eax, ebp
shl eax, 8
xor eax, esi
and eax, r9d
mov r9d, r15d
or r11d, eax
shl r9d, 0x10
xor r9d, r8d
shr r15d, 8
and r9d, r10d
mov dword [rcx + 0x94], r11d
mov eax, edi
xor r15d, r14d
shr eax, 0x10
and r15d, r10d
xor eax, esi
shr edi, 8
movzx eax, al
xor edi, ebx
or r9d, eax
mov eax, ebp
shl eax, 0x10
xor eax, ebx
shl ebp, 0x18
and eax, 0xff000000
xor ebp, r8d
or r9d, eax
and ebp, 0xff000000
mov eax, r12d
shr r12d, 8
shr eax, 0x10
xor r12d, esi
and r12d, 0xff00
xor eax, r14d
and eax, edx
movzx edx, dil
or edx, r15d
or r9d, eax
or edx, ebp
mov dword [rcx + 0x98], r9d
or edx, r12d
mov r12, rcx
mov dword [rcx + 0xc], edx
mov ecx, r11d
xor ecx, dword [rsp]
xor dword [r12 + 0x88], r9d
xor dword [r12 + 0x8c], edx
xor dword [r12 + 0x3c], r11d
mov r8d, dword [r12 + 0x88]
mov r10d, dword [r12 + 0x8c]
mov dword [r12 + 0x84], ecx
movzx eax, byte [r12 + 0x86]
xor dword [r12 + 0x40], r9d
lea r9, [0x140000000]
xor dword [r12 + 0x44], edx
mov r14d, dword [r9 + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov ebp, r14d
xor ebp, dword [r9 + rax*4 + 0x4a6c40]
movzx eax, byte [r12 + 0x85]
mov r15d, dword [r9 + rax*4 + 0x4a7040]
xor ebp, r15d
movzx eax, cl
mov ebx, dword [r9 + rax*4 + 0x4a7480]
mov eax, r8d
shr rax, 0x18
xor ebp, ebx
mov esi, dword [r9 + rax*4 + 0x4a6c40]
mov edi, esi
movzx eax, byte [r12 + 0x8a]
xor edi, dword [r9 + rax*4 + 0x4a6820]
movzx eax, byte [r12 + 0x89]
mov eax, dword [r9 + rax*4 + 0x4a7040]
xor edi, eax
xor r15d, eax
movzx eax, r8b
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r10d
shr rax, 0x18
mov edx, dword [r9 + rax*4 + 0x4a6c40]
xor esi, edx
movzx eax, byte [r12 + 0x8e]
mov ecx, dword [r9 + rax*4 + 0x4a6820]
xor r14d, ecx
movzx eax, byte [r12 + 0x8d]
xor ecx, dword [r9 + rax*4 + 0x4a7040]
xor edx, ecx
movzx eax, r10b
mov r10d, 0xff0000
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor edx, eax
xor ebx, eax
mov eax, r13d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor esi, r8d
movzx eax, byte [r12 + 0x92]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r8d, eax
xor r14d, eax
movzx eax, byte [r12 + 0x91]
mov r11d, r14d
shl r11d, 8
xor r11d, edx
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r15d, ecx
movzx eax, r13b
mov r13, qword [rsp + 0x60]
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov eax, ebx
xor r8d, ecx
mov r9d, 0xff000000
xor eax, r8d
movzx r12d, al
mov eax, r14d
xor eax, edi
and eax, r10d
or r12d, eax
mov eax, r15d
xor eax, edx
and eax, 0xff00
or r12d, eax
mov eax, esi
xor eax, ebp
and eax, r9d
or r12d, eax
mov eax, ebx
mov dword [r13 + 0x84], r12d
and r11d, r10d
shr eax, 0x18
mov ecx, 0xff00
xor eax, ebp
movzx eax, al
or r11d, eax
mov eax, r15d
shl eax, 8
xor eax, r8d
and eax, ecx
or r11d, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, r9d
mov r9d, r14d
or r11d, eax
shl r9d, 0x10
xor dword [r13 + 0x30], r11d
xor r9d, r8d
and r9d, r10d
shr r14d, 8
xor r14d, ebp
mov dword [r13 + 0x88], r11d
mov eax, ebx
and r14d, r10d
shr eax, 0x10
xor eax, edi
shr ebx, 8
movzx eax, al
xor ebx, edx
or r9d, eax
mov eax, esi
shl eax, 0x10
xor eax, edx
shl esi, 0x18
and eax, 0xff000000
movzx edx, bl
or r9d, eax
or edx, r14d
mov eax, r15d
xor esi, r8d
shr eax, 0x10
and esi, 0xff000000
xor eax, ebp
shr r15d, 8
and eax, ecx
xor r15d, edi
or r9d, eax
and r15d, ecx
xor dword [r13 + 0x7c], r9d
or edx, esi
xor dword [r13 + 0x34], r9d
or edx, r15d
xor dword [r13 + 0x80], edx
mov ecx, r11d
xor ecx, dword [r13 + 0x78]
mov r8d, dword [r13 + 0x7c]
xor dword [r13 + 0x38], edx
mov r10d, dword [r13 + 0x80]
mov dword [r13 + 0x78], ecx
movzx eax, byte [r13 + 0x7a]
mov dword [r13 + 0x8c], r9d
lea r9, [0x140000000]
mov dword [r13 + 0x90], edx
mov r14d, dword [r9 + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov ebp, r14d
xor ebp, dword [r9 + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x79]
mov r15d, dword [r9 + rax*4 + 0x4a7040]
xor ebp, r15d
movzx eax, cl
mov ebx, dword [r9 + rax*4 + 0x4a7480]
mov eax, r8d
shr rax, 0x18
xor ebp, ebx
mov esi, dword [r9 + rax*4 + 0x4a6c40]
mov edi, esi
movzx eax, byte [r13 + 0x7e]
xor edi, dword [r9 + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x7d]
mov eax, dword [r9 + rax*4 + 0x4a7040]
xor edi, eax
xor r15d, eax
movzx eax, r8b
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r10d
shr rax, 0x18
mov edx, dword [r9 + rax*4 + 0x4a6c40]
xor esi, edx
movzx eax, byte [r13 + 0x82]
mov ecx, dword [r9 + rax*4 + 0x4a6820]
xor r14d, ecx
movzx eax, byte [r13 + 0x81]
xor ecx, dword [r9 + rax*4 + 0x4a7040]
xor edx, ecx
movzx eax, r10b
mov r10d, 0xff0000
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor edx, eax
xor ebx, eax
mov eax, r12d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor esi, r8d
movzx eax, byte [r13 + 0x86]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r14d, eax
xor r8d, eax
mov r11d, r14d
movzx eax, byte [r13 + 0x85]
shl r11d, 8
xor r11d, edx
and r11d, r10d
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r15d, ecx
movzx eax, r12b
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov r9d, 0xff000000
xor r8d, ecx
mov eax, ebx
xor eax, r8d
mov ecx, 0xff00
movzx r12d, al
mov eax, r14d
xor eax, edi
and eax, r10d
or r12d, eax
mov eax, r15d
xor eax, edx
and eax, 0xff00
or r12d, eax
mov eax, esi
xor eax, ebp
and eax, r9d
or r12d, eax
mov eax, ebx
shr eax, 0x18
xor eax, ebp
mov dword [r13 + 0x78], r12d
movzx eax, al
or r11d, eax
mov eax, r15d
shl eax, 8
xor eax, r8d
and eax, ecx
or r11d, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, r9d
mov r9d, r14d
shl r9d, 0x10
or r11d, eax
xor r9d, r8d
mov dword [r13 + 0x7c], r11d
and r9d, r10d
mov eax, ebx
shr eax, 0x10
xor dword [r13 + 0x24], r11d
xor eax, edi
movzx eax, al
or r9d, eax
shr ebx, 8
xor ebx, edx
shr r14d, 8
mov eax, esi
xor r14d, ebp
shl eax, 0x10
and r14d, r10d
xor eax, edx
shl esi, 0x18
and eax, 0xff000000
movzx edx, bl
or r9d, eax
xor esi, r8d
or edx, r14d
mov eax, r15d
shr eax, 0x10
lea r14, [0x140000000]
xor eax, ebp
shr r15d, 8
and eax, ecx
xor r15d, edi
or r9d, eax
and r15d, ecx
xor dword [r13 + 0x70], r9d
mov ecx, r11d
xor ecx, dword [r13 + 0x6c]
and esi, 0xff000000
mov r8d, dword [r13 + 0x70]
or edx, esi
mov dword [r13 + 0x6c], ecx
or edx, r15d
xor dword [r13 + 0x74], edx
movzx eax, byte [r13 + 0x6e]
mov r10d, dword [r13 + 0x74]
mov dword [r13 + 0x80], r9d
xor r9d, dword [rsp]
mov esi, dword [r14 + rax*4 + 0x4a6820]
mov eax, ecx
xor dword [r13 + 0x28], r9d
mov edi, esi
shr rax, 0x18
mov dword [r13 + 0x84], edx
xor edx, dword [r13 + 0x2c]
xor edx, dword [rsp + 0x78]
xor edi, dword [r14 + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x6d]
mov dword [r13 + 0x2c], edx
mov ebp, dword [r14 + rax*4 + 0x4a7040]
xor edi, ebp
movzx eax, cl
mov r9d, dword [r14 + rax*4 + 0x4a7480]
mov eax, r8d
shr rax, 0x18
xor edi, r9d
mov ebx, dword [r14 + rax*4 + 0x4a6c40]
mov r11d, ebx
movzx eax, byte [r13 + 0x72]
xor r11d, dword [r14 + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x71]
mov eax, dword [r14 + rax*4 + 0x4a7040]
xor r11d, eax
xor ebp, eax
movzx eax, r8b
mov eax, dword [r14 + rax*4 + 0x4a7480]
xor r11d, eax
xor r9d, eax
mov eax, r10d
shr rax, 0x18
mov r8d, dword [r14 + rax*4 + 0x4a6c40]
xor ebx, r8d
movzx eax, byte [r13 + 0x76]
mov ecx, dword [r14 + rax*4 + 0x4a6820]
xor esi, ecx
movzx eax, byte [r13 + 0x75]
xor ecx, dword [r14 + rax*4 + 0x4a7040]
xor r8d, ecx
movzx eax, r10b
mov eax, dword [r14 + rax*4 + 0x4a7480]
mov r10d, 0xff0000
xor r8d, eax
xor r9d, eax
mov eax, r12d
mov r15d, 0xff00
shr rax, 0x18
mov edx, dword [r14 + rax*4 + 0x4a6c40]
xor ebx, edx
movzx eax, byte [r13 + 0x7a]
mov eax, dword [r14 + rax*4 + 0x4a6820]
xor esi, eax
xor edx, eax
movzx eax, byte [r13 + 0x79]
mov ecx, dword [r14 + rax*4 + 0x4a7040]
xor ebp, ecx
movzx eax, r12b
mov r12d, 0xff000000
xor ecx, dword [r14 + rax*4 + 0x4a7480]
mov eax, r9d
xor edx, ecx
xor eax, edx
movzx ecx, al
mov eax, esi
xor eax, r11d
and eax, r10d
or ecx, eax
mov eax, ebp
xor eax, r8d
and eax, r15d
or ecx, eax
mov eax, ebx
xor eax, edi
and eax, r12d
or ecx, eax
mov eax, r9d
shr eax, 0x18
xor eax, edi
mov dword [r13 + 0x6c], ecx
movzx eax, al
mov ecx, esi
shl ecx, 8
xor ecx, r8d
and ecx, r10d
or ecx, eax
mov eax, ebp
shl eax, 8
xor eax, edx
and eax, r15d
or ecx, eax
mov eax, ebx
shl eax, 8
xor eax, r11d
and eax, r12d
or ecx, eax
mov eax, r9d
shr eax, 0x10
xor eax, r11d
mov dword [r13 + 0x70], ecx
movzx eax, al
mov ecx, esi
shl ecx, 0x10
xor ecx, edx
shr r9d, 8
and ecx, r10d
shr esi, 8
or ecx, eax
xor r9d, r8d
mov eax, ebx
shl eax, 0x10
xor eax, r8d
and eax, r12d
or ecx, eax
mov eax, ebp
shr eax, 0x10
xor eax, edi
and eax, r15d
or ecx, eax
movzx eax, r9b
mov dword [r13 + 0x74], ecx
xor esi, edi
mov r8, qword [rsp + 0x70]
and esi, r10d
shl ebx, 0x18
or eax, esi
xor ebx, edx
shr ebp, 8
mov rdx, qword [rsp + 0x68]
and ebx, r12d
xor ebp, r11d
or eax, ebx
and ebp, r15d
or eax, ebp
mov dword [r13 + 0x78], eax
cmp r8, 4
jbe 0x1401d83bc
mov ecx, dword [rdx]
add rdx, 4
rol ecx, 0x10
mov r11d, ecx
mov qword [rsp + 0x68], rdx
shr r11d, 8
mov eax, ecx
shl eax, 8
xor r11d, eax
shl ecx, 8
and r11d, 0xff00ff
xor r11d, ecx
sub r8, 4
mov dword [rsp + 0x78], r11d
mov qword [rsp + 0x70], r8
mov eax, dword [r13 + 0x6c]
xor dword [r13 + 0x34], eax
mov eax, dword [r13 + 0x3c]
xor dword [r13 + 0x70], eax
mov eax, dword [r13 + 0x48]
xor dword [r13 + 0x7c], eax
mov eax, dword [r13 + 0x54]
mov edx, dword [r13 + 0x70]
xor dword [r13 + 0x60], edx
mov r8d, dword [r13 + 0x60]
mov ecx, dword [r13 + 0x74]
xor dword [r13 + 0x64], ecx
xor dword [r13 + 0x1c], ecx
mov r9d, dword [r13 + 0x64]
xor dword [r13 + 0x18], edx
lea rdx, [0x140000000]
mov dword [rsp], eax
mov eax, dword [r13 + 0x78]
xor dword [r13 + 0x68], eax
xor dword [r13 + 0x20], eax
movzx eax, byte [r13 + 0x62]
mov r10d, dword [r13 + 0x68]
mov dword [r13 + 0x6c], r11d
mov r15d, dword [r14 + rax*4 + 0x4a6820]
mov eax, r8d
shr rax, 0x18
mov r14d, r15d
xor r14d, dword [rdx + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x61]
mov r12d, dword [rdx + rax*4 + 0x4a7040]
xor r14d, r12d
movzx eax, r8b
mov edi, dword [rdx + rax*4 + 0x4a7480]
xor r14d, edi
mov eax, r9d
shr rax, 0x18
mov ebp, dword [rdx + rax*4 + 0x4a6c40]
mov esi, ebp
movzx eax, byte [r13 + 0x66]
xor esi, dword [rdx + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x65]
mov eax, dword [rdx + rax*4 + 0x4a7040]
xor esi, eax
xor r12d, eax
movzx eax, r9b
lea r9, [0x140000000]
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor edi, eax
xor esi, eax
mov eax, r10d
shr rax, 0x18
mov ebx, dword [rdx + rax*4 + 0x4a6c40]
xor ebp, ebx
movzx eax, byte [r13 + 0x6a]
mov ecx, dword [rdx + rax*4 + 0x4a6820]
xor r15d, ecx
movzx eax, byte [r13 + 0x69]
xor ecx, dword [rdx + rax*4 + 0x4a7040]
xor ebx, ecx
movzx eax, r10b
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r11d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor ebp, r8d
movzx eax, byte [r13 + 0x6e]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r8d, eax
xor r15d, eax
movzx eax, byte [r13 + 0x6d]
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r12d, ecx
movzx eax, r11b
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov eax, edi
xor r8d, ecx
xor eax, r8d
movzx r13d, al
mov eax, r15d
mov rcx, qword [rsp + 0x60]
xor eax, esi
mov r10d, 0xff0000
mov edx, 0xff00
and eax, r10d
mov r11d, r15d
or r13d, eax
shl r11d, 8
mov eax, r12d
xor r11d, ebx
xor eax, ebx
and r11d, r10d
and eax, edx
mov r9d, 0xff000000
or r13d, eax
mov eax, ebp
xor eax, r14d
and eax, r9d
or r13d, eax
mov eax, edi
shr eax, 0x18
xor eax, r14d
mov dword [rcx + 0x60], r13d
movzx eax, al
or r11d, eax
mov eax, r12d
shl eax, 8
xor eax, r8d
and eax, edx
or r11d, eax
mov eax, ebp
shl eax, 8
xor eax, esi
and eax, r9d
mov r9d, r15d
or r11d, eax
shl r9d, 0x10
xor r9d, r8d
shr r15d, 8
and r9d, r10d
mov dword [rcx + 0x64], r11d
mov eax, edi
xor r15d, r14d
shr eax, 0x10
and r15d, r10d
xor eax, esi
shr edi, 8
movzx eax, al
xor edi, ebx
or r9d, eax
mov eax, ebp
shl eax, 0x10
xor eax, ebx
shl ebp, 0x18
and eax, 0xff000000
xor ebp, r8d
or r9d, eax
and ebp, 0xff000000
mov eax, r12d
shr r12d, 8
shr eax, 0x10
xor r12d, esi
and r12d, 0xff00
xor eax, r14d
and eax, edx
movzx edx, dil
or edx, r15d
or r9d, eax
or edx, ebp
mov dword [rcx + 0x68], r9d
or edx, r12d
mov r12, rcx
mov dword [rcx + 0x6c], edx
mov ecx, r11d
xor ecx, dword [rsp]
xor dword [r12 + 0x58], r9d
xor dword [r12 + 0x5c], edx
xor dword [r12 + 0xc], r11d
mov r8d, dword [r12 + 0x58]
mov r10d, dword [r12 + 0x5c]
mov dword [r12 + 0x54], ecx
movzx eax, byte [r12 + 0x56]
xor dword [r12 + 0x10], r9d
lea r9, [0x140000000]
xor dword [r12 + 0x14], edx
mov r14d, dword [r9 + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov ebp, r14d
xor ebp, dword [r9 + rax*4 + 0x4a6c40]
movzx eax, byte [r12 + 0x55]
mov r15d, dword [r9 + rax*4 + 0x4a7040]
xor ebp, r15d
movzx eax, cl
mov ebx, dword [r9 + rax*4 + 0x4a7480]
mov eax, r8d
shr rax, 0x18
xor ebp, ebx
mov esi, dword [r9 + rax*4 + 0x4a6c40]
mov edi, esi
movzx eax, byte [r12 + 0x5a]
xor edi, dword [r9 + rax*4 + 0x4a6820]
movzx eax, byte [r12 + 0x59]
mov eax, dword [r9 + rax*4 + 0x4a7040]
xor edi, eax
xor r15d, eax
movzx eax, r8b
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r10d
shr rax, 0x18
mov edx, dword [r9 + rax*4 + 0x4a6c40]
xor esi, edx
movzx eax, byte [r12 + 0x5e]
mov ecx, dword [r9 + rax*4 + 0x4a6820]
xor r14d, ecx
movzx eax, byte [r12 + 0x5d]
xor ecx, dword [r9 + rax*4 + 0x4a7040]
xor edx, ecx
movzx eax, r10b
mov r10d, 0xff0000
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor edx, eax
xor ebx, eax
mov eax, r13d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor esi, r8d
movzx eax, byte [r12 + 0x62]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r8d, eax
xor r14d, eax
movzx eax, byte [r12 + 0x61]
mov r11d, r14d
shl r11d, 8
xor r11d, edx
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r15d, ecx
movzx eax, r13b
mov r13, qword [rsp + 0x60]
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov eax, ebx
xor r8d, ecx
mov r9d, 0xff000000
xor eax, r8d
movzx r12d, al
mov eax, r14d
xor eax, edi
and eax, r10d
or r12d, eax
mov eax, r15d
xor eax, edx
and eax, 0xff00
or r12d, eax
mov eax, esi
xor eax, ebp
and eax, r9d
or r12d, eax
mov eax, ebx
mov dword [r13 + 0x54], r12d
and r11d, r10d
shr eax, 0x18
mov ecx, 0xff00
xor eax, ebp
movzx eax, al
or r11d, eax
mov eax, r15d
shl eax, 8
xor eax, r8d
and eax, ecx
or r11d, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, r9d
mov r9d, r14d
or r11d, eax
shl r9d, 0x10
xor dword [r13 + 0x90], r11d
xor r9d, r8d
and r9d, r10d
shr r14d, 8
xor r14d, ebp
mov dword [r13 + 0x58], r11d
mov eax, ebx
and r14d, r10d
shr eax, 0x10
xor eax, edi
shr ebx, 8
movzx eax, al
xor ebx, edx
or r9d, eax
mov eax, esi
shl eax, 0x10
xor eax, edx
shl esi, 0x18
and eax, 0xff000000
movzx edx, bl
or r9d, eax
or edx, r14d
mov eax, r15d
xor esi, r8d
shr eax, 0x10
and esi, 0xff000000
xor eax, ebp
shr r15d, 8
and eax, ecx
xor r15d, edi
or r9d, eax
and r15d, ecx
xor dword [r13 + 0x4c], r9d
or edx, esi
xor dword [r13 + 0x94], r9d
or edx, r15d
xor dword [r13 + 0x50], edx
mov ecx, r11d
xor ecx, dword [r13 + 0x48]
mov r8d, dword [r13 + 0x4c]
xor dword [r13 + 0x98], edx
mov r10d, dword [r13 + 0x50]
mov dword [r13 + 0x48], ecx
movzx eax, byte [r13 + 0x4a]
mov dword [r13 + 0x5c], r9d
lea r9, [0x140000000]
mov dword [r13 + 0x60], edx
mov r14d, dword [r9 + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov ebp, r14d
xor ebp, dword [r9 + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x49]
mov r15d, dword [r9 + rax*4 + 0x4a7040]
xor ebp, r15d
movzx eax, cl
mov ebx, dword [r9 + rax*4 + 0x4a7480]
mov eax, r8d
shr rax, 0x18
xor ebp, ebx
mov esi, dword [r9 + rax*4 + 0x4a6c40]
mov edi, esi
movzx eax, byte [r13 + 0x4e]
xor edi, dword [r9 + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x4d]
mov eax, dword [r9 + rax*4 + 0x4a7040]
xor edi, eax
xor r15d, eax
movzx eax, r8b
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r10d
shr rax, 0x18
mov edx, dword [r9 + rax*4 + 0x4a6c40]
xor esi, edx
movzx eax, byte [r13 + 0x52]
mov ecx, dword [r9 + rax*4 + 0x4a6820]
xor r14d, ecx
movzx eax, byte [r13 + 0x51]
xor ecx, dword [r9 + rax*4 + 0x4a7040]
xor edx, ecx
movzx eax, r10b
mov r10d, 0xff0000
mov eax, dword [r9 + rax*4 + 0x4a7480]
xor edx, eax
xor ebx, eax
mov eax, r12d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor esi, r8d
movzx eax, byte [r13 + 0x56]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r14d, eax
xor r8d, eax
mov r11d, r14d
movzx eax, byte [r13 + 0x55]
shl r11d, 8
xor r11d, edx
and r11d, r10d
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r15d, ecx
movzx eax, r12b
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov r9d, 0xff000000
xor r8d, ecx
mov eax, ebx
xor eax, r8d
mov ecx, 0xff00
movzx r12d, al
mov eax, r14d
xor eax, edi
and eax, r10d
or r12d, eax
mov eax, r15d
xor eax, edx
and eax, 0xff00
or r12d, eax
mov eax, esi
xor eax, ebp
and eax, r9d
or r12d, eax
mov eax, ebx
shr eax, 0x18
xor eax, ebp
mov dword [r13 + 0x48], r12d
movzx eax, al
or r11d, eax
mov eax, r15d
shl eax, 8
xor eax, r8d
and eax, ecx
or r11d, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, r9d
mov r9d, r14d
shl r9d, 0x10
or r11d, eax
xor r9d, r8d
mov dword [r13 + 0x4c], r11d
and r9d, r10d
mov eax, ebx
shr eax, 0x10
xor dword [r13 + 0x84], r11d
xor eax, edi
movzx eax, al
or r9d, eax
shr ebx, 8
xor ebx, edx
shr r14d, 8
mov eax, esi
xor r14d, ebp
shl eax, 0x10
and r14d, r10d
xor eax, edx
shl esi, 0x18
and eax, 0xff000000
movzx edx, bl
or r9d, eax
xor esi, r8d
mov eax, r15d
or edx, r14d
shr eax, 0x10
lea r14, [0x140000000]
xor eax, ebp
shr r15d, 8
and eax, ecx
xor r15d, edi
or r9d, eax
and r15d, ecx
xor dword [r13 + 0x40], r9d
mov ecx, r11d
xor ecx, dword [r13 + 0x3c]
and esi, 0xff000000
mov r8d, dword [r13 + 0x40]
or edx, esi
mov dword [r13 + 0x3c], ecx
or edx, r15d
xor dword [r13 + 0x44], edx
movzx eax, byte [r13 + 0x3e]
mov r10d, dword [r13 + 0x44]
mov dword [r13 + 0x50], r9d
xor r9d, dword [rsp]
mov esi, dword [r14 + rax*4 + 0x4a6820]
mov eax, ecx
xor dword [r13 + 0x88], r9d
mov edi, esi
shr rax, 0x18
mov dword [r13 + 0x54], edx
xor edx, dword [rsp + 0x78]
xor dword [r13 + 0x8c], edx
xor edi, dword [r14 + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x3d]
mov ebp, dword [r14 + rax*4 + 0x4a7040]
xor edi, ebp
movzx eax, cl
mov r9d, dword [r14 + rax*4 + 0x4a7480]
mov eax, r8d
shr rax, 0x18
xor edi, r9d
mov ebx, dword [r14 + rax*4 + 0x4a6c40]
mov r11d, ebx
movzx eax, byte [r13 + 0x42]
xor r11d, dword [r14 + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x41]
mov eax, dword [r14 + rax*4 + 0x4a7040]
xor r11d, eax
xor ebp, eax
movzx eax, r8b
mov eax, dword [r14 + rax*4 + 0x4a7480]
xor r11d, eax
xor r9d, eax
mov eax, r10d
shr rax, 0x18
mov r8d, dword [r14 + rax*4 + 0x4a6c40]
xor ebx, r8d
movzx eax, byte [r13 + 0x46]
mov ecx, dword [r14 + rax*4 + 0x4a6820]
xor esi, ecx
movzx eax, byte [r13 + 0x45]
xor ecx, dword [r14 + rax*4 + 0x4a7040]
movzx eax, r10b
xor r8d, ecx
mov eax, dword [r14 + rax*4 + 0x4a7480]
xor r8d, eax
xor r9d, eax
mov r10d, 0xff0000
mov eax, r12d
shr rax, 0x18
mov r15d, 0xff00
mov edx, dword [r14 + rax*4 + 0x4a6c40]
xor ebx, edx
movzx eax, byte [r13 + 0x4a]
mov eax, dword [r14 + rax*4 + 0x4a6820]
xor esi, eax
xor edx, eax
movzx eax, byte [r13 + 0x49]
mov ecx, dword [r14 + rax*4 + 0x4a7040]
xor ebp, ecx
movzx eax, r12b
mov r12d, 0xff000000
xor ecx, dword [r14 + rax*4 + 0x4a7480]
mov eax, r9d
xor edx, ecx
xor eax, edx
movzx ecx, al
mov eax, esi
xor eax, r11d
and eax, r10d
or ecx, eax
mov eax, ebp
xor eax, r8d
and eax, r15d
or ecx, eax
mov eax, ebx
xor eax, edi
and eax, r12d
or ecx, eax
mov eax, r9d
shr eax, 0x18
xor eax, edi
mov dword [r13 + 0x3c], ecx
movzx eax, al
mov ecx, esi
shl ecx, 8
xor ecx, r8d
and ecx, r10d
or ecx, eax
mov eax, ebp
shl eax, 8
xor eax, edx
and eax, r15d
or ecx, eax
mov eax, ebx
shl eax, 8
xor eax, r11d
and eax, r12d
or ecx, eax
mov eax, r9d
shr eax, 0x10
xor eax, r11d
mov dword [r13 + 0x40], ecx
movzx eax, al
mov ecx, esi
shl ecx, 0x10
xor ecx, edx
shr r9d, 8
and ecx, r10d
shr esi, 8
or ecx, eax
xor r9d, r8d
mov eax, ebx
xor esi, edi
shl eax, 0x10
xor eax, r8d
and eax, r12d
or ecx, eax
mov eax, ebp
shr eax, 0x10
xor eax, edi
and eax, r15d
or ecx, eax
movzx eax, r9b
mov dword [r13 + 0x44], ecx
and esi, r10d
mov r8, qword [rsp + 0x70]
or eax, esi
shl ebx, 0x18
xor ebx, edx
shr ebp, 8
mov rdx, qword [rsp + 0x68]
and ebx, r12d
xor ebp, r11d
or eax, ebx
and ebp, r15d
or eax, ebp
mov dword [r13 + 0x48], eax
cmp r8, 4
jbe 0x1401d83b5
mov ecx, dword [rdx]
add rdx, 4
rol ecx, 0x10
mov r11d, ecx
mov qword [rsp + 0x68], rdx
shr r11d, 8
mov eax, ecx
shl eax, 8
xor r11d, eax
shl ecx, 8
and r11d, 0xff00ff
xor r11d, ecx
sub r8, 4
mov dword [rsp + 0x78], r11d
mov qword [rsp + 0x70], r8
mov eax, dword [r13 + 0x3c]
xor dword [r13 + 0x94], eax
mov eax, dword [r13 + 0xc]
xor dword [r13 + 0x40], eax
mov eax, dword [r13 + 0x18]
xor dword [r13 + 0x4c], eax
mov eax, dword [r13 + 0x24]
mov edx, dword [r13 + 0x40]
xor dword [r13 + 0x30], edx
mov r8d, dword [r13 + 0x30]
mov ecx, dword [r13 + 0x44]
xor dword [r13 + 0x34], ecx
xor dword [r13 + 0x7c], ecx
mov r9d, dword [r13 + 0x34]
xor dword [r13 + 0x78], edx
lea rdx, [0x140000000]
mov dword [rsp], eax
mov eax, dword [r13 + 0x48]
xor dword [r13 + 0x38], eax
xor dword [r13 + 0x80], eax
movzx eax, byte [r13 + 0x32]
mov r10d, dword [r13 + 0x38]
mov dword [r13 + 0x3c], r11d
mov r15d, dword [r14 + rax*4 + 0x4a6820]
mov eax, r8d
shr rax, 0x18
mov r14d, r15d
xor r14d, dword [rdx + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x31]
mov r12d, dword [rdx + rax*4 + 0x4a7040]
xor r14d, r12d
movzx eax, r8b
mov edi, dword [rdx + rax*4 + 0x4a7480]
xor r14d, edi
mov eax, r9d
shr rax, 0x18
mov ebp, dword [rdx + rax*4 + 0x4a6c40]
mov esi, ebp
movzx eax, byte [r13 + 0x36]
xor esi, dword [rdx + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x35]
mov eax, dword [rdx + rax*4 + 0x4a7040]
xor esi, eax
xor r12d, eax
movzx eax, r9b
lea r9, [0x140000000]
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor edi, eax
xor esi, eax
mov eax, r10d
shr rax, 0x18
mov ebx, dword [rdx + rax*4 + 0x4a6c40]
xor ebp, ebx
movzx eax, byte [r13 + 0x3a]
mov ecx, dword [rdx + rax*4 + 0x4a6820]
xor r15d, ecx
movzx eax, byte [r13 + 0x39]
xor ecx, dword [rdx + rax*4 + 0x4a7040]
xor ebx, ecx
movzx eax, r10b
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r11d
shr rax, 0x18
mov r8d, dword [r9 + rax*4 + 0x4a6c40]
xor ebp, r8d
movzx eax, byte [r13 + 0x3e]
mov eax, dword [r9 + rax*4 + 0x4a6820]
xor r8d, eax
xor r15d, eax
movzx eax, byte [r13 + 0x3d]
mov ecx, dword [r9 + rax*4 + 0x4a7040]
xor r12d, ecx
movzx eax, r11b
xor ecx, dword [r9 + rax*4 + 0x4a7480]
mov eax, edi
xor r8d, ecx
xor eax, r8d
movzx r13d, al
mov eax, r15d
mov rcx, qword [rsp + 0x60]
xor eax, esi
mov r10d, 0xff0000
mov edx, 0xff00
and eax, r10d
mov r11d, r15d
or r13d, eax
shl r11d, 8
mov eax, r12d
xor r11d, ebx
xor eax, ebx
and r11d, r10d
and eax, edx
mov r9d, 0xff000000
or r13d, eax
mov eax, ebp
xor eax, r14d
and eax, r9d
or r13d, eax
mov eax, edi
shr eax, 0x18
xor eax, r14d
mov dword [rcx + 0x30], r13d
movzx eax, al
or r11d, eax
mov eax, r12d
shl eax, 8
xor eax, r8d
and eax, edx
or r11d, eax
mov eax, ebp
shl eax, 8
xor eax, esi
and eax, r9d
mov r9d, r15d
or r11d, eax
shl r9d, 0x10
xor r9d, r8d
shr r15d, 8
and r9d, r10d
mov dword [rcx + 0x34], r11d
mov eax, edi
xor r15d, r14d
shr eax, 0x10
and r15d, r10d
xor eax, esi
shr edi, 8
movzx eax, al
xor edi, ebx
or r9d, eax
mov eax, ebp
shl eax, 0x10
xor eax, ebx
shl ebp, 0x18
and eax, 0xff000000
xor ebp, r8d
or r9d, eax
and ebp, 0xff000000
mov eax, r12d
shr r12d, 8
shr eax, 0x10
xor r12d, esi
and r12d, 0xff00
xor eax, r14d
and eax, edx
movzx edx, dil
or edx, r15d
or r9d, eax
or edx, ebp
mov dword [rcx + 0x38], r9d
or edx, r12d
mov r12, rcx
mov dword [rcx + 0x3c], edx
mov ecx, dword [rsp]
xor ecx, r11d
xor dword [r12 + 0x28], r9d
xor dword [r12 + 0x2c], edx
xor dword [r12 + 0x6c], r11d
mov r8d, dword [r12 + 0x28]
mov r10d, dword [r12 + 0x2c]
mov dword [r12 + 0x24], ecx
movzx eax, byte [r12 + 0x26]
xor dword [r12 + 0x70], r9d
xor dword [r12 + 0x74], edx
lea rdx, [0x140000000]
mov r15d, dword [rdx + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov esi, r15d
xor esi, dword [rdx + rax*4 + 0x4a6c40]
movzx eax, byte [r12 + 0x25]
mov ebp, dword [rdx + rax*4 + 0x4a7040]
xor esi, ebp
movzx eax, cl
mov ebx, dword [rdx + rax*4 + 0x4a7480]
xor esi, ebx
mov eax, r8d
shr rax, 0x18
mov r14d, dword [rdx + rax*4 + 0x4a6c40]
mov edi, r14d
movzx eax, byte [r12 + 0x2a]
xor edi, dword [rdx + rax*4 + 0x4a6820]
movzx eax, byte [r12 + 0x29]
mov eax, dword [rdx + rax*4 + 0x4a7040]
xor edi, eax
xor ebp, eax
movzx eax, r8b
mov r8d, 0xff000000
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor edi, eax
xor ebx, eax
mov eax, r10d
shr rax, 0x18
mov r11d, dword [rdx + rax*4 + 0x4a6c40]
xor r14d, r11d
movzx eax, byte [r12 + 0x2e]
mov ecx, dword [rdx + rax*4 + 0x4a6820]
xor r15d, ecx
movzx eax, byte [r12 + 0x2d]
xor r11d, dword [rdx + rax*4 + 0x4a7040]
movzx eax, r10b
xor r11d, ecx
mov eax, dword [rdx + rax*4 + 0x4a7480]
xor r11d, eax
xor ebx, eax
mov eax, r13d
shr rax, 0x18
mov r9d, dword [rdx + rax*4 + 0x4a6c40]
xor r14d, r9d
movzx eax, byte [r12 + 0x32]
mov r10d, r14d
shl r10d, 8
xor r10d, edi
mov eax, dword [rdx + rax*4 + 0x4a6820]
xor r9d, eax
xor r15d, eax
movzx eax, byte [r12 + 0x31]
mov r12d, r14d
xor r12d, esi
and r12d, r8d
mov ecx, dword [rdx + rax*4 + 0x4a7040]
xor ebp, ecx
movzx eax, r13b
mov r13, qword [rsp + 0x60]
xor r9d, dword [rdx + rax*4 + 0x4a7480]
xor r9d, ecx
mov eax, r9d
xor eax, ebx
movzx ecx, al
mov eax, edi
xor eax, r15d
or r12d, ecx
mov ecx, 0xff0000
and eax, ecx
or r12d, eax
mov eax, r11d
xor eax, ebp
and eax, 0xff00
or r12d, eax
mov eax, r15d
mov dword [r13 + 0x24], r12d
and r10d, r8d
shl eax, 8
mov r8d, r14d
xor eax, r11d
shl r8d, 0x10
and eax, ecx
shl r14d, 0x18
or r10d, eax
xor r14d, r9d
xor r8d, r11d
mov eax, ebx
shr eax, 0x18
and r8d, 0xff000000
xor eax, esi
mov edx, 0xff00
movzx eax, al
and r14d, 0xff000000
or r10d, eax
mov eax, ebp
shl eax, 8
xor eax, r9d
and eax, edx
or r10d, eax
mov eax, r15d
xor dword [r13 + 0x60], r10d
shl eax, 0x10
xor eax, r9d
shr r15d, 8
and eax, ecx
mov dword [r13 + 0x28], r10d
or r8d, eax
xor r15d, esi
mov eax, ebx
and r15d, ecx
mov ecx, dword [r13 + 0x18]
shr eax, 0x10
xor ecx, r10d
xor eax, edi
shr ebx, 8
movzx eax, al
xor ebx, r11d
or r8d, eax
mov dword [r13 + 0x18], ecx
mov eax, ebp
shr ebp, 8
shr eax, 0x10
xor ebp, edi
xor eax, esi
and ebp, edx
and eax, edx
or r8d, eax
movzx eax, bl
xor dword [r13 + 0x1c], r8d
or r14d, eax
movzx eax, byte [r13 + 0x1a]
or r14d, r15d
xor dword [r13 + 0x64], r8d
or r14d, ebp
xor dword [r13 + 0x20], r14d
xor dword [r13 + 0x68], r14d
mov edx, dword [r13 + 0x1c]
mov r9d, dword [r13 + 0x20]
mov dword [r13 + 0x2c], r8d
lea r8, [0x140000000]
mov dword [r13 + 0x30], r14d
mov r14d, dword [r8 + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov ebp, r14d
xor ebp, dword [r8 + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0x19]
mov r15d, dword [r8 + rax*4 + 0x4a7040]
xor ebp, r15d
movzx eax, cl
mov ebx, dword [r8 + rax*4 + 0x4a7480]
mov eax, edx
shr rax, 0x18
xor ebp, ebx
mov esi, dword [r8 + rax*4 + 0x4a6c40]
mov edi, esi
movzx eax, byte [r13 + 0x1e]
xor edi, dword [r8 + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x1d]
mov eax, dword [r8 + rax*4 + 0x4a7040]
xor edi, eax
xor r15d, eax
movzx eax, dl
mov eax, dword [r8 + rax*4 + 0x4a7480]
xor ebx, eax
xor edi, eax
mov eax, r9d
shr rax, 0x18
mov r11d, dword [r8 + rax*4 + 0x4a6c40]
xor esi, r11d
movzx eax, byte [r13 + 0x22]
mov ecx, dword [r8 + rax*4 + 0x4a6820]
xor r14d, ecx
movzx eax, byte [r13 + 0x21]
xor ecx, dword [r8 + rax*4 + 0x4a7040]
xor r11d, ecx
movzx eax, r9b
mov r9d, 0xff0000
mov eax, dword [r8 + rax*4 + 0x4a7480]
xor r11d, eax
xor ebx, eax
mov eax, r12d
shr rax, 0x18
mov edx, dword [r8 + rax*4 + 0x4a6c40]
xor esi, edx
movzx eax, byte [r13 + 0x26]
mov eax, dword [r8 + rax*4 + 0x4a6820]
xor r14d, eax
xor edx, eax
mov r10d, r14d
movzx eax, byte [r13 + 0x25]
shl r10d, 8
xor r10d, r11d
and r10d, r9d
mov ecx, dword [r8 + rax*4 + 0x4a7040]
xor r15d, ecx
movzx eax, r12b
xor ecx, dword [r8 + rax*4 + 0x4a7480]
mov r8d, 0xff000000
xor edx, ecx
mov eax, ebx
xor eax, edx
mov ecx, 0xff00
movzx r12d, al
mov eax, r14d
xor eax, edi
and eax, r9d
or r12d, eax
mov eax, r15d
xor eax, r11d
and eax, 0xff00
or r12d, eax
mov eax, esi
xor eax, ebp
and eax, r8d
or r12d, eax
mov eax, ebx
shr eax, 0x18
xor eax, ebp
mov dword [r13 + 0x18], r12d
movzx eax, al
or r10d, eax
mov eax, r15d
shl eax, 8
xor eax, edx
and eax, ecx
or r10d, eax
mov eax, esi
shl eax, 8
xor eax, edi
and eax, r8d
mov r8d, r14d
shl r8d, 0x10
or r10d, eax
xor r8d, edx
mov dword [r13 + 0x1c], r10d
and r8d, r9d
mov eax, ebx
shr eax, 0x10
xor eax, edi
xor dword [r13 + 0x54], r10d
movzx eax, al
or r8d, eax
shr ebx, 8
xor ebx, r11d
shr r14d, 8
mov eax, esi
xor r14d, ebp
shl eax, 0x10
and r14d, r9d
xor eax, r11d
shl esi, 0x18
and eax, 0xff000000
xor esi, edx
or r8d, eax
and esi, 0xff000000
mov eax, r15d
shr r15d, 8
shr eax, 0x10
xor r15d, edi
xor eax, ebp
and r15d, ecx
and eax, ecx
mov ecx, dword [r13 + 0xc]
or r8d, eax
xor ecx, r10d
xor dword [r13 + 0x10], r8d
mov edx, dword [r13 + 0x10]
movzx eax, bl
or eax, r14d
mov dword [r13 + 0xc], ecx
or eax, esi
mov dword [r13 + 0x20], r8d
xor r8d, dword [r13 + 0x58]
lea r14, [0x140000000]
xor r8d, dword [rsp]
or eax, r15d
xor dword [r13 + 0x14], eax
mov r9d, dword [r13 + 0x14]
mov dword [r13 + 0x24], eax
xor eax, dword [r13 + 0x5c]
xor eax, dword [rsp + 0x78]
mov dword [r13 + 0x5c], eax
movzx eax, byte [r13 + 0xe]
mov dword [r13 + 0x58], r8d
mov esi, dword [r14 + rax*4 + 0x4a6820]
mov eax, ecx
shr rax, 0x18
mov edi, esi
xor edi, dword [r14 + rax*4 + 0x4a6c40]
movzx eax, byte [r13 + 0xd]
mov ebp, dword [r14 + rax*4 + 0x4a7040]
xor edi, ebp
movzx eax, cl
mov r10d, dword [r14 + rax*4 + 0x4a7480]
xor edi, r10d
mov eax, edx
shr rax, 0x18
mov ebx, dword [r14 + rax*4 + 0x4a6c40]
mov r11d, ebx
movzx eax, byte [r13 + 0x12]
xor r11d, dword [r14 + rax*4 + 0x4a6820]
movzx eax, byte [r13 + 0x11]
mov eax, dword [r14 + rax*4 + 0x4a7040]
xor r11d, eax
xor ebp, eax
movzx eax, dl
mov eax, dword [r14 + rax*4 + 0x4a7480]
xor r11d, eax
xor r10d, eax
mov eax, r9d
shr rax, 0x18
mov r8d, dword [r14 + rax*4 + 0x4a6c40]
xor ebx, r8d
movzx eax, byte [r13 + 0x16]
mov ecx, dword [r14 + rax*4 + 0x4a6820]
xor esi, ecx
movzx eax, byte [r13 + 0x15]
xor ecx, dword [r14 + rax*4 + 0x4a7040]
xor r8d, ecx
movzx eax, r9b
mov r15d, 0xff00
mov r9d, 0xff0000
mov eax, dword [r14 + rax*4 + 0x4a7480]
xor r8d, eax
xor r10d, eax
mov eax, r12d
shr rax, 0x18
mov edx, dword [r14 + rax*4 + 0x4a6c40]
xor ebx, edx
movzx eax, byte [r13 + 0x1a]
mov eax, dword [r14 + rax*4 + 0x4a6820]
xor esi, eax
xor edx, eax
movzx eax, byte [r13 + 0x19]
mov ecx, dword [r14 + rax*4 + 0x4a7040]
xor ebp, ecx
movzx eax, r12b
mov r12d, 0xff000000
xor ecx, dword [r14 + rax*4 + 0x4a7480]
mov eax, r10d
xor edx, ecx
xor eax, edx
movzx ecx, al
mov eax, esi
xor eax, r11d
and eax, r9d
or ecx, eax
mov eax, ebp
xor eax, r8d
and eax, r15d
or ecx, eax
mov eax, ebx
xor eax, edi
and eax, r12d
or ecx, eax
mov eax, r10d
shr eax, 0x18
xor eax, edi
mov dword [r13 + 0xc], ecx
movzx eax, al
mov ecx, esi
shl ecx, 8
xor ecx, r8d
and ecx, r9d
or ecx, eax
mov eax, ebp
shl eax, 8
xor eax, edx
and eax, r15d
or ecx, eax
mov eax, ebx
shl eax, 8
xor eax, r11d
and eax, r12d
or ecx, eax
mov eax, r10d
shr eax, 0x10
xor eax, r11d
mov dword [r13 + 0x10], ecx
movzx eax, al
mov ecx, esi
shl ecx, 0x10
xor ecx, edx
shr r10d, 8
and ecx, r9d
xor r10d, r8d
or ecx, eax
mov eax, ebx
shl eax, 0x10
xor eax, r8d
and eax, r12d
or ecx, eax
mov eax, ebp
shr eax, 0x10
xor eax, edi
and eax, r15d
or ecx, eax
movzx eax, r10b
mov dword [r13 + 0x14], ecx
shr esi, 8
mov r8, qword [rsp + 0x70]
xor esi, edi
shl ebx, 0x18
and esi, r9d
xor ebx, edx
shr ebp, 8
mov rdx, qword [rsp + 0x68]
or eax, esi
and ebx, r12d
xor ebp, r11d
or eax, ebx
and ebp, r15d
or eax, ebp
mov dword [r13 + 0x18], eax
cmp r8, 4
jbe 0x1401d83b1
mov ecx, dword [rdx]
add rdx, 4
rol ecx, 0x10
mov r11d, ecx
mov qword [rsp + 0x68], rdx
shr r11d, 8
mov eax, ecx
shl eax, 8
xor r11d, eax
shl ecx, 8
and r11d, 0xff00ff
xor r11d, ecx
sub r8, 4
mov dword [rsp + 0x78], r11d
mov qword [rsp + 0x70], r8
jmp 0x1401d6885
xor ecx, ecx
jmp 0x1401d83c1
mov ecx, 2
jmp 0x1401d83c1
mov ecx, 1
xor r11d, r11d
mov dword [r13 + 4], r8d
test r8, r8
je 0x1401d83e0
movzx eax, byte [rdx]
inc rdx
shl r11d, 8
or r11d, eax
sub r8, 1
jne 0x1401d83cd
mov dword [r13 + 8], ecx
mov dword [r13], r11d
add rsp, 0x18
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret