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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa8
mov rax, r8
mov qword [rsp + 0x100], r8
mov r8d, dword [rcx + 4]
shl rax, 3
add qword [rcx + 0xa0], rax
mov eax, dword [rcx]
cmp r8d, 3
mov dword [rsp + 0x1c], eax
ja 0x6f582cb0
mov r9d, 4
sub r9d, r8d
cmp r9, qword [rsp + 0x100]
ja 0x6f584890
mov r10d, 3
mov r9d, 4
sub r10d, r8d
mov eax, dword [rsp + 0x1c]
lea r11, [rdx + r10 + 1]
nop dword [rax]
movzx r8d, byte [rdx]
shl eax, 8
add rdx, 1
or eax, r8d
cmp rdx, r11
jne 0x6f582c60
mov dword [rsp + 0x1c], eax
mov rax, qword [rsp + 0x100]
lea r8, [rax - 1]
sub r8, r10
mov qword [rsp + 0x100], r8
cmp qword [rsp + 0x100], 0
jne 0x6f582cb0
mov eax, dword [rsp + 0x1c]
mov dword [rcx + 4], r9d
mov dword [rcx], eax
jmp 0x6f584876
mov eax, dword [rcx + 0xc]
mov dword [rsp + 0x40], eax
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x44], eax
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x58], eax
mov eax, dword [rcx + 0x18]
mov dword [rsp + 0x7c], eax
mov eax, dword [rcx + 0x1c]
mov dword [rsp + 0x6c], eax
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0x8c], eax
mov eax, dword [rcx + 0x24]
mov dword [rsp + 0x2c], eax
mov eax, dword [rcx + 0x28]
mov dword [rsp + 0x28], eax
mov eax, dword [rcx + 0x2c]
mov dword [rsp + 0x54], eax
mov eax, dword [rcx + 0x30]
mov dword [rsp + 0x74], eax
mov eax, dword [rcx + 0x34]
mov dword [rsp + 0x80], eax
mov eax, dword [rcx + 0x38]
mov dword [rsp + 0x98], eax
mov eax, dword [rcx + 0x3c]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0x40]
mov dword [rsp + 0x34], eax
mov eax, dword [rcx + 0x44]
mov dword [rsp + 0x4c], eax
mov eax, dword [rcx + 0x48]
mov dword [rsp + 0x64], eax
mov eax, dword [rcx + 0x4c]
mov r9d, dword [rcx + 8]
mov dword [rsp + 0x60], eax
mov eax, dword [rcx + 0x50]
cmp r9d, 4
mov dword [rsp + 0x88], eax
mov eax, dword [rcx + 0x54]
mov dword [rsp + 0x3c], eax
mov eax, dword [rcx + 0x58]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 0x5c]
mov dword [rsp + 0x48], eax
mov eax, dword [rcx + 0x60]
mov dword [rsp + 0x78], eax
mov eax, dword [rcx + 0x64]
mov dword [rsp + 0x70], eax
mov eax, dword [rcx + 0x68]
mov dword [rsp + 0x94], eax
mov eax, dword [rcx + 0x6c]
mov dword [rsp + 0x5c], eax
mov eax, dword [rcx + 0x70]
mov dword [rsp + 0x50], eax
mov eax, dword [rcx + 0x74]
mov dword [rsp + 0x68], eax
mov eax, dword [rcx + 0x78]
mov dword [rsp + 0x90], eax
mov eax, dword [rcx + 0x7c]
mov dword [rsp + 0x84], eax
mov eax, dword [rcx + 0x80]
mov dword [rsp + 0x9c], eax
ja case.default.0x6f582de8
lea rax, [0x6f7339c0]
lea r10, [0x6f7331a0]
mov qword [rsp + 0x20], rax
lea rax, [0x6f7335c0]
movsxd r8, dword [r10 + r9*4]
mov qword [rsp + 0x10], rax
lea rax, [0x6f7331c0]
mov qword [rsp + 8], rax
lea rax, [0x6f733dc0]
add r8, r10
mov qword [rsp], rax
jmp r8
mov eax, dword [rdx]
bswap eax
sub qword [rsp + 0x100], 4
mov dword [rsp + 0x1c], eax
add rdx, 4
mov eax, dword [rsp + 0x2c]
xor eax, dword [rsp + 0x60]
mov esi, dword [rsp + 0x54]
mov edi, dword [rsp + 0x6c]
mov r8d, dword [rsp + 0x40]
xor dword [rsp + 0x28], r8d
xor edi, esi
mov dword [rsp + 0x60], eax
mov r10d, dword [rsp + 0x7c]
mov eax, dword [rsp + 0x1c]
xor dword [rsp + 0x4c], eax
mov r8d, edi
mov eax, dword [rsp + 0x28]
mov r11d, r8d
mov edi, dword [rsp + 0x74]
shr r11d, 0x18
mov r15d, dword [rsp + 0x8c]
xor r10d, eax
mov r14, qword [rsp + 0x20]
xor dword [rsp + 0x48], edi
xor dword [rsp + 0x3c], eax
mov ebx, r10d
xor r15d, edi
mov edi, r10d
mov rax, qword [rsp + 8]
shr edi, 0x10
xor dword [rsp + 0x30], esi
mov rsi, qword [rsp]
movzx r9d, dil
movzx ebx, bh
mov r12d, dword [r14 + r9*4]
movzx r9d, r10b
shr r10d, 0x18
mov r13d, dword [rax + r9*4]
mov eax, r8d
mov r9d, r11d
mov r11d, dword [rsi + r9*4]
mov rdi, qword [rsp + 0x10]
movzx r9d, r8b
mov ebp, dword [rsi + r10*4]
movzx esi, ah
mov rax, qword [rsp + 8]
shr r8d, 0x10
mov ebx, dword [rdi + rbx*4]
mov r10d, dword [rdi + rsi*4]
movzx r8d, r8b
mov r9d, dword [rax + r9*4]
mov edi, r11d
mov rsi, qword [rsp]
xor ebp, r13d
xor ebp, r12d
xor edi, r9d
xor edi, dword [r14 + r8*4]
mov r8d, r15d
shr r8d, 0x18
xor ebp, ebx
mov esi, dword [rsi + r8*4]
mov r8d, r15d
shr r8d, 0x10
movzx r8d, r8b
xor edi, r10d
mov r8d, dword [r14 + r8*4]
movzx r14d, r15b
xor r11d, esi
mov r14d, dword [rax + r14*4]
mov eax, r15d
movzx eax, ah
mov r15, rax
mov rax, qword [rsp + 0x10]
xor esi, r14d
xor r9d, r14d
xor esi, r8d
xor r13d, r9d
xor esi, dword [rax + r15*4]
mov eax, dword [rsp + 0x1c]
mov r15, qword [rsp]
mov r9d, eax
mov r14d, eax
movzx eax, ah
shr r9d, 0x18
shr r14d, 0x10
mov r9d, dword [r15 + r9*4]
mov r15, qword [rsp + 0x20]
movzx r14d, r14b
mov r14d, dword [r15 + r14*4]
xor r11d, r9d
xor r8d, r14d
xor r12d, r8d
mov r8, rax
mov rax, qword [rsp + 0x10]
mov r8d, dword [rax + r8*4]
movzx eax, byte [rsp + 0x1c]
xor r10d, r8d
xor r10d, ebx
mov rbx, qword [rsp + 8]
xor r9d, dword [rbx + rax*4]
mov eax, esi
xor eax, r10d
and eax, 0xff00
xor r9d, r14d
mov r14d, r11d
xor r8d, r9d
mov r9d, edi
shl r14d, 0x10
xor r9d, r12d
mov r15d, r14d
mov ebx, r9d
xor r15d, esi
and ebx, 0xff0000
and r15d, 0xff000000
or ebx, eax
mov eax, r13d
xor eax, r8d
movzx eax, al
or ebx, eax
mov eax, ebp
xor eax, r11d
and eax, 0xff000000
or ebx, eax
mov eax, r12d
shl eax, 8
mov dword [rsp + 0x1c], ebx
xor eax, esi
mov r9d, eax
mov eax, r10d
shl eax, 8
and r9d, 0xff0000
xor eax, r8d
and eax, 0xff00
or eax, r9d
mov r9d, r11d
shl r9d, 8
xor r9d, edi
and r9d, 0xff000000
or eax, r9d
mov r9d, r13d
shr r9d, 0x18
xor r9d, ebp
movzx r9d, r9b
or eax, r9d
mov r9d, eax
mov dword [rsp + 0x6c], eax
mov eax, r13d
shr eax, 0x10
shl r11d, 0x18
shr r13d, 8
xor eax, edi
xor r11d, r8d
xor r13d, esi
movzx eax, al
and r11d, 0xff000000
movzx r13d, r13b
or r15d, eax
mov eax, r12d
shr r12d, 8
shl eax, 0x10
xor r12d, ebp
or r11d, r13d
xor eax, r8d
and r12d, 0xff0000
xor dword [rsp + 0x64], r9d
and eax, 0xff0000
or r11d, r12d
or r15d, eax
mov eax, r10d
shr r10d, 8
xor r10d, edi
shr eax, 0x10
mov r14d, r15d
and r10d, 0xff00
xor eax, ebp
mov ebp, dword [rsp + 0x44]
mov r8d, r10d
mov r10d, r11d
and eax, 0xff00
or r10d, r8d
mov r8d, dword [rsp + 0x40]
or r14d, eax
mov r15, qword [rsp + 0x20]
xor ebp, r14d
xor dword [rsp + 0x88], r10d
mov eax, ebp
mov dword [rsp + 0x8c], r14d
mov dword [rsp + 0x2c], r10d
xor r8d, r9d
mov r9d, dword [rsp + 0x60]
mov ebp, dword [rsp + 0x58]
mov ebx, r8d
movzx esi, bh
xor r9d, r14d
xor ebp, r10d
mov dword [rsp + 0x60], r9d
mov r9d, r8d
shr r9d, 0x10
movzx r9d, r9b
mov r13d, dword [r15 + r9*4]
mov rbx, qword [rsp + 0x10]
movzx r9d, r8b
shr r8d, 0x18
mov r11, qword [rsp + 8]
mov r12d, dword [rbx + rsi*4]
mov rsi, qword [rsp]
mov r14d, dword [r11 + r9*4]
mov edi, dword [rsi + r8*4]
mov r8d, eax
shr r8d, 0x18
mov r10d, dword [rsi + r8*4]
movzx esi, ah
movzx r8d, al
shr eax, 0x10
mov r8d, dword [r11 + r8*4]
mov r9d, dword [rbx + rsi*4]
movzx eax, al
mov rbx, r11
xor edi, r14d
mov esi, dword [r15 + rax*4]
mov r11d, r10d
mov eax, ebp
xor r11d, r8d
shr eax, 0x18
xor edi, r13d
xor edi, r12d
xor esi, r11d
mov r11, qword [rsp]
xor esi, r9d
mov r11d, dword [r11 + rax*4]
mov eax, ebp
shr eax, 0x10
movzx eax, al
mov eax, dword [r15 + rax*4]
movzx r15d, bpl
xor r10d, r11d
mov r15d, dword [rbx + r15*4]
mov ebx, ebp
movzx ebp, bh
mov rbx, qword [rsp + 0x10]
xor r8d, r15d
xor r11d, r15d
mov r15d, dword [rsp + 0x1c]
xor r11d, eax
xor r11d, dword [rbx + rbp*4]
mov rbp, qword [rsp]
xor r14d, r8d
mov r8d, r15d
shr r8d, 0x18
mov r8d, dword [rbp + r8*4]
mov ebp, r15d
mov r15, qword [rsp + 0x20]
shr ebp, 0x10
movzx ebp, bpl
mov ebp, dword [r15 + rbp*4]
mov r15, qword [rsp + 8]
xor r10d, r8d
xor eax, ebp
xor r13d, eax
mov eax, dword [rsp + 0x1c]
movzx eax, ah
mov eax, dword [rbx + rax*4]
movzx ebx, byte [rsp + 0x1c]
xor r9d, eax
xor r8d, dword [r15 + rbx*4]
xor r9d, r12d
xor r8d, ebp
mov ebp, r10d
xor eax, r8d
mov r8d, edi
xor r8d, r10d
mov ebx, r8d
mov r8d, esi
xor r8d, r13d
and ebx, 0xff000000
and r8d, 0xff0000
or r8d, ebx
mov ebx, r14d
xor ebx, eax
shl ebp, 0x10
movzx ebx, bl
xor ebp, r11d
or r8d, ebx
mov ebx, r11d
and ebp, 0xff000000
xor ebx, r9d
and ebx, 0xff00
or r8d, ebx
mov ebx, r14d
mov dword [rsp + 0x40], r8d
mov r8d, r10d
shr ebx, 0x18
shl r8d, 8
xor ebx, edi
xor r8d, esi
movzx ebx, bl
and r8d, 0xff000000
or r8d, ebx
mov ebx, r13d
shl ebx, 8
xor ebx, r11d
and ebx, 0xff0000
or r8d, ebx
mov ebx, r9d
shl ebx, 8
xor ebx, eax
and ebx, 0xff00
or r8d, ebx
mov dword [rsp + 0x44], r8d
mov r8d, r14d
shr r8d, 0x10
xor r8d, esi
movzx r8d, r8b
or ebp, r8d
mov r8d, r13d
shl r8d, 0x10
xor r8d, eax
and r8d, 0xff0000
or ebp, r8d
mov r8d, r9d
shr r8d, 0x10
xor r8d, edi
and r8d, 0xff00
or ebp, r8d
shr r14d, 8
shl r10d, 0x18
xor r10d, eax
xor r11d, r14d
shr r13d, 8
and r10d, 0xff000000
xor r13d, edi
shr r9d, 8
movzx r14d, r11b
and r13d, 0xff0000
xor r9d, esi
or r10d, r14d
and r9d, 0xff00
mov dword [rsp + 0x58], ebp
or r10d, r13d
or r10d, r9d
xor r9d, r9d
cmp qword [rsp + 0x100], 4
mov dword [rsp + 0x7c], r10d
jbe case.default.0x6f582de8
mov eax, dword [rdx]
bswap eax
sub qword [rsp + 0x100], 4
mov dword [rsp + 0x1c], eax
add rdx, 4
mov eax, dword [rsp + 0x40]
xor eax, dword [rsp + 0x80]
mov r8d, dword [rsp + 0x5c]
xor dword [rsp + 0x44], r8d
mov esi, dword [rsp + 0x90]
mov edi, dword [rsp + 0x58]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x1c]
xor dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x44]
mov ebx, dword [rsp + 0x84]
mov rbp, qword [rsp + 0x20]
xor dword [rsp + 0x38], eax
mov r15d, dword [rsp + 0x7c]
xor esi, eax
xor dword [rsp + 0x34], edi
mov r8d, esi
xor ebx, edi
mov esi, dword [rsp + 0x9c]
mov eax, r8d
mov r9d, r8d
mov r11d, ebx
movzx edi, ah
shr r9d, 0x10
shr r11d, 0x18
mov rax, qword [rsp]
movzx r9d, r9b
xor esi, r15d
mov r12d, dword [rbp + r9*4]
mov r13, qword [rsp + 8]
movzx r9d, r8b
mov r10, qword [rsp + 0x10]
shr r8d, 0x18
xor dword [rsp + 0x4c], r15d
mov r15d, dword [rax + r8*4]
mov r8d, r11d
mov r11d, dword [rax + r8*4]
movzx r8d, bl
movzx eax, bh
mov r14d, dword [r10 + rdi*4]
shr ebx, 0x10
mov edi, dword [r13 + r9*4]
mov r9d, dword [r13 + r8*4]
movzx r8d, bl
mov ebx, r11d
mov r10d, dword [r10 + rax*4]
mov rax, r13
xor r15d, edi
xor ebx, r9d
xor ebx, dword [rbp + r8*4]
xor r15d, r12d
xor r15d, r14d
mov r13d, ebx
mov ebx, esi
shr ebx, 0x18
xor r13d, r10d
mov r8d, ebx
mov rbx, qword [rsp]
mov ebx, dword [rbx + r8*4]
mov r8d, esi
shr r8d, 0x10
movzx r8d, r8b
mov r8d, dword [rbp + r8*4]
movzx ebp, sil
xor r11d, ebx
mov ebp, dword [rax + rbp*4]
mov eax, esi
movzx esi, ah
mov rax, qword [rsp + 0x10]
xor ebx, ebp
xor r9d, ebp
mov rbp, qword [rsp + 0x20]
xor ebx, r8d
xor ebx, dword [rax + rsi*4]
mov eax, dword [rsp + 0x1c]
mov rsi, qword [rsp]
xor edi, r9d
mov r9d, eax
shr r9d, 0x18
mov r9d, dword [rsi + r9*4]
mov esi, eax
movzx eax, ah
shr esi, 0x10
movzx esi, sil
mov esi, dword [rbp + rsi*4]
xor r11d, r9d
xor r8d, esi
xor r12d, r8d
mov r8, rax
mov rax, qword [rsp + 0x10]
mov r8d, dword [rax + r8*4]
movzx eax, byte [rsp + 0x1c]
xor r10d, r8d
xor r10d, r14d
mov r14, qword [rsp + 8]
xor r9d, dword [r14 + rax*4]
mov eax, ebx
mov r14d, edi
xor eax, r10d
and eax, 0xff00
xor r9d, esi
mov esi, r11d
xor r8d, r9d
mov r9d, r13d
shl esi, 0x10
xor r9d, r12d
xor r14d, r8d
xor esi, ebx
and r9d, 0xff0000
movzx r14d, r14b
and esi, 0xff000000
or r9d, eax
or r9d, r14d
mov r14d, r15d
xor r14d, r11d
and r14d, 0xff000000
or r14d, r9d
mov r9d, r12d
shl r9d, 8
mov eax, r9d
xor eax, ebx
mov r9d, eax
mov eax, r10d
shl eax, 8
and r9d, 0xff0000
xor eax, r8d
and eax, 0xff00
or eax, r9d
mov r9d, r11d
shl r9d, 8
xor r9d, r13d
and r9d, 0xff000000
or eax, r9d
mov r9d, edi
shr r9d, 0x18
xor r9d, r15d
movzx r9d, r9b
or eax, r9d
mov r9d, eax
mov dword [rsp + 0x84], eax
mov eax, edi
shr eax, 0x10
shl r11d, 0x18
shr edi, 8
xor eax, r13d
xor ebx, edi
xor dword [rsp + 0x74], r9d
movzx eax, al
or esi, eax
mov eax, r12d
shr r12d, 8
shl eax, 0x10
xor r12d, r15d
xor eax, r8d
xor r8d, r11d
movzx r11d, bl
and eax, 0xff0000
and r8d, 0xff000000
and r12d, 0xff0000
or esi, eax
mov eax, r10d
or r11d, r8d
shr eax, 0x10
or r11d, r12d
mov r12d, dword [rsp + 0x50]
xor eax, r15d
shr r10d, 8
mov r8d, dword [rsp + 0x5c]
and eax, 0xff00
mov edi, r10d
mov r10d, dword [rsp + 0x80]
or esi, eax
xor edi, r13d
mov r15, qword [rsp + 0x10]
xor r12d, esi
xor r8d, r9d
mov ebx, edi
mov eax, r12d
mov r12d, dword [rsp + 0x68]
and ebx, 0xff00
mov edi, r11d
mov r9d, r8d
xor r10d, esi
or edi, ebx
shr r9d, 0x10
mov ebx, r8d
xor r12d, edi
xor dword [rsp + 0x98], edi
mov dword [rsp + 0x40], edi
movzx r9d, r9b
movzx edi, bh
mov dword [rsp + 0x9c], esi
mov dword [rsp + 0x80], r10d
mov esi, dword [rbp + r9*4]
movzx r9d, r8b
mov dword [rsp + 0x1c], r12d
shr r8d, 0x18
mov r12d, dword [r15 + rdi*4]
mov rbx, qword [rsp]
mov r11, qword [rsp + 8]
mov r13d, dword [rbx + r8*4]
mov r8d, eax
mov edi, dword [r11 + r9*4]
shr r8d, 0x18
mov r10d, dword [rbx + r8*4]
movzx r8d, al
movzx ebx, ah
mov r8d, dword [r11 + r8*4]
shr eax, 0x10
mov r9d, dword [r15 + rbx*4]
movzx eax, al
mov rbx, r11
xor r13d, edi
mov r11d, r10d
xor r13d, esi
xor r11d, r8d
xor r11d, dword [rbp + rax*4]
mov eax, dword [rsp + 0x1c]
xor r13d, r12d
shr eax, 0x18
xor r11d, r9d
mov dword [rsp + 0x50], r11d
mov r11, qword [rsp]
mov r11d, dword [r11 + rax*4]
mov eax, dword [rsp + 0x1c]
shr eax, 0x10
xor r10d, r11d
movzx eax, al
mov eax, dword [rbp + rax*4]
movzx ebp, byte [rsp + 0x1c]
mov ebp, dword [rbx + rbp*4]
mov ebx, dword [rsp + 0x1c]
xor r11d, ebp
movzx ebx, bh
xor r8d, ebp
xor r11d, eax
xor r11d, dword [r15 + rbx*4]
mov rbx, qword [rsp]
xor edi, r8d
mov r8d, r14d
mov rbp, qword [rsp + 0x20]
shr r8d, 0x18
mov r8d, dword [rbx + r8*4]
mov ebx, r14d
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [rbp + rbx*4]
xor r10d, r8d
xor eax, ebx
xor esi, eax
mov eax, r14d
movzx eax, ah
mov eax, dword [r15 + rax*4]
mov r15, qword [rsp + 8]
xor r9d, eax
xor r12d, r9d
movzx r9d, r14b
xor r8d, dword [r15 + r9*4]
mov r15d, dword [rsp + 0x50]
xor r8d, ebx
mov ebx, r10d
xor eax, r8d
mov r8d, r13d
xor r8d, r10d
mov r9d, r8d
mov r8d, r15d
xor r8d, esi
and r9d, 0xff000000
and r8d, 0xff0000
or r8d, r9d
mov r9d, edi
xor r9d, eax
shl ebx, 0x10
movzx r9d, r9b
xor ebx, r11d
or r8d, r9d
mov r9d, r11d
and ebx, 0xff000000
xor r9d, r12d
and r9d, 0xff00
or r8d, r9d
mov r9d, edi
mov dword [rsp + 0x5c], r8d
mov r8d, r10d
shr r9d, 0x18
shl r8d, 8
xor r9d, r13d
xor r8d, r15d
movzx r9d, r9b
and r8d, 0xff000000
or r8d, r9d
mov r9d, esi
shl r9d, 8
xor r9d, r11d
and r9d, 0xff0000
or r8d, r9d
mov r9d, r12d
shl r9d, 8
xor r9d, eax
and r9d, 0xff00
or r8d, r9d
mov r9d, 1
mov dword [rsp + 0x50], r8d
mov r8d, edi
shr r8d, 0x10
xor r8d, r15d
movzx r8d, r8b
or ebx, r8d
mov r8d, esi
shl r8d, 0x10
xor r8d, eax
and r8d, 0xff0000
or ebx, r8d
mov r8d, r12d
shr r8d, 0x10
xor r8d, r13d
and r8d, 0xff00
or ebx, r8d
shl r10d, 0x18
shr edi, 8
xor eax, r10d
xor r11d, edi
shr esi, 8
and eax, 0xff000000
xor esi, r13d
shr r12d, 8
movzx r10d, r11b
and esi, 0xff0000
xor r12d, r15d
or r10d, eax
and r12d, 0xff00
mov dword [rsp + 0x68], ebx
or r10d, esi
or r10d, r12d
cmp qword [rsp + 0x100], 4
mov dword [rsp + 0x90], r10d
jbe case.default.0x6f582de8
mov eax, dword [rdx]
bswap eax
sub qword [rsp + 0x100], 4
mov dword [rsp + 0x1c], eax
add rdx, 4
mov eax, dword [rsp + 0x6c]
xor eax, dword [rsp + 0x5c]
mov r8d, dword [rsp + 0x3c]
xor dword [rsp + 0x50], r8d
mov esi, dword [rsp + 0x78]
mov edi, dword [rsp + 0x68]
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x1c]
xor dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x50]
mov ebx, dword [rsp + 0x70]
xor dword [rsp + 0x28], edi
xor dword [rsp + 0x2c], eax
mov r13, qword [rsp + 0x20]
xor esi, eax
mov r9, qword [rsp + 8]
mov r10d, esi
xor ebx, edi
mov edi, r10d
mov eax, r10d
mov r11d, ebx
shr edi, 0x10
mov r15d, dword [rsp + 0x90]
shr r11d, 0x18
movzx r8d, dil
movzx edi, ah
mov rax, qword [rsp + 0x10]
mov esi, dword [rsp + 0x94]
mov ebp, dword [r13 + r8*4]
movzx r8d, r10b
mov r12d, dword [r9 + r8*4]
shr r10d, 0x18
mov r8d, r11d
mov r14d, dword [rax + rdi*4]
mov rdi, qword [rsp]
xor esi, r15d
xor dword [rsp + 0x54], r15d
mov r11d, dword [rdi + r8*4]
mov r15d, dword [rdi + r10*4]
movzx r8d, bl
movzx edi, bh
shr ebx, 0x10
mov r10d, dword [rax + rdi*4]
mov rax, r9
mov r9d, dword [r9 + r8*4]
movzx r8d, bl
mov ebx, r11d
xor r15d, r12d
xor r15d, ebp
xor ebx, r9d
xor ebx, dword [r13 + r8*4]
xor r15d, r14d
xor ebx, r10d
mov edi, ebx
mov ebx, esi
shr ebx, 0x18
mov r8d, ebx
mov rbx, qword [rsp]
mov ebx, dword [rbx + r8*4]
mov r8d, esi
shr r8d, 0x10
movzx r8d, r8b
mov r8d, dword [r13 + r8*4]
movzx r13d, sil
xor r11d, ebx
mov r13d, dword [rax + r13*4]
mov eax, esi
movzx esi, ah
mov rax, qword [rsp + 0x10]
xor ebx, r13d
xor r9d, r13d
mov r13, qword [rsp + 0x20]
xor ebx, r8d
xor ebx, dword [rax + rsi*4]
mov eax, dword [rsp + 0x1c]
mov rsi, qword [rsp]
xor r12d, r9d
mov r9d, eax
shr r9d, 0x18
mov r9d, dword [rsi + r9*4]
mov esi, eax
movzx eax, ah
shr esi, 0x10
movzx esi, sil
mov esi, dword [r13 + rsi*4]
xor r11d, r9d
xor r8d, esi
xor ebp, r8d
mov r8, rax
mov rax, qword [rsp + 0x10]
mov r8d, dword [rax + r8*4]
movzx eax, byte [rsp + 0x1c]
xor r10d, r8d
xor r10d, r14d
mov r14, qword [rsp + 8]
xor r9d, dword [r14 + rax*4]
mov r14d, edi
xor r14d, ebp
and r14d, 0xff0000
xor r9d, esi
mov esi, r10d
xor r8d, r9d
mov r9d, ebx
shl esi, 8
xor r9d, r10d
mov eax, r9d
mov r9d, r12d
xor r9d, r8d
and eax, 0xff00
or r14d, eax
movzx eax, r9b
mov r9d, r15d
xor r9d, r11d
or r14d, eax
mov eax, r9d
mov r9d, ebp
and eax, 0xff000000
shl r9d, 8
or r14d, eax
mov eax, r9d
xor eax, ebx
mov r9d, eax
mov eax, esi
mov esi, r11d
xor eax, r8d
and r9d, 0xff0000
shl esi, 0x10
and eax, 0xff00
xor esi, ebx
or eax, r9d
mov r9d, r11d
and esi, 0xff000000
shl r9d, 8
xor r9d, edi
and r9d, 0xff000000
or eax, r9d
mov r9d, r12d
shr r9d, 0x18
xor r9d, r15d
movzx r9d, r9b
or eax, r9d
mov r9d, eax
mov dword [rsp + 0x70], eax
mov eax, r12d
shr eax, 0x10
shr r12d, 8
shl r11d, 0x18
xor eax, edi
xor r11d, r8d
xor ebx, r12d
movzx eax, al
movzx r12d, bl
and r11d, 0xff000000
or esi, eax
mov eax, ebp
shr ebp, 8
shl eax, 0x10
xor ebp, r15d
or r11d, r12d
xor eax, r8d
and ebp, 0xff0000
mov r8d, dword [rsp + 0x3c]
and eax, 0xff0000
or r11d, ebp
mov ebp, dword [rsp + 0x30]
or esi, eax
mov eax, r10d
shr r10d, 8
shr eax, 0x10
xor r10d, edi
xor r8d, r9d
xor eax, r15d
and r10d, 0xff00
mov r15d, r11d
and eax, 0xff00
or r15d, r10d
mov r10d, dword [rsp + 0x6c]
or esi, eax
xor dword [rsp + 0x7c], r9d
mov r11, qword [rsp + 0x10]
xor ebp, esi
mov r9d, r8d
mov ebx, r8d
mov eax, ebp
mov ebp, dword [rsp + 0x48]
shr r9d, 0x10
xor r10d, esi
mov dword [rsp + 0x94], esi
movzx r9d, r9b
movzx esi, bh
mov edi, dword [r13 + r9*4]
movzx r9d, r8b
xor ebp, r15d
xor dword [rsp + 0x8c], r15d
mov dword [rsp + 0x5c], r15d
mov dword [rsp + 0x1c], ebp
mov dword [rsp + 0x6c], r10d
shr r8d, 0x18
mov esi, dword [r11 + rsi*4]
mov rbx, qword [rsp]
mov r15, r13
mov r12, qword [rsp + 8]
mov r13d, dword [rbx + r8*4]
mov r8d, eax
shr r8d, 0x18
mov ebp, dword [r12 + r9*4]
mov r10d, dword [rbx + r8*4]
movzx r8d, al
movzx ebx, ah
mov r8d, dword [r12 + r8*4]
mov r9d, dword [r11 + rbx*4]
shr eax, 0x10
movzx eax, al
mov rbx, r15
xor r13d, ebp
mov r11d, r10d
xor r13d, edi
xor r11d, r8d
xor r11d, dword [r15 + rax*4]
mov eax, dword [rsp + 0x1c]
mov dword [rsp + 0x30], r9d
mov r9, r12
mov r15d, dword [rsp + 0x30]
mov r12, qword [rsp]
xor r13d, esi
shr eax, 0x18
xor r15d, r11d
mov r11d, dword [r12 + rax*4]
mov r12d, dword [rsp + 0x1c]
mov eax, r12d
xor r10d, r11d
shr eax, 0x10
movzx eax, al
mov eax, dword [rbx + rax*4]
mov ebx, r12d
movzx r12d, r12b
mov r12d, dword [r9 + r12*4]
mov r9, qword [rsp + 0x10]
movzx ebx, bh
xor r8d, r12d
xor r11d, r12d
mov r12, qword [rsp]
xor ebp, r8d
mov r8d, r14d
xor r11d, eax
shr r8d, 0x18
xor r11d, dword [r9 + rbx*4]
mov ebx, r14d
mov r8d, dword [r12 + r8*4]
mov r12, qword [rsp + 0x20]
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [r12 + rbx*4]
xor r10d, r8d
xor eax, ebx
xor edi, eax
mov eax, r14d
movzx r14d, r14b
movzx eax, ah
mov eax, dword [r9 + rax*4]
mov r9d, dword [rsp + 0x30]
xor r9d, eax
xor r9d, esi
mov rsi, qword [rsp + 8]
xor r8d, dword [rsi + r14*4]
mov esi, r13d
xor esi, r10d
and esi, 0xff000000
xor r8d, ebx
mov ebx, ebp
xor eax, r8d
mov r8d, r15d
xor r8d, edi
and r8d, 0xff0000
or esi, r8d
mov r8d, ebp
xor r8d, eax
shr ebx, 0x18
movzx r8d, r8b
xor ebx, r13d
or esi, r8d
mov r8d, r11d
movzx ebx, bl
xor r8d, r9d
and r8d, 0xff00
or esi, r8d
mov r8d, r10d
shl r8d, 8
mov dword [rsp + 0x3c], esi
xor r8d, r15d
and r8d, 0xff000000
or r8d, ebx
mov ebx, edi
shl ebx, 8
xor ebx, r11d
and ebx, 0xff0000
or r8d, ebx
mov ebx, r9d
shl ebx, 8
xor ebx, eax
and ebx, 0xff00
or r8d, ebx
mov ebx, r10d
mov dword [rsp + 0x30], r8d
mov r8d, ebp
shl ebx, 0x10
shr r8d, 0x10
xor ebx, r11d
xor r8d, r15d
and ebx, 0xff000000
movzx r8d, r8b
or ebx, r8d
mov r8d, edi
shl r8d, 0x10
xor r8d, eax
and r8d, 0xff0000
or ebx, r8d
mov r8d, r9d
shr r8d, 0x10
xor r8d, r13d
and r8d, 0xff00
or ebx, r8d
shr ebp, 8
shl r10d, 0x18
xor r10d, eax
xor r11d, ebp
shr edi, 8
and r10d, 0xff000000
xor edi, r13d
shr r9d, 8
movzx ebp, r11b
and edi, 0xff0000
xor r9d, r15d
or r10d, ebp
and r9d, 0xff00
mov dword [rsp + 0x48], ebx
or r10d, edi
or r10d, r9d
cmp qword [rsp + 0x100], 4
mov r9d, 2
mov dword [rsp + 0x78], r10d
jbe case.default.0x6f582de8
mov eax, dword [rdx]
bswap eax
sub qword [rsp + 0x100], 4
mov dword [rsp + 0x1c], eax
add rdx, 4
mov eax, dword [rsp + 0x3c]
xor eax, dword [rsp + 0x84]
mov edi, dword [rsp + 0x48]
mov esi, dword [rsp + 0x60]
mov ebx, dword [rsp + 0x38]
xor dword [rsp + 0x30], ebx
xor esi, edi
mov dword [rsp + 0x84], eax
mov r8d, dword [rsp + 0x64]
mov eax, dword [rsp + 0x1c]
xor dword [rsp + 0x68], eax
mov ebx, esi
mov eax, dword [rsp + 0x30]
mov esi, dword [rsp + 0x78]
mov ebp, dword [rsp + 0x88]
xor r8d, eax
mov r15, qword [rsp + 0x20]
xor dword [rsp + 0x58], esi
mov r10, qword [rsp]
xor ebp, esi
mov esi, r8d
xor dword [rsp + 0x40], eax
xor dword [rsp + 0x44], edi
shr esi, 0x10
mov eax, r8d
mov rdi, qword [rsp + 8]
movzx r9d, sil
movzx esi, ah
mov rax, qword [rsp + 0x10]
mov r13d, dword [r15 + r9*4]
movzx r9d, r8b
shr r8d, 0x18
mov r14d, dword [rdi + r9*4]
mov edi, dword [r10 + r8*4]
mov r8d, ebx
mov r12d, dword [rax + rsi*4]
shr r8d, 0x18
movzx esi, bh
mov r11d, dword [r10 + r8*4]
mov r10d, dword [rax + rsi*4]
movzx r8d, bl
mov rax, qword [rsp + 8]
shr ebx, 0x10
xor edi, r14d
xor edi, r13d
mov esi, r11d
xor edi, r12d
mov r9d, dword [rax + r8*4]
movzx r8d, bl
mov rbx, qword [rsp]
xor esi, r9d
xor esi, dword [r15 + r8*4]
mov r8d, ebp
shr r8d, 0x18
mov ebx, dword [rbx + r8*4]
mov r8d, ebp
shr r8d, 0x10
movzx r8d, r8b
xor esi, r10d
mov r8d, dword [r15 + r8*4]
movzx r15d, bpl
xor r11d, ebx
mov r15d, dword [rax + r15*4]
mov eax, ebp
movzx ebp, ah
mov rax, qword [rsp + 0x10]
xor ebx, r15d
xor r9d, r15d
mov r15, qword [rsp + 0x20]
xor ebx, r8d
xor ebx, dword [rax + rbp*4]
mov eax, dword [rsp + 0x1c]
mov rbp, qword [rsp]
xor r14d, r9d
mov r9d, eax
shr r9d, 0x18
mov r9d, dword [rbp + r9*4]
mov ebp, eax
movzx eax, ah
shr ebp, 0x10
movzx ebp, bpl
mov ebp, dword [r15 + rbp*4]
xor r11d, r9d
xor r8d, ebp
xor r13d, r8d
mov r8, rax
mov rax, qword [rsp + 0x10]
mov r8d, dword [rax + r8*4]
movzx eax, byte [rsp + 0x1c]
xor r10d, r8d
xor r10d, r12d
mov r12, qword [rsp + 8]
xor r9d, dword [r12 + rax*4]
mov r12d, r14d
xor r9d, ebp
mov ebp, ebx
xor r8d, r9d
xor ebp, r10d
mov r9d, esi
xor r9d, r13d
mov eax, ebp
mov ebp, r14d
xor ebp, r8d
and eax, 0xff00
and r9d, 0xff0000
or r9d, eax
movzx eax, bpl
mov ebp, edi
xor ebp, r11d
or r9d, eax
mov eax, ebp
mov ebp, r10d
and eax, 0xff000000
shl ebp, 8
or r9d, eax
mov r15d, r9d
mov r9d, r13d
shl r9d, 8
mov eax, r9d
xor eax, ebx
mov r9d, eax
mov eax, ebp
xor eax, r8d
and r9d, 0xff0000
and eax, 0xff00
or eax, r9d
mov r9d, r11d
shl r9d, 8
xor r9d, esi
and r9d, 0xff000000
or eax, r9d
mov r9d, r14d
shr r9d, 0x18
mov ebp, eax
xor r9d, edi
movzx r9d, r9b
or ebp, r9d
mov r9d, ebp
mov dword [rsp + 0x60], ebp
mov ebp, r11d
shl ebp, 0x10
xor ebp, ebx
and ebp, 0xff000000
shr r12d, 0x10
shl r11d, 0x18
mov eax, r12d
mov r12d, r13d
shr r13d, 8
xor eax, esi
shl r12d, 0x10
shr r14d, 8
movzx eax, al
xor r13d, edi
xor ebx, r14d
or ebp, eax
mov eax, r12d
mov r12d, r10d
xor eax, r8d
shr r12d, 0x10
xor r8d, r11d
and eax, 0xff0000
and r8d, 0xff000000
movzx r14d, bl
or ebp, eax
mov eax, r12d
shr r10d, 8
xor eax, edi
mov edi, dword [rsp + 0x34]
or r14d, r8d
and eax, 0xff00
xor r10d, esi
mov ebx, dword [rsp + 0x38]
or ebp, eax
and r13d, 0xff0000
mov r8d, r14d
xor edi, ebp
mov esi, r10d
or r8d, r13d
mov eax, edi
mov edi, dword [rsp + 0x4c]
and esi, 0xff00
or r8d, esi
xor ebx, r9d
xor dword [rsp + 0x90], r9d
mov r9d, dword [rsp + 0x84]
mov r14, qword [rsp + 0x20]
movzx esi, bh
xor edi, r8d
xor dword [rsp + 0x9c], r8d
mov dword [rsp + 0x3c], r8d
mov r8d, ebx
mov dword [rsp + 0x88], ebp
shr r8d, 0x10
xor r9d, ebp
movzx r8d, r8b
mov dword [rsp + 0x84], r9d
mov r12d, dword [r14 + r8*4]
movzx r8d, bl
shr ebx, 0x18
mov r11, qword [rsp + 0x10]
mov r10, qword [rsp]
mov ebp, dword [r11 + rsi*4]
mov rsi, qword [rsp + 8]
mov r13d, dword [rsi + r8*4]
mov esi, dword [r10 + rbx*4]
movzx ebx, ah
mov r9d, dword [r11 + rbx*4]
mov r8d, eax
mov rbx, qword [rsp + 8]
shr r8d, 0x18
mov r11, qword [rsp]
mov r10d, dword [r10 + r8*4]
movzx r8d, al
shr eax, 0x10
mov r8d, dword [rbx + r8*4]
movzx eax, al
xor esi, r13d
xor esi, r12d
mov ebx, r10d
xor esi, ebp
xor ebx, r8d
xor ebx, dword [r14 + rax*4]
mov eax, edi
shr eax, 0x18
mov r11d, dword [r11 + rax*4]
mov eax, edi
shr eax, 0x10
xor ebx, r9d
movzx eax, al
mov dword [rsp + 0x1c], ebx
mov rbx, qword [rsp + 8]
xor r10d, r11d
mov eax, dword [r14 + rax*4]
movzx r14d, dil
mov r14d, dword [rbx + r14*4]
mov ebx, edi
movzx edi, bh
mov rbx, qword [rsp + 0x10]
xor r11d, r14d
xor r8d, r14d
mov r14, qword [rsp + 0x20]
xor r11d, eax
xor r11d, dword [rbx + rdi*4]
mov rdi, qword [rsp]
xor r13d, r8d
mov r8d, r15d
shr r8d, 0x18
mov r8d, dword [rdi + r8*4]
mov edi, r15d
shr edi, 0x10
movzx edi, dil
mov edi, dword [r14 + rdi*4]
xor r10d, r8d
xor eax, edi
xor r12d, eax
mov eax, r15d
movzx eax, ah
mov eax, dword [rbx + rax*4]
mov rbx, qword [rsp + 8]
xor r9d, eax
xor ebp, r9d
movzx r9d, r15b
xor r8d, dword [rbx + r9*4]
mov ebx, dword [rsp + 0x1c]
mov r9d, r13d
xor r8d, edi
mov edi, esi
xor eax, r8d
mov r8d, ebx
xor edi, r10d
xor r8d, r12d
and edi, 0xff000000
and r8d, 0xff0000
or edi, r8d
mov r8d, r13d
xor r8d, eax
shr r9d, 0x18
movzx r8d, r8b
xor r9d, esi
or edi, r8d
mov r8d, r11d
movzx r9d, r9b
xor r8d, ebp
and r8d, 0xff00
or edi, r8d
mov r8d, r10d
shl r8d, 8
mov dword [rsp + 0x38], edi
mov edi, r10d
xor r8d, ebx
shl edi, 0x10
and r8d, 0xff000000
xor edi, r11d
or r8d, r9d
mov r9d, r12d
and edi, 0xff000000
shl r9d, 8
xor r9d, r11d
and r9d, 0xff0000
or r8d, r9d
mov r9d, ebp
shl r9d, 8
xor r9d, eax
and r9d, 0xff00
or r8d, r9d
mov r9d, 3
mov dword [rsp + 0x34], r8d
mov r8d, r13d
shr r8d, 0x10
xor r8d, ebx
movzx r8d, r8b
or edi, r8d
mov r8d, r12d
shl r8d, 0x10
xor r8d, eax
and r8d, 0xff0000
or edi, r8d
mov r8d, ebp
shr r8d, 0x10
xor r8d, esi
and r8d, 0xff00
or edi, r8d
shr r13d, 8
shl r10d, 0x18
xor eax, r10d
xor r11d, r13d
shr r12d, 8
and eax, 0xff000000
xor r12d, esi
shr ebp, 8
movzx r13d, r11b
and r12d, 0xff0000
xor ebp, ebx
or r13d, eax
and ebp, 0xff00
mov dword [rsp + 0x4c], edi
or r13d, r12d
or r13d, ebp
cmp qword [rsp + 0x100], 4
mov dword [rsp + 0x64], r13d
jbe case.default.0x6f582de8
mov eax, dword [rdx]
bswap eax
sub qword [rsp + 0x100], 4
mov dword [rsp + 0x1c], eax
add rdx, 4
mov eax, dword [rsp + 0x38]
xor eax, dword [rsp + 0x70]
mov esi, dword [rsp + 0x4c]
mov edi, dword [rsp + 0x80]
mov r8d, dword [rsp + 0x2c]
xor dword [rsp + 0x34], r8d
xor edi, esi
mov dword [rsp + 0x70], eax
mov r10d, dword [rsp + 0x74]
mov eax, dword [rsp + 0x1c]
xor dword [rsp + 0x48], eax
mov r8d, edi
mov eax, dword [rsp + 0x34]
mov r11d, r8d
mov edi, dword [rsp + 0x64]
shr r11d, 0x18
mov r15d, dword [rsp + 0x98]
xor r10d, eax
mov r14, qword [rsp + 0x20]
xor dword [rsp + 0x5c], eax
xor dword [rsp + 0x68], edi
mov eax, r10d
xor r15d, edi
mov edi, r10d
movzx ebx, ah
shr edi, 0x10
mov rax, qword [rsp + 8]
xor dword [rsp + 0x50], esi
movzx r9d, dil
mov rsi, qword [rsp]
mov r12d, dword [r14 + r9*4]
movzx r9d, r10b
shr r10d, 0x18
mov r13d, dword [rax + r9*4]
mov eax, r8d
mov r9d, r11d
mov r11d, dword [rsi + r9*4]
mov rdi, qword [rsp + 0x10]
movzx r9d, r8b
mov ebp, dword [rsi + r10*4]
movzx esi, ah
mov rax, qword [rsp + 8]
shr r8d, 0x10
mov ebx, dword [rdi + rbx*4]
mov r10d, dword [rdi + rsi*4]
movzx r8d, r8b
mov r9d, dword [rax + r9*4]
mov edi, r11d
mov rsi, qword [rsp]
xor ebp, r13d
xor ebp, r12d
xor edi, r9d
xor edi, dword [r14 + r8*4]
mov r8d, r15d
shr r8d, 0x18
xor ebp, ebx
mov esi, dword [rsi + r8*4]
mov r8d, r15d
shr r8d, 0x10
movzx r8d, r8b
xor edi, r10d
mov r8d, dword [r14 + r8*4]
movzx r14d, r15b
xor r11d, esi
mov r14d, dword [rax + r14*4]
mov eax, r15d
movzx eax, ah
mov r15, rax
mov rax, qword [rsp + 0x10]
xor esi, r14d
xor r9d, r14d
xor esi, r8d
xor r13d, r9d
xor esi, dword [rax + r15*4]
mov eax, dword [rsp + 0x1c]
mov r15, qword [rsp]
mov r9d, eax
mov r14d, eax
movzx eax, ah
shr r9d, 0x18
shr r14d, 0x10
mov r9d, dword [r15 + r9*4]
mov r15, qword [rsp + 0x20]
movzx r14d, r14b
mov r14d, dword [r15 + r14*4]
xor r11d, r9d
xor r8d, r14d
xor r12d, r8d
mov r8, rax
mov rax, qword [rsp + 0x10]
mov r8d, dword [rax + r8*4]
movzx eax, byte [rsp + 0x1c]
xor r10d, r8d
xor r10d, ebx
mov rbx, qword [rsp + 8]
xor r9d, dword [rbx + rax*4]
xor r9d, r14d
mov r14d, r10d
xor r8d, r9d
mov r9d, edi
shl r14d, 8
xor r9d, r12d
mov ebx, r9d
mov r9d, esi
xor r9d, r10d
and ebx, 0xff0000
mov eax, r9d
mov r9d, r13d
xor r9d, r8d
and eax, 0xff00
or ebx, eax
movzx eax, r9b
mov r9d, ebp
xor r9d, r11d
or ebx, eax
mov eax, r9d
mov r9d, r12d
and eax, 0xff000000
shl r9d, 8
or ebx, eax
mov eax, r9d
xor eax, esi
mov dword [rsp + 0x1c], ebx
mov r9d, eax
mov eax, r14d
mov r14d, r11d
xor eax, r8d
and r9d, 0xff0000
shl r14d, 0x10
and eax, 0xff00
mov r15d, r14d
mov r14d, r13d
or eax, r9d
mov r9d, r11d
xor r15d, esi
shl r9d, 8
and r15d, 0xff000000
xor r9d, edi
and r9d, 0xff000000
or eax, r9d
mov r9d, r13d
shr r9d, 0x18
xor r9d, ebp
movzx r9d, r9b
or eax, r9d
shr r14d, 0x10
shl r11d, 0x18
mov r9d, eax
mov dword [rsp + 0x80], eax
mov eax, r14d
xor eax, edi
mov r14d, r12d
xor r11d, r8d
shl r14d, 0x10
movzx eax, al
xor dword [rsp + 0x78], r9d
or r15d, eax
mov eax, r14d
mov r14d, r10d
xor eax, r8d
mov r8d, dword [rsp + 0x2c]
shr r14d, 0x10
and eax, 0xff0000
shr r13d, 8
shr r12d, 8
or r15d, eax
mov eax, r14d
xor r13d, esi
xor r8d, r9d
xor eax, ebp
mov r9d, dword [rsp + 0x70]
and eax, 0xff00
mov r14d, r15d
xor r12d, ebp
or r14d, eax
and r11d, 0xff000000
movzx r13d, r13b
xor r9d, r14d
or r11d, r13d
and r12d, 0xff0000
shr r10d, 8
mov ebp, dword [rsp + 0x28]
or r11d, r12d
mov r15, qword [rsp + 0x20]
xor edi, r10d
mov dword [rsp + 0x70], r9d
mov r9d, r8d
and edi, 0xff00
mov r10d, r11d
shr r9d, 0x10
or r10d, edi
xor ebp, r14d
mov ebx, r8d
movzx r9d, r9b
mov eax, ebp
xor dword [rsp + 0x94], r10d
movzx esi, bh
mov dword [rsp + 0x98], r14d
mov dword [rsp + 0x38], r10d
mov ebp, dword [rsp + 0x54]
mov r13d, dword [r15 + r9*4]
mov rbx, qword [rsp + 0x10]
movzx r9d, r8b
mov r11, qword [rsp + 8]
xor ebp, r10d
shr r8d, 0x18
mov r12d, dword [rbx + rsi*4]
mov rsi, qword [rsp]
mov r14d, dword [r11 + r9*4]
mov edi, dword [rsi + r8*4]
mov r8d, eax
shr r8d, 0x18
mov r10d, dword [rsi + r8*4]
movzx esi, ah
movzx r8d, al
shr eax, 0x10
mov r8d, dword [r11 + r8*4]
mov r9d, dword [rbx + rsi*4]
movzx eax, al
mov rbx, r11
xor edi, r14d
mov esi, dword [r15 + rax*4]
mov r11d, r10d
mov eax, ebp
xor r11d, r8d
shr eax, 0x18
xor edi, r13d
xor edi, r12d
xor esi, r11d
mov r11, qword [rsp]
xor esi, r9d
mov r11d, dword [r11 + rax*4]
mov eax, ebp
shr eax, 0x10
movzx eax, al
mov eax, dword [r15 + rax*4]
movzx r15d, bpl
xor r10d, r11d
mov r15d, dword [rbx + r15*4]
mov ebx, ebp
movzx ebp, bh
mov rbx, qword [rsp + 0x10]
xor r8d, r15d
xor r11d, r15d
mov r15d, dword [rsp + 0x1c]
xor r11d, eax
xor r11d, dword [rbx + rbp*4]
mov rbp, qword [rsp]
xor r14d, r8d
mov r8d, r15d
shr r8d, 0x18
mov r8d, dword [rbp + r8*4]
mov ebp, r15d
mov r15, qword [rsp + 0x20]
shr ebp, 0x10
movzx ebp, bpl
mov ebp, dword [r15 + rbp*4]
mov r15, qword [rsp + 8]
xor r10d, r8d
xor eax, ebp
xor r13d, eax
mov eax, dword [rsp + 0x1c]
movzx eax, ah
mov eax, dword [rbx + rax*4]
movzx ebx, byte [rsp + 0x1c]
xor r9d, eax
xor r8d, dword [r15 + rbx*4]
xor r9d, r12d
xor r8d, ebp
mov ebp, r10d
xor eax, r8d
mov r8d, edi
xor r8d, r10d
mov ebx, r8d
mov r8d, esi
xor r8d, r13d
and ebx, 0xff000000
and r8d, 0xff0000
or r8d, ebx
mov ebx, r14d
xor ebx, eax
shl ebp, 0x10
movzx ebx, bl
xor ebp, r11d
or r8d, ebx
mov ebx, r11d
and ebp, 0xff000000
xor ebx, r9d
and ebx, 0xff00
or r8d, ebx
mov ebx, r14d
mov dword [rsp + 0x2c], r8d
mov r8d, r10d
shr ebx, 0x18
shl r8d, 8
xor ebx, edi
xor r8d, esi
movzx ebx, bl
and r8d, 0xff000000
or r8d, ebx
mov ebx, r13d
shl ebx, 8
xor ebx, r11d
and ebx, 0xff0000
or r8d, ebx
mov ebx, r9d
shl ebx, 8
xor ebx, eax
and ebx, 0xff00
or r8d, ebx
mov dword [rsp + 0x28], r8d
mov r8d, r14d
shr r8d, 0x10
xor r8d, esi
movzx r8d, r8b
or ebp, r8d
mov r8d, r13d
shl r8d, 0x10
xor r8d, eax
and r8d, 0xff0000
or ebp, r8d
mov r8d, r9d
shr r8d, 0x10
xor r8d, edi
and r8d, 0xff00
or ebp, r8d
shr r14d, 8
shl r10d, 0x18
xor r10d, eax
xor r11d, r14d
shr r13d, 8
and r10d, 0xff000000
xor r13d, edi
shr r9d, 8
movzx r14d, r11b
and r13d, 0xff0000
xor r9d, esi
or r10d, r14d
and r9d, 0xff00
mov dword [rsp + 0x54], ebp
or r10d, r13d
or r10d, r9d
cmp qword [rsp + 0x100], 4
mov r9d, 4
mov dword [rsp + 0x74], r10d
ja 0x6f582df0
nop
cmp qword [rsp + 0x100], 0
mov eax, dword [rsp + 0x100]
mov dword [rcx + 4], eax
je 0x6f5848b3
mov r8, qword [rsp + 0x100]
xor eax, eax
add r8, rdx
nop word cs:[rax + rax]
movzx r10d, byte [rdx]
shl eax, 8
add rdx, 1
or eax, r10d
cmp rdx, r8
jne 0x6f584770
mov dword [rcx], eax
mov eax, dword [rsp + 0x40]
mov dword [rcx + 8], r9d
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0x44]
mov dword [rcx + 0x10], eax
mov eax, dword [rsp + 0x58]
mov dword [rcx + 0x14], eax
mov eax, dword [rsp + 0x7c]
mov dword [rcx + 0x18], eax
mov eax, dword [rsp + 0x6c]
mov dword [rcx + 0x1c], eax
mov eax, dword [rsp + 0x8c]
mov dword [rcx + 0x20], eax
mov eax, dword [rsp + 0x2c]
mov dword [rcx + 0x24], eax
mov eax, dword [rsp + 0x28]
mov dword [rcx + 0x28], eax
mov eax, dword [rsp + 0x54]
mov dword [rcx + 0x2c], eax
mov eax, dword [rsp + 0x74]
mov dword [rcx + 0x30], eax
mov eax, dword [rsp + 0x80]
mov dword [rcx + 0x34], eax
mov eax, dword [rsp + 0x98]
mov dword [rcx + 0x38], eax
mov eax, dword [rsp + 0x38]
mov dword [rcx + 0x3c], eax
mov eax, dword [rsp + 0x34]
mov dword [rcx + 0x40], eax
mov eax, dword [rsp + 0x4c]
mov dword [rcx + 0x44], eax
mov eax, dword [rsp + 0x64]
mov dword [rcx + 0x48], eax
mov eax, dword [rsp + 0x60]
mov dword [rcx + 0x4c], eax
mov eax, dword [rsp + 0x88]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0x3c]
mov dword [rcx + 0x54], eax
mov eax, dword [rsp + 0x30]
mov dword [rcx + 0x58], eax
mov eax, dword [rsp + 0x48]
mov dword [rcx + 0x5c], eax
mov eax, dword [rsp + 0x78]
mov dword [rcx + 0x60], eax
mov eax, dword [rsp + 0x70]
mov dword [rcx + 0x64], eax
mov eax, dword [rsp + 0x94]
mov dword [rcx + 0x68], eax
mov eax, dword [rsp + 0x5c]
mov dword [rcx + 0x6c], eax
mov eax, dword [rsp + 0x50]
mov dword [rcx + 0x70], eax
mov eax, dword [rsp + 0x68]
mov dword [rcx + 0x74], eax
mov eax, dword [rsp + 0x90]
mov dword [rcx + 0x78], eax
mov eax, dword [rsp + 0x84]
mov dword [rcx + 0x7c], eax
mov eax, dword [rsp + 0x9c]
mov dword [rcx + 0x80], eax
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [rsp + 0x100]
mov r9d, dword [rsp + 0x100]
add r9d, r8d
test eax, eax
lea r10d, [rax - 1]
jne 0x6f582c53
jmp 0x6f582c8e
xor eax, eax
jmp 0x6f584783