Function at 0x486ef0
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, 0xd8
mov r15d, dword [rcx]
mov rax, r8
mov qword [rsp + 0x130], r8
mov r8d, dword [rcx + 4]
shl rax, 3
add qword [rcx + 0xa0], rax
cmp r8d, 3
ja 0x487040
mov eax, 4
sub eax, r8d
cmp rax, qword [rsp + 0x130]
ja 0x487080
mov eax, 3
mov r10d, 4
sub eax, r8d
movzx r9d, byte [rdx]
shl r15d, 8
mov r8d, r15d
mov r15d, r9d
or r15d, r8d
test eax, eax
je 0x486fa3
movzx r9d, byte [rdx + 1]
shl r15d, 8
mov r8d, r15d
mov r15d, r9d
or r15d, r8d
cmp eax, 1
je 0x486fa3
movzx r9d, byte [rdx + 2]
shl r15d, 8
mov r8d, r15d
mov r15d, r9d
or r15d, r8d
cmp eax, 2
je 0x486fa3
movzx r9d, byte [rdx + 3]
shl r15d, 8
mov r8d, r15d
mov r15d, r9d
or r15d, r8d
mov rbx, qword [rsp + 0x130]
lea rdx, [rdx + rax + 1]
lea r8, [rbx - 1]
sub r8, rax
mov qword [rsp + 0x130], r8
je 0x4894f0
mov eax, dword [rcx + 8]
cmp eax, 1
je 0x4888b0
cmp eax, 2
je 0x487cb0
test eax, eax
je 0x4870b0
mov ebx, dword [rsp + 0x130]
mov dword [rcx + 4], ebx
mov rbx, qword [rsp + 0x130]
lea r8, [rbx - 1]
nop dword [rax + rax]
lea r10, [rdx + r8 + 1]
xor r8d, r8d
nop dword [rax + rax]
movzx r9d, byte [rdx]
shl r8d, 8
inc rdx
or r8d, r9d
cmp r10, rdx
jne 0x487010
mov dword [rcx], r8d
mov dword [rcx + 8], eax
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [rcx + 8]
cmp eax, 1
je 0x4888b0
cmp eax, 2
je 0x487cb0
test eax, eax
je 0x4870b0
mov ebx, dword [rsp + 0x130]
mov dword [rcx + 4], ebx
mov rbx, qword [rsp + 0x130]
lea r8, [rbx - 1]
test rbx, rbx
jne 0x487000
xor r8d, r8d
jmp 0x487023
mov r10d, dword [rsp + 0x130]
add r10d, r8d
cmp qword [rsp + 0x130], 0
je 0x4894f0
mov eax, dword [rsp + 0x130]
dec eax
jmp 0x486f4e
mov eax, dword [rcx + 0x64]
mov ebp, dword [rcx + 0xc]
mov r11d, dword [rcx + 0x10]
mov dword [rsp + 0x44], eax
mov eax, dword [rcx + 0x2c]
mov dword [rsp + 0xb0], eax
mov eax, dword [rcx + 0x6c]
mov dword [rsp + 0x54], eax
mov eax, dword [rcx + 0x1c]
mov dword [rsp + 0x40], eax
mov eax, dword [rcx + 0x78]
mov dword [rsp + 0x50], eax
mov eax, dword [rcx + 0x28]
mov dword [rsp + 0x3c], eax
mov eax, dword [rcx + 0x94]
mov dword [rsp + 0x58], eax
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 0x18]
mov dword [rsp + 0x2c], eax
mov eax, dword [rcx + 0x48]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0x4c]
mov dword [rsp + 0x94], eax
mov eax, dword [rcx + 0x3c]
mov dword [rsp + 0xac], eax
mov eax, dword [rcx + 0x40]
mov dword [rsp + 0x8c], eax
mov eax, dword [rcx + 0x44]
mov dword [rsp + 0x34], eax
mov eax, dword [rcx + 0x7c]
mov dword [rsp + 0x98], eax
mov eax, dword [rcx + 0x80]
mov dword [rsp + 0x9c], eax
mov eax, dword [rcx + 0x30]
mov dword [rsp + 0xb8], eax
mov eax, dword [rcx + 0x34]
mov dword [rsp + 0xa0], eax
mov eax, dword [rcx + 0x38]
mov dword [rsp + 0xa8], eax
mov eax, dword [rcx + 0x70]
mov dword [rsp + 0x5c], eax
mov eax, dword [rcx + 0x74]
mov dword [rsp + 0x70], eax
mov eax, dword [rcx + 0x24]
mov dword [rsp + 0x60], eax
lea rax, [0x006c2220]
mov qword [rsp + 0x20], rax
lea rax, [0x006c1e20]
mov qword [rsp + 0x18], rax
lea rax, [0x006c1a20]
mov qword [rsp + 0x10], rax
lea rax, [0x006c2620]
mov qword [rsp + 8], rax
xor r11d, dword [rsp + 0x54]
mov edi, dword [rsp + 0x2c]
mov ebx, dword [rsp + 0x40]
mov r13d, dword [rcx + 0x98]
xor ebx, dword [rsp + 0x50]
mov r14d, dword [rsp + 0x38]
mov r8d, dword [rcx + 0x84]
xor ebp, dword [rsp + 0x44]
mov r10, qword [rsp + 0x20]
mov esi, r11d
mov eax, r11d
xor eax, dword [rcx + 0x90]
mov dword [rsp + 0x88], r11d
xor r13d, edi
xor edi, dword [rcx + 0x50]
mov dword [rcx + 0x10], r11d
xor r14d, esi
mov r11d, dword [rsp + 0x30]
mov dword [rsp + 0x64], ebx
mov dword [rcx + 0x1c], ebx
mov dword [rsp + 0x68], r8d
mov dword [rsp + 0x4c], r14d
mov dword [rsp + 0x48], ebp
mov dword [rcx + 0x64], ebp
mov dword [rcx + 0x48], r14d
mov ebx, dword [rsp + 0x58]
mov dword [rsp + 0xbc], edi
mov dword [rcx + 0x50], edi
mov edi, eax
shr edi, 0x10
mov esi, dword [rsp + 0x94]
mov r9, qword [rsp + 0x18]
movzx r8d, dil
mov edi, dword [r10 + r8*4]
movzx r8d, al
xor ebx, r11d
movzx ebp, bh
xor esi, r11d
mov r11, qword [rsp + 0x10]
mov dword [rsp + 0x90], esi
mov dword [rcx + 0x4c], esi
movzx esi, ah
shr eax, 0x18
mov esi, dword [r9 + rsi*4]
mov r12d, dword [r11 + r8*4]
mov r8, qword [rsp + 8]
mov r14d, dword [r8 + rax*4]
xor r14d, r12d
mov eax, r14d
mov r14d, edi
xor r14d, esi
xor r14d, eax
mov eax, ebx
shr eax, 0x18
mov eax, dword [r8 + rax*4]
mov r8d, dword [r9 + rbp*4]
movzx r9d, bl
shr ebx, 0x10
movzx ebx, bl
mov rbp, r10
mov r9d, dword [r11 + r9*4]
mov r10d, dword [r10 + rbx*4]
xor r10d, r8d
mov ebx, r10d
mov r10d, eax
xor r10d, r9d
xor ebx, r10d
mov r10d, r13d
mov dword [rsp + 0x38], ebx
mov rbx, qword [rsp + 8]
shr r10d, 0x18
mov r10d, dword [rbx + r10*4]
mov ebx, r13d
movzx ebx, bh
mov dword [rsp + 0x40], r10d
xor eax, r10d
mov r10d, r13d
shr r10d, 0x10
movzx r10d, r10b
mov r10d, dword [rbp + r10*4]
movzx ebp, r13b
mov r13, rbx
mov rbx, qword [rsp + 0x18]
mov ebp, dword [r11 + rbp*4]
mov r11d, dword [rbx + r13*4]
mov ebx, r15d
xor r9d, ebp
movzx ebx, bh
xor r12d, r9d
xor r11d, r10d
mov r13d, r11d
mov r11d, dword [rsp + 0x40]
xor r11d, ebp
mov ebp, r15d
xor r11d, r13d
mov r13d, r15d
shr ebp, 0x10
shr r13d, 0x18
movzx ebp, bpl
mov r9d, r13d
mov r13, qword [rsp + 8]
mov r9d, dword [r13 + r9*4]
mov r13, qword [rsp + 0x20]
mov ebp, dword [r13 + rbp*4]
xor eax, r9d
xor r10d, ebp
xor edi, r10d
mov r10, rbx
mov rbx, qword [rsp + 0x18]
mov r10d, dword [rbx + r10*4]
mov rbx, qword [rsp + 0x10]
xor r8d, r10d
xor ebp, r10d
mov r10d, r12d
xor esi, r8d
movzx r8d, r15b
xor r9d, dword [rbx + r8*4]
mov ebx, dword [rsp + 0x38]
mov r8d, r11d
xor r8d, esi
mov dword [rsp + 0x44], r8d
mov r8d, r14d
xor r8d, eax
mov dword [rsp + 0x6c], r8d
xor ebp, r9d
mov r9d, ebx
xor r9d, edi
xor r10d, ebp
mov dword [rsp + 0x78], r9d
mov r9d, edi
mov dword [rsp + 0x58], r10d
shl r9d, 8
xor r9d, r11d
mov r10d, r9d
mov r9d, esi
shl r9d, 8
and r10d, 0xff0000
xor r9d, ebp
and r9d, 0xff00
or r10d, r9d
mov r9d, r10d
mov r10d, eax
shl r10d, 8
mov r8d, r10d
mov r10d, r12d
shr r10d, 0x18
xor r8d, ebx
xor r10d, r14d
and r8d, 0xff000000
movzx r10d, r10b
or r8d, r10d
or r9d, r8d
mov ebx, r9d
mov dword [rsp + 0xc0], r9d
mov dword [rcx + 0x94], r9d
mov r9d, edi
shl r9d, 0x10
xor r9d, ebp
mov r10d, r9d
mov r9d, esi
shr r9d, 0x10
and r10d, 0xff0000
xor r9d, r14d
and r9d, 0xff00
or r10d, r9d
mov r9d, r10d
mov r10d, eax
shl r10d, 0x10
mov r8d, r10d
mov r10d, r12d
xor r8d, r11d
and r8d, 0xff000000
shr r10d, 0x10
xor r10d, dword [rsp + 0x38]
shr esi, 8
shr edi, 8
shr r12d, 8
shl eax, 0x18
xor edi, r14d
xor r11d, r12d
xor eax, ebp
and edi, 0xff0000
and eax, 0xff000000
movzx r10d, r10b
or r8d, r10d
or r9d, r8d
mov dword [rsp + 0xc8], r9d
mov dword [rcx + 0x98], r9d
xor esi, dword [rsp + 0x38]
mov r10d, r9d
mov r9d, ebx
mov rbp, qword [rsp + 0x18]
mov r12, qword [rsp + 0x10]
and esi, 0xff00
or edi, esi
movzx esi, r11b
mov r11d, dword [rcx + 0x8c]
or eax, esi
mov rsi, qword [rsp + 8]
or edi, eax
mov eax, dword [rsp + 0x68]
mov r14d, edi
mov dword [rsp + 0x74], edi
mov dword [rcx + 0xc], edi
mov edi, dword [rcx + 0x88]
xor r11d, r14d
xor eax, ebx
xor edi, r10d
mov ebx, edi
mov edi, r14d
mov r14d, dword [rsp + 0xac]
xor r14d, r9d
mov dword [rsp + 0x38], r14d
mov dword [rcx + 0x3c], r14d
mov r14d, dword [rsp + 0x8c]
xor r14d, r10d
mov dword [rsp + 0xac], r14d
mov dword [rcx + 0x40], r14d
mov r14d, dword [rsp + 0x34]
xor r14d, edi
mov edi, eax
shr edi, 0x10
mov dword [rsp + 0xcc], r14d
mov dword [rcx + 0x44], r14d
mov r14, r13
movzx r8d, dil
movzx edi, ah
mov r9d, dword [r13 + r8*4]
movzx r8d, al
shr eax, 0x18
mov r10d, dword [rbp + rdi*4]
mov r8d, dword [r12 + r8*4]
mov edi, dword [rsi + rax*4]
mov eax, r9d
xor eax, r10d
xor edi, r8d
xor edi, eax
mov eax, ebx
shr eax, 0x18
mov dword [rsp + 0x40], edi
movzx edi, bl
mov eax, dword [rsi + rax*4]
movzx esi, bh
shr ebx, 0x10
movzx ebx, bl
mov r13d, dword [r12 + rdi*4]
mov esi, dword [rbp + rsi*4]
mov edi, dword [r14 + rbx*4]
mov r12, qword [rsp + 8]
mov ebx, eax
xor edi, esi
xor ebx, r13d
xor r8d, r13d
xor r10d, esi
xor ebx, edi
mov edi, r11d
shr edi, 0x18
mov dword [rsp + 0x34], ebx
mov rbx, qword [rsp + 0x10]
mov ebp, dword [r12 + rdi*4]
mov edi, r11d
movzx r12d, r11b
shr edi, 0x10
movzx edi, dil
mov edi, dword [r14 + rdi*4]
mov r12d, dword [rbx + r12*4]
mov ebx, r11d
movzx ebx, bh
mov r13, qword [rsp + 8]
movzx esi, byte [rsp + 0x58]
mov r11, rbx
mov rbx, qword [rsp + 0x18]
mov r14d, dword [rbx + r11*4]
mov ebx, dword [rsp + 0x44]
xor r14d, edi
movzx ebx, bh
mov r11d, r14d
mov r14d, ebp
xor r14d, r12d
xor r12d, r8d
mov r8d, dword [rsp + 0x6c]
xor r11d, r14d
mov r14, qword [rsp + 0x20]
shr r8d, 0x18
mov r8d, dword [r13 + r8*4]
mov r13, qword [rsp + 0x10]
xor eax, r8d
xor r8d, dword [r13 + rsi*4]
mov esi, r11d
xor ebp, eax
mov rax, qword [rsp + 0x78]
shr rax, 0x10
and eax, 0xff
mov eax, dword [r14 + rax*4]
mov r14d, dword [rsp + 0x34]
xor r9d, eax
mov r13d, r14d
xor edi, r9d
mov r9, rbx
mov rbx, qword [rsp + 0x18]
xor r13d, edi
mov r9d, dword [rbx + r9*4]
mov ebx, r12d
xor eax, r9d
xor r10d, r9d
xor eax, r8d
mov r8d, r10d
xor esi, r10d
xor ebx, eax
shl r8d, 8
mov dword [rsp + 0x6c], esi
mov esi, edi
mov dword [rsp + 0x78], ebx
mov ebx, dword [rsp + 0x40]
mov r9d, ebx
xor r9d, ebp
mov dword [rsp + 0x40], r9d
mov r9d, r8d
mov r8d, r12d
shr r8d, 0x18
xor r9d, eax
xor r8d, ebx
and r9d, 0xff00
movzx r8d, r8b
or r9d, r8d
mov r8d, ebp
shl r8d, 8
shl esi, 8
xor r8d, r14d
xor esi, r11d
and esi, 0xff0000
and r8d, 0xff000000
or r8d, esi
mov esi, r9d
or esi, r8d
mov r8d, r10d
shr r10d, 8
xor r10d, dword [rsp + 0x34]
shr r8d, 0x10
mov dword [rsp + 0x58], esi
mov dword [rcx + 0x88], esi
mov r9d, r8d
mov r8d, r12d
shr r12d, 8
shr r8d, 0x10
xor r9d, ebx
xor r8d, r14d
and r9d, 0xff00
mov r14d, edi
shr edi, 8
movzx r8d, r8b
shl r14d, 0x10
and r10d, 0xff00
or r9d, r8d
mov r8d, ebp
mov esi, r14d
shl ebp, 0x18
shl r8d, 0x10
xor esi, eax
xor ebp, eax
xor r8d, r11d
and esi, 0xff0000
xor r11d, r12d
and ebp, 0xff000000
and r8d, 0xff000000
movzx r14d, r11b
or r8d, esi
or r10d, r14d
mov esi, dword [rsp + 0x58]
or r9d, r8d
xor edi, ebx
and edi, 0xff0000
mov dword [rsp + 0x94], r9d
mov dword [rcx + 0x8c], r9d
or ebp, edi
or r10d, ebp
mov r12d, r10d
mov dword [rsp + 0x8c], r10d
mov dword [rcx + 0x90], r10d
mov r10d, dword [rsp + 0x50]
xor r10d, esi
mov eax, r10d
mov r10d, dword [rsp + 0x98]
movzx edi, ah
xor r10d, r9d
mov r11d, r10d
mov r10d, dword [rsp + 0x9c]
xor r10d, r12d
mov ebx, r10d
mov r10d, dword [rsp + 0xb8]
xor r10d, esi
mov dword [rcx + 0x30], r10d
mov r10d, dword [rsp + 0xa8]
mov esi, dword [rsp + 0xa0]
mov r14, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x18]
xor r10d, r12d
xor esi, r9d
movzx r9d, al
mov dword [rcx + 0x38], r10d
mov r10d, eax
mov dword [rsp + 0x44], esi
shr eax, 0x18
shr r10d, 0x10
mov dword [rcx + 0x34], esi
movzx r8d, r10b
mov rsi, qword [rsp + 0x10]
mov r10d, dword [r14 + r8*4]
mov r8d, dword [rbp + rdi*4]
mov rdi, qword [rsp + 8]
mov esi, dword [rsi + r9*4]
movzx r9d, r11b
mov r12d, dword [rdi + rax*4]
mov eax, r10d
xor eax, r8d
xor r12d, esi
xor r12d, eax
mov eax, r11d
shr eax, 0x18
mov eax, dword [rdi + rax*4]
mov dword [rsp + 0x34], eax
mov eax, r11d
shr r11d, 0x10
movzx edi, ah
mov eax, dword [rsp + 0x34]
movzx r11d, r11b
mov edi, dword [rbp + rdi*4]
xor r8d, edi
xor edi, dword [r14 + r11*4]
mov r11d, eax
mov dword [rsp + 0x50], r8d
mov r8, qword [rsp + 0x10]
mov r9d, dword [r8 + r9*4]
xor r11d, r9d
xor r9d, esi
mov rsi, qword [rsp + 8]
xor edi, r11d
mov r11d, ebx
shr r11d, 0x18
mov r11d, dword [rsi + r11*4]
mov esi, ebx
shr esi, 0x10
movzx esi, sil
mov ebp, dword [r14 + rsi*4]
movzx esi, bl
movzx ebx, bh
mov esi, dword [r8 + rsi*4]
mov r8, qword [rsp + 0x18]
xor eax, r11d
xor r10d, ebp
xor ebp, dword [r8 + rbx*4]
mov ebx, r11d
mov r11d, dword [rsp + 0x40]
xor r9d, esi
xor ebx, esi
mov rsi, qword [rsp + 8]
shr r11d, 0x18
mov esi, dword [rsi + r11*4]
mov r11, r13
xor ebx, ebp
xor eax, esi
shr r11, 0x10
and r11d, 0xff
mov dword [rsp + 0x40], eax
mov r11d, dword [r14 + r11*4]
mov eax, dword [rsp + 0x6c]
xor r10d, r11d
movzx ebp, ah
mov rax, qword [rsp + 0x10]
mov r13d, dword [r8 + rbp*4]
movzx ebp, byte [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
xor esi, dword [rax + rbp*4]
xor r11d, r13d
mov ebp, r9d
mov eax, dword [rsp + 0x40]
xor r8d, r13d
xor esi, r11d
mov r11d, ebx
xor ebp, esi
xor r11d, r8d
mov dword [rsp + 0x6c], ebp
mov ebp, edi
mov dword [rsp + 0x50], r11d
mov r11d, r12d
xor ebp, r10d
xor r11d, eax
mov dword [rsp + 0x80], ebp
mov ebp, r10d
mov dword [rsp + 0x78], r11d
shl ebp, 8
xor ebp, ebx
mov r13d, ebp
mov ebp, r8d
shl ebp, 8
and r13d, 0xff0000
xor ebp, esi
and ebp, 0xff00
or r13d, ebp
mov ebp, r13d
mov r13d, eax
mov eax, r8d
shl r13d, 8
shr eax, 0x10
mov r11d, r13d
mov r13d, r9d
shr r13d, 0x18
xor r11d, edi
xor r13d, r12d
and r11d, 0xff000000
movzx r13d, r13b
or r11d, r13d
mov r13d, r10d
or ebp, r11d
shl r13d, 0x10
mov dword [rsp + 0x34], ebp
mov dword [rcx + 0x7c], ebp
mov ebp, r13d
xor ebp, esi
mov r13d, ebp
mov ebp, eax
mov eax, dword [rsp + 0x40]
xor ebp, r12d
and r13d, 0xff0000
mov r11d, ebp
and r11d, 0xff00
or r13d, r11d
mov ebp, r13d
mov r13d, eax
shl r13d, 0x10
shr r10d, 8
shr r8d, 8
shl eax, 0x18
mov r11d, r13d
mov r13d, r9d
xor r10d, r12d
xor r8d, edi
shr r13d, 0x10
xor r11d, ebx
and r8d, 0xff00
and r10d, 0xff0000
xor r13d, edi
and r11d, 0xff000000
shr r9d, 8
or r10d, r8d
movzx r13d, r13b
xor r9d, ebx
xor eax, esi
mov r12, qword [rsp + 0x18]
or r11d, r13d
movzx r8d, r9b
mov r9d, dword [rsp + 0x54]
and eax, 0xff000000
or ebp, r11d
mov r11d, r10d
mov r10d, dword [rsp + 0x34]
or eax, r8d
mov r8d, dword [rsp + 0x68]
xor r8d, dword [rsp + 0x3c]
or r11d, eax
mov dword [rcx + 0x80], ebp
mov r13, qword [rsp + 0x10]
mov dword [rsp + 0x98], r11d
mov dword [rcx + 0x84], r11d
xor r9d, r10d
mov ebx, dword [rsp + 0x70]
mov eax, r9d
mov r9d, dword [rsp + 0x5c]
movzx edi, ah
xor ebx, r11d
xor r9d, ebp
xor ebp, r8d
mov r8d, dword [rsp + 0xb0]
mov esi, r9d
mov r9d, dword [rsp + 0x60]
mov dword [rcx + 0x28], ebp
mov rbp, r14
xor r8d, r15d
xor r8d, r11d
xor r9d, r10d
mov dword [rcx + 0x2c], r8d
mov r8d, eax
mov dword [rcx + 0x24], r9d
movzx r9d, al
shr r8d, 0x10
shr eax, 0x18
movzx r8d, r8b
mov r10d, dword [r14 + r8*4]
mov r8d, dword [r12 + rdi*4]
mov r11d, dword [r13 + r9*4]
mov rdi, qword [rsp + 8]
movzx r9d, sil
mov r9d, dword [r13 + r9*4]
mov r14d, r10d
mov r15d, dword [rdi + rax*4]
mov eax, esi
xor r15d, r11d
xor r14d, r8d
shr eax, 0x18
mov eax, dword [rdi + rax*4]
xor r14d, r15d
mov dword [rsp + 0x3c], eax
mov eax, esi
shr esi, 0x10
movzx eax, ah
movzx esi, sil
mov r15d, dword [r12 + rax*4]
mov eax, dword [rsp + 0x3c]
xor r8d, r15d
xor r15d, dword [rbp + rsi*4]
mov esi, ebx
xor eax, r9d
shr esi, 0x10
xor r9d, r11d
movzx esi, sil
mov esi, dword [rbp + rsi*4]
xor r15d, eax
mov eax, ebx
shr eax, 0x18
mov r11d, eax
xor r10d, esi
mov eax, dword [rsp + 0x3c]
mov r11d, dword [rdi + r11*4]
movzx edi, bl
movzx ebx, bh
xor esi, dword [r12 + rbx*4]
mov edi, dword [r13 + rdi*4]
mov ebx, dword [rsp + 0x50]
xor eax, r11d
xor r11d, edi
xor r9d, edi
mov rdi, qword [rsp + 8]
xor esi, r11d
mov r11d, dword [rsp + 0x78]
movzx ebx, bh
shr r11d, 0x18
mov edi, dword [rdi + r11*4]
mov r11, qword [rsp + 0x80]
shr r11, 0x10
xor eax, edi
and r11d, 0xff
mov r11d, dword [rbp + r11*4]
mov ebp, dword [r12 + rbx*4]
mov r12d, r9d
movzx ebx, byte [rsp + 0x6c]
xor r10d, r11d
xor r11d, ebp
xor r8d, ebp
mov ebp, r15d
xor edi, dword [r13 + rbx*4]
mov ebx, esi
xor ebx, r8d
and ebx, 0xff00
xor edi, r11d
mov r11d, r9d
xor r11d, edi
movzx r11d, r11b
or ebx, r11d
mov r11d, r14d
xor r11d, eax
and r11d, 0xff000000
xor ebp, r10d
shr r12d, 0x18
and ebp, 0xff0000
xor r12d, r14d
or r11d, ebp
movzx r12d, r12b
or ebx, r11d
mov r11d, r10d
shl r11d, 8
mov dword [rcx + 0x6c], ebx
xor r11d, esi
and r11d, 0xff0000
mov ebp, r11d
mov r11d, r8d
shl r11d, 8
xor r11d, edi
and r11d, 0xff00
or r11d, ebp
mov ebp, eax
shl ebp, 8
xor ebp, r15d
and ebp, 0xff000000
or ebp, r12d
mov r12d, r10d
shl r12d, 0x10
or r11d, ebp
xor r12d, edi
mov dword [rcx + 0x70], r11d
and r12d, 0xff0000
mov r13d, r12d
mov r12d, r8d
shr r12d, 0x10
xor r12d, r14d
mov ebp, r12d
mov r12d, r13d
mov r13d, r9d
and ebp, 0xff00
shr r13d, 0x10
or r12d, ebp
mov ebp, eax
xor r13d, r15d
shl ebp, 0x10
movzx r13d, r13b
xor ebp, esi
and ebp, 0xff000000
or ebp, r13d
or r12d, ebp
shr r10d, 8
shr r8d, 8
shl eax, 0x18
shr r9d, 8
xor r10d, r14d
xor r8d, r15d
xor eax, edi
xor r9d, esi
and r10d, 0xff0000
and r8d, 0xff00
and eax, 0xff000000
movzx r9d, r9b
or r10d, r8d
mov dword [rsp + 0x40], r12d
mov dword [rcx + 0x74], r12d
or eax, r9d
or r10d, eax
cmp qword [rsp + 0x130], 4
mov eax, 1
mov dword [rsp + 0x3c], r10d
mov dword [rcx + 0x78], r10d
jbe 0x487059
mov r8d, dword [rdx]
bswap r8d
sub qword [rsp + 0x130], 4
mov r15d, r8d
add rdx, 4
jmp 0x4889b1
mov eax, dword [rcx + 0x94]
mov ebp, dword [rcx + 0x3c]
mov r11d, dword [rcx + 0x40]
mov dword [rsp + 0x8c], eax
mov eax, dword [rcx + 0x5c]
mov dword [rsp + 0x78], eax
mov eax, dword [rcx + 0xc]
mov dword [rsp + 0x48], eax
mov eax, dword [rcx + 0x4c]
mov dword [rsp + 0x4c], eax
mov eax, dword [rcx + 0x18]
mov dword [rsp + 0x44], eax
mov eax, dword [rcx + 0x58]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 0x34]
mov dword [rsp + 0x50], eax
mov eax, dword [rcx + 0x44]
mov dword [rsp + 0x34], eax
mov eax, dword [rcx + 0x48]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0x78]
mov dword [rsp + 0x3c], eax
mov eax, dword [rcx + 0x7c]
mov dword [rsp + 0x54], eax
mov eax, dword [rcx + 0x6c]
mov dword [rsp + 0x70], eax
mov eax, dword [rcx + 0x70]
mov dword [rsp + 0x5c], eax
mov eax, dword [rcx + 0x74]
mov dword [rsp + 0x40], eax
mov eax, dword [rcx + 0x1c]
mov dword [rsp + 0x60], eax
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0x64], eax
mov eax, dword [rcx + 0x60]
mov dword [rsp + 0x80], eax
mov eax, dword [rcx + 0x64]
mov dword [rsp + 0x68], eax
mov eax, dword [rcx + 0x68]
mov dword [rsp + 0x6c], eax
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x74], eax
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x88], eax
mov eax, dword [rcx + 0x54]
mov dword [rsp + 0x90], eax
lea rax, [0x006c2220]
mov qword [rsp + 0x20], rax
lea rax, [0x006c1e20]
mov qword [rsp + 0x18], rax
lea rax, [0x006c1a20]
mov qword [rsp + 0x10], rax
lea rax, [0x006c2620]
mov qword [rsp + 8], rax
mov r8d, dword [rsp + 0x34]
mov edi, dword [rsp + 0x50]
xor r11d, dword [rsp + 0x48]
mov esi, dword [rsp + 0x4c]
xor esi, dword [rsp + 0x44]
mov r14d, dword [rcx + 0x38]
mov r10d, dword [rcx + 0x24]
mov r9d, dword [rsp + 0x3c]
xor ebp, dword [rsp + 0x8c]
xor edi, r8d
mov ebx, edi
mov edi, dword [rsp + 0x38]
mov eax, r11d
xor eax, dword [rcx + 0x30]
mov dword [rsp + 0x94], esi
mov dword [rcx + 0x4c], esi
mov esi, dword [rsp + 0x54]
xor r9d, r11d
mov dword [rsp + 0x4c], r10d
mov dword [rsp + 0x8c], r11d
mov dword [rcx + 0x40], r11d
mov dword [rsp + 0x50], r9d
xor r14d, edi
mov dword [rcx + 0x78], r9d
mov dword [rsp + 0x58], ebp
xor esi, r8d
mov r8d, eax
mov dword [rcx + 0x94], ebp
xor edi, dword [rcx + 0x80]
shr r8d, 0x10
mov dword [rsp + 0x98], esi
mov dword [rcx + 0x7c], esi
movzx r8d, r8b
mov r10, qword [rsp + 0x20]
mov r9, qword [rsp + 0x18]
mov r11, qword [rsp + 0x10]
mov dword [rsp + 0x9c], edi
mov dword [rcx + 0x80], edi
movzx edi, ah
mov ebp, dword [r10 + r8*4]
movzx r8d, al
mov edi, dword [r9 + rdi*4]
shr eax, 0x18
mov r12d, dword [r11 + r8*4]
mov r13, qword [rsp + 8]
mov dword [rsp + 0x3c], edi
mov esi, dword [r13 + rax*4]
mov eax, ebp
xor eax, edi
movzx edi, bh
mov r8d, dword [r9 + rdi*4]
movzx r9d, bl
mov rdi, r10
mov r9d, dword [r11 + r9*4]
xor esi, r12d
xor esi, eax
mov eax, ebx
shr ebx, 0x10
movzx ebx, bl
shr eax, 0x18
mov r10d, dword [r10 + rbx*4]
mov eax, dword [r13 + rax*4]
xor r10d, r8d
mov ebx, r10d
mov r10d, eax
xor r10d, r9d
xor ebx, r10d
mov r10d, r14d
mov dword [rsp + 0x2c], ebx
mov rbx, qword [rsp + 0x10]
shr r10d, 0x18
mov r11d, dword [r13 + r10*4]
movzx r13d, r14b
mov r10d, r14d
shr r10d, 0x10
movzx r10d, r10b
mov r13d, dword [rbx + r13*4]
mov ebx, r14d
mov r10d, dword [rdi + r10*4]
movzx edi, bh
mov rbx, qword [rsp + 0x18]
xor eax, r11d
mov r14, qword [rsp + 0x20]
xor r9d, r13d
xor r11d, r13d
mov r13, qword [rsp + 8]
xor r12d, r9d
mov r9d, r15d
mov edi, dword [rbx + rdi*4]
mov ebx, r15d
shr r9d, 0x18
mov r9d, dword [r13 + r9*4]
mov r13d, r15d
shr r13d, 0x10
xor edi, r10d
movzx r13d, r13b
xor r11d, edi
movzx edi, bh
mov rbx, qword [rsp + 0x18]
mov r13d, dword [r14 + r13*4]
xor eax, r9d
xor r10d, r13d
xor ebp, r10d
mov r10d, dword [rbx + rdi*4]
mov edi, dword [rsp + 0x3c]
mov rbx, qword [rsp + 0x10]
xor r8d, r10d
xor r13d, r10d
xor edi, r8d
movzx r8d, r15b
xor r9d, dword [rbx + r8*4]
mov ebx, dword [rsp + 0x2c]
mov r8d, r12d
mov r10d, ebx
xor r13d, r9d
mov r9d, r11d
xor r10d, ebp
xor r9d, edi
mov dword [rsp + 0xc0], r10d
xor r8d, r13d
mov dword [rsp + 0xb0], r9d
mov r9d, esi
mov dword [rsp + 0xb8], r8d
xor r9d, eax
mov dword [rsp + 0xbc], r9d
mov r9d, ebp
shl r9d, 8
xor r9d, r11d
and r9d, 0xff0000
mov r10d, r9d
mov r9d, edi
shl r9d, 8
xor r9d, r13d
and r9d, 0xff00
mov r8d, r9d
mov r9d, r10d
mov r10d, r12d
or r9d, r8d
mov r8d, eax
shr r10d, 0x18
shl r8d, 8
xor r10d, esi
xor r8d, ebx
movzx r10d, r10b
and r8d, 0xff000000
or r8d, r10d
or r9d, r8d
mov ebx, r9d
mov dword [rsp + 0xa0], r9d
mov dword [rcx + 0x34], r9d
mov r9d, ebp
shl r9d, 0x10
xor r9d, r13d
and r9d, 0xff0000
mov r10d, r9d
mov r9d, edi
shr r9d, 0x10
xor r9d, esi
and r9d, 0xff00
mov r8d, r9d
mov r9d, r10d
mov r10d, r12d
or r9d, r8d
mov r8d, eax
shl r8d, 0x10
xor r8d, r11d
and r8d, 0xff000000
shr r10d, 0x10
xor r10d, dword [rsp + 0x2c]
shr edi, 8
shr r12d, 8
shr ebp, 8
shl eax, 0x18
xor r11d, r12d
xor ebp, esi
xor eax, r13d
mov r13, r14
movzx r12d, r11b
and ebp, 0xff0000
and eax, 0xff000000
or eax, r12d
movzx r10d, r10b
or r8d, r10d
or r9d, r8d
mov r8d, ebx
mov dword [rsp + 0xa8], r9d
mov dword [rcx + 0x38], r9d
xor edi, dword [rsp + 0x2c]
mov r11d, dword [rcx + 0x2c]
mov r10d, r9d
mov esi, dword [rcx + 0x28]
mov r12, qword [rsp + 0x10]
and edi, 0xff00
or ebp, edi
xor esi, r10d
or ebp, eax
mov eax, dword [rsp + 0x4c]
xor r11d, ebp
mov r9d, ebp
mov dword [rsp + 0xac], ebp
mov dword [rcx + 0x3c], ebp
mov ebp, dword [rsp + 0x70]
xor eax, ebx
mov ebx, r11d
movzx edi, ah
xor ebp, r8d
mov dword [rsp + 0x54], ebp
mov dword [rcx + 0x6c], ebp
mov ebp, dword [rsp + 0x5c]
xor ebp, r10d
mov dword [rsp + 0x5c], ebp
mov dword [rcx + 0x70], ebp
mov ebp, dword [rsp + 0x40]
xor ebp, r9d
mov dword [rsp + 0x70], ebp
mov dword [rcx + 0x74], ebp
mov ebp, eax
shr ebp, 0x10
movzx r8d, bpl
mov r9d, dword [r14 + r8*4]
mov r14, qword [rsp + 0x18]
movzx r8d, al
shr eax, 0x18
mov r8d, dword [r12 + r8*4]
mov r10d, dword [r14 + rdi*4]
mov rdi, qword [rsp + 8]
mov ebp, dword [rdi + rax*4]
xor ebp, r8d
mov r11d, ebp
mov ebp, r9d
xor ebp, r10d
xor r11d, ebp
mov ebp, esi
shr ebp, 0x18
mov eax, ebp
movzx ebp, sil
mov eax, dword [rdi + rax*4]
mov dword [rsp + 0x2c], eax
mov eax, esi
shr esi, 0x10
movzx edi, ah
movzx esi, sil
mov rax, r14
mov edi, dword [r14 + rdi*4]
mov r14d, dword [r12 + rbp*4]
mov ebp, dword [r13 + rsi*4]
mov esi, dword [rsp + 0x2c]
mov r12, qword [rsp + 8]
xor ebp, edi
xor esi, r14d
xor r8d, r14d
xor r10d, edi
xor esi, ebp
mov ebp, ebx
shr ebp, 0x18
mov r12d, dword [r12 + rbp*4]
mov ebp, ebx
shr ebp, 0x10
movzx ebp, bpl
mov ebp, dword [r13 + rbp*4]
movzx r13d, bl
movzx ebx, bh
mov dword [rsp + 0x3c], r12d
mov r12, qword [rsp + 0x10]
mov r14, qword [rsp + 8]
movzx edi, byte [rsp + 0xb8]
mov r13d, dword [r12 + r13*4]
mov r12d, dword [rax + rbx*4]
mov eax, dword [rsp + 0x2c]
xor r12d, ebp
mov ebx, r12d
mov r12d, dword [rsp + 0x3c]
xor r12d, r13d
xor r13d, r8d
mov r8d, dword [rsp + 0xbc]
xor ebx, r12d
mov r12d, dword [rsp + 0x3c]
shr r8d, 0x18
mov r8d, dword [r14 + r8*4]
mov r14, qword [rsp + 0xc0]
xor eax, r8d
shr r14, 0x10
xor r12d, eax
mov rax, r14
mov r14, qword [rsp + 0x20]
and eax, 0xff
mov eax, dword [r14 + rax*4]
mov r14, qword [rsp + 0x10]
mov dword [rsp + 0x2c], eax
xor r9d, eax
mov eax, dword [rsp + 0xb0]
xor r8d, dword [r14 + rdi*4]
xor ebp, r9d
mov edi, ebp
movzx eax, ah
mov r9, rax
mov rax, qword [rsp + 0x18]
mov r9d, dword [rax + r9*4]
mov eax, dword [rsp + 0x2c]
xor eax, r9d
xor r10d, r9d
mov r9d, ebx
xor eax, r8d
mov r8d, r13d
xor r9d, r10d
xor r8d, eax
mov dword [rsp + 0xbc], r9d
mov r9d, r11d
mov r14d, r8d
mov r8d, esi
xor r9d, r12d
xor r8d, ebp
mov dword [rsp + 0x2c], r9d
mov r9d, r10d
mov dword [rsp + 0xc0], r8d
mov r8d, r13d
shl r9d, 8
shr r8d, 0x18
xor r9d, eax
xor r8d, r11d
and r9d, 0xff00
movzx r8d, r8b
or r9d, r8d
mov r8d, r12d
shl r8d, 8
shl edi, 8
xor r8d, esi
xor edi, ebx
and edi, 0xff0000
and r8d, 0xff000000
or r8d, edi
mov edi, ebp
shr ebp, 8
or r9d, r8d
mov r8d, r10d
shl edi, 0x10
shr r10d, 8
shr r8d, 0x10
mov dword [rsp + 0x3c], r9d
mov dword [rcx + 0x28], r9d
xor edi, eax
mov r9d, r8d
mov r8d, r13d
and edi, 0xff0000
xor r10d, esi
shr r8d, 0x10
xor r9d, r11d
and r10d, 0xff00
xor r8d, esi
and r9d, 0xff00
mov esi, dword [rsp + 0x3c]
movzx r8d, r8b
or r9d, r8d
mov r8d, r12d
shl r12d, 0x18
shl r8d, 0x10
xor r12d, eax
xor r8d, ebx
and r12d, 0xff000000
and r8d, 0xff000000
or r8d, edi
mov edi, r9d
or edi, r8d
mov r8d, r13d
shr r8d, 8
mov dword [rsp + 0xb0], edi
mov dword [rcx + 0x2c], edi
xor ebx, r8d
movzx r8d, bl
or r10d, r8d
xor ebp, r11d
mov r11d, dword [rsp + 0x44]
and ebp, 0xff0000
or r12d, ebp
or r10d, r12d
xor r11d, esi
mov dword [rsp + 0xb8], r10d
mov dword [rcx + 0x30], r10d
mov r12d, r10d
mov eax, r11d
mov r11d, dword [rsp + 0x60]
mov ebx, dword [rsp + 0x64]
movzx r9d, al
mov rbp, qword [rsp + 0x20]
mov r13, qword [rsp + 0x18]
xor ebx, r10d
mov r10d, dword [rsp + 0x80]
xor r11d, edi
xor r10d, esi
mov esi, dword [rsp + 0x68]
mov dword [rcx + 0x60], r10d
xor esi, edi
movzx edi, ah
mov dword [rsp + 0x44], esi
mov dword [rcx + 0x64], esi
mov esi, dword [rsp + 0x6c]
xor esi, r12d
mov dword [rcx + 0x68], esi
mov esi, eax
shr eax, 0x18
shr esi, 0x10
movzx r8d, sil
mov rsi, qword [rsp + 0x10]
mov r10d, dword [rbp + r8*4]
mov r8d, dword [r13 + rdi*4]
mov rdi, qword [rsp + 8]
mov esi, dword [rsi + r9*4]
movzx r9d, r11b
mov r12d, dword [rdi + rax*4]
mov eax, r10d
xor eax, r8d
xor r12d, esi
xor r12d, eax
mov eax, r11d
shr eax, 0x18
mov eax, dword [rdi + rax*4]
mov dword [rsp + 0x20], eax
mov eax, r11d
shr r11d, 0x10
movzx edi, ah
mov eax, dword [rsp + 0x20]
movzx r11d, r11b
mov edi, dword [r13 + rdi*4]
mov r13, rbp
xor r8d, edi
xor edi, dword [rbp + r11*4]
mov r11d, eax
mov dword [rsp + 0x40], r8d
mov r8, qword [rsp + 0x10]
mov r9d, dword [r8 + r9*4]
xor r11d, r9d
xor r9d, esi
mov rsi, qword [rsp + 8]
xor edi, r11d
mov r11d, ebx
shr r11d, 0x18
mov r11d, dword [rsi + r11*4]
mov esi, ebx
shr esi, 0x10
movzx esi, sil
mov ebp, dword [rbp + rsi*4]
movzx esi, bl
movzx ebx, bh
mov esi, dword [r8 + rsi*4]
mov r8, qword [rsp + 0x18]
xor eax, r11d
xor r10d, ebp
xor r11d, esi
xor ebp, dword [r8 + rbx*4]
xor r9d, esi
mov rsi, qword [rsp + 8]
mov ebx, r11d
mov r11d, dword [rsp + 0x2c]
shr r11d, 0x18
xor ebx, ebp
mov esi, dword [rsi + r11*4]
mov r11, qword [rsp + 0xc0]
mov qword [rsp + 0x20], r13
xor eax, esi
shr r11, 0x10
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0xbc]
and r11d, 0xff
mov r11d, dword [r13 + r11*4]
movzx ebp, ah
mov eax, dword [rsp + 0x2c]
mov r13d, dword [r8 + rbp*4]
movzx ebp, r14b
mov r14, qword [rsp + 0x10]
xor r10d, r11d
mov r8d, dword [rsp + 0x40]
xor esi, dword [r14 + rbp*4]
xor r11d, r13d
mov ebp, r9d
xor r8d, r13d
xor esi, r11d
mov r11d, ebx
xor ebp, esi
xor r11d, r8d
mov dword [rsp + 0x68], ebp
mov ebp, edi
mov dword [rsp + 0x64], r11d
mov r11d, r12d
xor ebp, r10d
xor r11d, eax
shl eax, 8
mov dword [rsp + 0x80], ebp
mov ebp, r10d
mov dword [rsp + 0x6c], r11d
shl ebp, 8
xor ebp, ebx
and ebp, 0xff0000
mov r13d, ebp
mov ebp, r8d
shl ebp, 8
xor ebp, esi
and ebp, 0xff00
mov r11d, ebp
mov ebp, r13d
or ebp, r11d
mov r11d, eax
mov eax, r9d
shr eax, 0x18
xor r11d, edi
mov r13d, eax
and r11d, 0xff000000
mov eax, r10d
xor r13d, r12d
shl eax, 0x10
movzx r13d, r13b
or r11d, r13d
or ebp, r11d
mov dword [rsp + 0x40], ebp
mov dword [rcx + 0x1c], ebp
mov ebp, eax
xor ebp, esi
mov eax, ebp
and eax, 0xff0000
mov r13d, eax
mov eax, r8d
shr eax, 0x10
mov ebp, eax
xor ebp, r12d
mov eax, ebp
and eax, 0xff00
mov r11d, eax
mov eax, r13d
or eax, r11d
mov ebp, eax
mov eax, dword [rsp + 0x2c]
shl eax, 0x10
shr r10d, 8
shr r8d, 8
mov r11d, eax
mov eax, r9d
xor r10d, r12d
xor r8d, edi
shr eax, 0x10
shr r9d, 8
and r8d, 0xff00
mov r12d, dword [rsp + 0x88]
mov r13d, eax
mov eax, dword [rsp + 0x2c]
xor r9d, ebx
and r10d, 0xff0000
xor r11d, ebx
xor r13d, edi
or r10d, r8d
movzx r8d, r9b
and r11d, 0xff000000
movzx r13d, r13b
mov ebx, dword [rsp + 0x48]
or r11d, r13d
shl eax, 0x18
or ebp, r11d
mov r11d, dword [rsp + 0x40]
xor eax, esi
mov dword [rcx + 0x20], ebp
and eax, 0xff000000
or eax, r8d
or r10d, eax
xor ebx, r11d
xor r12d, r10d
mov r9d, r10d
mov dword [rsp + 0x60], r10d
mov dword [rcx + 0x24], r10d
mov esi, ebx
mov r10d, dword [rsp + 0x90]
mov ebx, dword [rsp + 0x74]
mov eax, esi
shr eax, 0x10
movzx eax, al
xor r10d, r11d
xor ebx, ebp
mov dword [rcx + 0x54], r10d
mov r10d, dword [rsp + 0x4c]
xor r10d, dword [rsp + 0x30]
xor ebp, r10d
mov r10d, dword [rsp + 0x78]
mov dword [rcx + 0x58], ebp
mov rbp, r14
xor r10d, r15d
mov r8d, r10d
xor r8d, r9d
mov dword [rcx + 0x5c], r8d
mov r15, qword [rsp + 0x20]
mov r13, qword [rsp + 0x18]
movzx r8d, sil
mov r11d, dword [r14 + r8*4]
mov r10d, dword [r15 + rax*4]
mov eax, esi
shr esi, 0x18
movzx edi, ah
mov rax, qword [rsp + 8]
mov r9d, dword [r13 + rdi*4]
movzx edi, bh
mov r8d, r10d
mov dword [rsp + 0x10], r10d
mov r14d, dword [rax + rsi*4]
mov esi, dword [r13 + rdi*4]
mov edi, r12d
xor r14d, r11d
xor r8d, r9d
shr edi, 0x18
xor r14d, r8d
mov r8d, ebx
xor r9d, esi
shr r8d, 0x18
mov r10d, dword [rax + r8*4]
movzx r8d, bl
shr ebx, 0x10
movzx ebx, bl
mov r8d, dword [rbp + r8*4]
xor esi, dword [r15 + rbx*4]
mov ebx, esi
mov esi, r10d
xor esi, r8d
xor r8d, r11d
mov r11d, edi
mov edi, r12d
shr edi, 0x10
xor ebx, esi
mov r11d, dword [rax + r11*4]
mov eax, dword [rsp + 0x10]
movzx esi, dil
movzx edi, r12b
mov qword [rsp + 0x10], rbp
mov esi, dword [r15 + rsi*4]
mov edi, dword [rbp + rdi*4]
xor r10d, r11d
xor eax, esi
mov dword [rsp + 0x2c], eax
mov eax, r12d
xor r11d, edi
xor r8d, edi
movzx ebp, ah
mov rdi, qword [rsp + 8]
xor esi, dword [r13 + rbp*4]
mov eax, dword [rsp + 0x64]
movzx ebp, ah
mov rax, qword [rsp + 0x10]
xor esi, r11d
mov r11d, dword [rsp + 0x6c]
mov r12d, dword [r13 + rbp*4]
movzx ebp, byte [rsp + 0x68]
shr r11d, 0x18
xor r9d, r12d
mov edi, dword [rdi + r11*4]
mov r11, qword [rsp + 0x80]
shr r11, 0x10
xor r10d, edi
xor edi, dword [rax + rbp*4]
mov ebp, esi
and r11d, 0xff
xor ebp, r9d
mov r11d, dword [r15 + r11*4]
mov r15d, dword [rsp + 0x2c]
and ebp, 0xff00
xor r15d, r11d
xor r11d, r12d
mov r12d, ebx
xor edi, r11d
mov r11d, r8d
mov eax, r15d
xor r11d, edi
movzx r11d, r11b
or ebp, r11d
mov r11d, r14d
xor r11d, r10d
and r11d, 0xff000000
xor r12d, r15d
shl eax, 8
and r12d, 0xff0000
mov r13d, eax
mov eax, r15d
or r11d, r12d
xor r13d, esi
shl eax, 0x10
or ebp, r11d
mov r11d, r9d
mov r12d, r13d
shl r11d, 8
and r12d, 0xff0000
mov dword [rcx + 0xc], ebp
xor r11d, edi
and r11d, 0xff00
or r12d, r11d
mov r11d, r8d
mov r13d, r12d
mov r12d, r10d
shr r11d, 0x18
shl r12d, 8
xor r11d, r14d
xor r12d, ebx
movzx r11d, r11b
and r12d, 0xff000000
or r11d, r12d
or r11d, r13d
mov r13d, eax
xor r13d, edi
mov dword [rcx + 0x10], r11d
mov dword [rsp + 0x2c], r15d
mov eax, dword [rsp + 0x2c]
mov r15d, r13d
mov r13d, r9d
shr r13d, 0x10
and r15d, 0xff0000
xor r13d, r14d
mov r12d, r13d
and r12d, 0xff00
or r15d, r12d
mov r12d, r10d
mov r13d, r15d
mov r15d, r8d
shl r12d, 0x10
shr r15d, 0x10
xor r12d, esi
xor r15d, ebx
and r12d, 0xff000000
movzx r15d, r15b
or r12d, r15d
or r13d, r12d
shl r10d, 0x18
shr r8d, 8
shr eax, 8
shr r9d, 8
xor r10d, edi
xor r8d, esi
xor eax, r14d
xor r9d, ebx
and r10d, 0xff000000
and eax, 0xff0000
movzx r8d, r8b
and r9d, 0xff00
or r10d, r8d
mov dword [rsp + 0x30], r13d
mov dword [rcx + 0x14], r13d
or eax, r9d
or r10d, eax
xor eax, eax
cmp qword [rsp + 0x130], 4
mov dword [rsp + 0x2c], r10d
mov dword [rcx + 0x18], r10d
jbe 0x487059
mov r8d, dword [rdx]
bswap r8d
sub qword [rsp + 0x130], 4
mov r15d, r8d
add rdx, 4
jmp 0x4871a2
mov eax, dword [rcx + 0x34]
mov ebx, dword [rcx + 0x6c]
mov r11d, dword [rcx + 0x70]
mov dword [rsp + 0x44], eax
mov eax, dword [rcx + 0x8c]
mov dword [rsp + 0x94], eax
mov eax, dword [rcx + 0x3c]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0x7c]
mov dword [rsp + 0x34], eax
mov eax, dword [rcx + 0x48]
mov dword [rsp + 0x4c], eax
mov eax, dword [rcx + 0x88]
mov dword [rsp + 0x58], eax
mov eax, dword [rcx + 0x64]
mov dword [rsp + 0x48], eax
mov eax, dword [rcx + 0x74]
mov dword [rsp + 0x40], eax
mov eax, dword [rcx + 0x78]
mov dword [rsp + 0x3c], eax
mov eax, dword [rcx + 0x18]
mov dword [rsp + 0x2c], eax
mov eax, dword [rcx + 0x1c]
mov dword [rsp + 0x64], eax
mov eax, dword [rcx + 0xc]
mov dword [rsp + 0x74], eax
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x88], eax
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 0x4c]
mov dword [rsp + 0x90], eax
mov eax, dword [rcx + 0x50]
mov dword [rsp + 0xbc], eax
mov eax, dword [rcx + 0x90]
mov dword [rsp + 0x8c], eax
mov eax, dword [rcx + 0x94]
mov dword [rsp + 0xc0], eax
mov eax, dword [rcx + 0x98]
mov dword [rsp + 0xc8], eax
mov eax, dword [rcx + 0x40]
mov dword [rsp + 0xac], eax
mov eax, dword [rcx + 0x44]
mov dword [rsp + 0xcc], eax
mov eax, dword [rcx + 0x84]
mov dword [rsp + 0x98], eax
lea rax, [0x006c2220]
mov qword [rsp + 0x20], rax
lea rax, [0x006c1e20]
mov qword [rsp + 0x18], rax
lea rax, [0x006c1a20]
mov qword [rsp + 0x10], rax
lea rax, [0x006c2620]
mov qword [rsp + 8], rax
xor ebx, dword [rsp + 0x44]
mov r9d, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x48]
xor r11d, dword [rsp + 0x38]
mov edi, dword [rcx + 0x54]
mov esi, dword [rsp + 0x34]
xor esi, dword [rsp + 0x4c]
mov r10d, dword [rsp + 0x2c]
mov r12, qword [rsp + 0x10]
xor r14d, r9d
mov dword [rsp + 0x50], ebx
mov dword [rcx + 0x34], ebx
mov dword [rsp + 0x34], edi
mov ebx, r14d
mov edi, dword [rsp + 0x3c]
mov eax, r11d
mov dword [rsp + 0x5c], r11d
mov dword [rcx + 0x70], r11d
mov dword [rsp + 0x54], esi
mov dword [rcx + 0x7c], esi
xor r10d, r11d
mov dword [rsp + 0x44], r10d
mov dword [rcx + 0x18], r10d
mov r14d, dword [rcx + 0x68]
xor eax, dword [rcx + 0x60]
mov esi, dword [rsp + 0x64]
mov r10, qword [rsp + 0x20]
xor r14d, edi
xor edi, dword [rcx + 0x20]
xor esi, r9d
mov r8d, eax
mov r9, qword [rsp + 0x18]
shr r8d, 0x10
mov dword [rsp + 0x60], esi
mov dword [rcx + 0x1c], esi
movzx r8d, r8b
mov ebp, dword [r10 + r8*4]
movzx r8d, al
mov dword [rsp + 0x64], edi
mov dword [rcx + 0x20], edi
movzx edi, ah
mov r13d, dword [r12 + r8*4]
shr eax, 0x18
mov edi, dword [r9 + rdi*4]
mov r8, qword [rsp + 8]
mov dword [rsp + 0x48], ebp
mov esi, dword [r8 + rax*4]
mov eax, ebp
movzx ebp, bh
xor eax, edi
xor esi, r13d
xor esi, eax
mov eax, ebx
shr eax, 0x18
mov eax, dword [r8 + rax*4]
mov r8d, dword [r9 + rbp*4]
movzx r9d, bl
shr ebx, 0x10
movzx ebx, bl
mov rbp, r10
mov r9d, dword [r12 + r9*4]
mov r10d, dword [r10 + rbx*4]
xor r10d, r8d
mov ebx, r10d
mov r10d, eax
xor r10d, r9d
xor ebx, r10d
mov r10d, r14d
mov dword [rsp + 0x2c], ebx
mov rbx, qword [rsp + 8]
shr r10d, 0x18
mov r11d, dword [rbx + r10*4]
mov r10d, r14d
mov ebx, r14d
shr r10d, 0x10
movzx ebx, bh
movzx r10d, r10b
mov r10d, dword [rbp + r10*4]
movzx ebp, r14b
mov r14, rbx
mov rbx, qword [rsp + 0x18]
mov ebp, dword [r12 + rbp*4]
xor eax, r11d
mov r12d, dword [rbx + r14*4]
mov r14, qword [rsp + 8]
mov ebx, r15d
xor r9d, ebp
xor r11d, ebp
movzx ebx, bh
xor r13d, r9d
mov r9d, r15d
shr r9d, 0x18
mov r9d, dword [r14 + r9*4]
xor r12d, r10d
mov r14, qword [rsp + 0x20]
xor r11d, r12d
mov r12d, r15d
shr r12d, 0x10
movzx ebp, r12b
mov r12d, dword [rsp + 0x48]
mov ebp, dword [r14 + rbp*4]
xor eax, r9d
xor r10d, ebp
xor r12d, r10d
mov r10, rbx
mov rbx, qword [rsp + 0x18]
mov r10d, dword [rbx + r10*4]
mov rbx, qword [rsp + 0x10]
xor r8d, r10d
xor ebp, r10d
mov r10d, r11d
xor edi, r8d
movzx r8d, r15b
xor r9d, dword [rbx + r8*4]
mov ebx, dword [rsp + 0x2c]
xor r10d, edi
mov dword [rsp + 0x78], r10d
mov r10d, esi
xor r10d, eax
mov dword [rsp + 0x9c], r10d
xor ebp, r9d
mov r9d, r13d
xor r9d, ebp
mov dword [rsp + 0x80], r9d
mov r9d, ebx
xor r9d, r12d
mov dword [rsp + 0xa0], r9d
mov r9d, r12d
shl r9d, 8
xor r9d, r11d
mov r10d, r9d
mov r9d, edi
shl r9d, 8
and r10d, 0xff0000
xor r9d, ebp
mov r8d, r9d
and r8d, 0xff00
or r10d, r8d
mov r8d, eax
mov r9d, r10d
mov r10d, r13d
shl r8d, 8
shr r10d, 0x18
xor r8d, ebx
xor r10d, esi
and r8d, 0xff000000
movzx r10d, r10b
or r8d, r10d
or r9d, r8d
mov ebx, r9d
mov dword [rsp + 0x68], r9d
mov dword [rcx + 0x64], r9d
mov r9d, r12d
shl r9d, 0x10
xor r9d, ebp
mov r10d, r9d
mov r9d, edi
shr r9d, 0x10
and r10d, 0xff0000
xor r9d, esi
mov r8d, r9d
and r8d, 0xff00
or r10d, r8d
mov r8d, eax
shl r8d, 0x10
mov r9d, r10d
mov r10d, r13d
xor r8d, r11d
and r8d, 0xff000000
shr r10d, 0x10
xor r10d, dword [rsp + 0x2c]
shr edi, 8
shr r12d, 8
shr r13d, 8
shl eax, 0x18
xor r12d, esi
xor eax, ebp
xor r11d, r13d
movzx r13d, r11b
and r12d, 0xff0000
and eax, 0xff000000
or eax, r13d
movzx r10d, r10b
or r8d, r10d
or r9d, r8d
mov r8d, ebx
mov dword [rsp + 0x6c], r9d
mov dword [rcx + 0x68], r9d
xor edi, dword [rsp + 0x2c]
mov esi, dword [rcx + 0x58]
mov r10d, r9d
mov r13, qword [rsp + 0x10]
xor esi, r9d
mov r9d, dword [rcx + 0x5c]
and edi, 0xff00
or r12d, edi
or r12d, eax
mov eax, dword [rsp + 0x34]
xor r9d, r12d
mov dword [rsp + 0x70], r12d
mov dword [rcx + 0x6c], r12d
xor eax, ebx
mov ebx, r9d
mov r9d, dword [rsp + 0x74]
movzx edi, ah
xor r9d, r8d
mov r8d, eax
mov dword [rsp + 0x48], r9d
mov dword [rcx + 0xc], r9d
mov r9d, dword [rsp + 0x88]
shr r8d, 0x10
movzx r8d, r8b
xor r9d, r10d
mov dword [rsp + 0x74], r9d
mov dword [rcx + 0x10], r9d
mov r9d, dword [rsp + 0x30]
xor r9d, r12d
mov r12, r14
mov dword [rsp + 0x88], r9d
mov dword [rcx + 0x14], r9d
mov r9d, dword [r14 + r8*4]
movzx r8d, al
shr eax, 0x18
mov r8d, dword [r13 + r8*4]
mov r14, qword [rsp + 0x18]
mov dword [rsp + 0x2c], r9d
mov r9, qword [rsp + 8]
mov r10d, dword [r14 + rdi*4]
mov ebp, dword [r9 + rax*4]
xor ebp, r8d
mov r11d, ebp
mov ebp, dword [rsp + 0x2c]
xor ebp, r10d
xor r11d, ebp
mov ebp, esi
shr ebp, 0x18
mov eax, ebp
movzx ebp, sil
mov eax, dword [r9 + rax*4]
mov dword [rsp + 0x30], eax
mov eax, esi
shr esi, 0x10
movzx edi, ah
movzx esi, sil
mov rax, r14
mov edi, dword [r14 + rdi*4]
mov r14d, dword [r13 + rbp*4]
mov r13, r12
mov ebp, dword [r12 + rsi*4]
mov esi, dword [rsp + 0x30]
xor ebp, edi
xor esi, r14d
xor r8d, r14d
xor r10d, edi
xor esi, ebp
mov ebp, ebx
shr ebp, 0x18
mov r12d, dword [r9 + rbp*4]
mov ebp, ebx
shr ebp, 0x10
movzx ebp, bpl
mov ebp, dword [r13 + rbp*4]
mov r9, qword [rsp + 0x10]
movzx r13d, bl
movzx ebx, bh
mov r14, qword [rsp + 8]
movzx edi, byte [rsp + 0x80]
mov r13d, dword [r9 + r13*4]
mov r9d, dword [rax + rbx*4]
mov eax, r12d
xor eax, r13d
xor r13d, r8d
mov r8d, dword [rsp + 0x9c]
xor r9d, ebp
mov ebx, r9d
mov r9d, dword [rsp + 0x2c]
xor ebx, eax
mov eax, dword [rsp + 0x30]
shr r8d, 0x18
mov r8d, dword [r14 + r8*4]
mov r14, qword [rsp + 0xa0]
xor eax, r8d
shr r14, 0x10
xor r12d, eax
mov rax, r14
mov r14, qword [rsp + 0x20]
and eax, 0xff
mov eax, dword [r14 + rax*4]
mov r14, qword [rsp + 0x10]
mov dword [rsp + 0x2c], eax
xor r9d, eax
mov eax, dword [rsp + 0x78]
xor r8d, dword [r14 + rdi*4]
xor ebp, r9d
mov edi, esi
mov r14d, r13d
xor edi, ebp
mov dword [rsp + 0xa0], edi
mov edi, ebp
movzx eax, ah
mov r9, rax
mov rax, qword [rsp + 0x18]
mov r9d, dword [rax + r9*4]
mov eax, dword [rsp + 0x2c]
xor eax, r9d
xor r10d, r9d
xor eax, r8d
mov r8d, ebx
mov r9d, r10d
xor r8d, r10d
shl r9d, 8
xor r14d, eax
mov dword [rsp + 0x9c], r8d
mov r8d, r11d
xor r9d, eax
xor r8d, r12d
and r9d, 0xff00
mov dword [rsp + 0x2c], r8d
mov r8d, r13d
shr r8d, 0x18
xor r8d, r11d
movzx r8d, r8b
or r9d, r8d
mov r8d, r12d
shl r8d, 8
shl edi, 8
xor r8d, esi
xor edi, ebx
and edi, 0xff0000
and r8d, 0xff000000
or r8d, edi
mov edi, r9d
mov r9d, r10d
shr r10d, 8
or edi, r8d
mov r8d, r13d
shr r9d, 0x10
xor r10d, esi
shr r8d, 0x10
xor r9d, r11d
mov dword [rsp + 0x30], edi
mov dword [rcx + 0x58], edi
xor r8d, esi
and r9d, 0xff00
mov edi, ebp
mov esi, r13d
movzx r8d, r8b
shl edi, 0x10
shr esi, 8
and r10d, 0xff00
or r9d, r8d
mov r8d, r12d
xor edi, eax
shl r12d, 0x18
shl r8d, 0x10
and edi, 0xff0000
xor r12d, eax
shr ebp, 8
xor r8d, ebx
xor ebx, esi
and r12d, 0xff000000
mov esi, dword [rsp + 0x30]
and r8d, 0xff000000
or r8d, edi
or r9d, r8d
movzx r8d, bl
or r10d, r8d
xor ebp, r11d
mov r11d, dword [rsp + 0x4c]
mov dword [rsp + 0x78], r9d
and ebp, 0xff0000
mov dword [rcx + 0x5c], r9d
or r12d, ebp
or r10d, r12d
mov r12d, dword [rsp + 0xbc]
xor r11d, esi
mov dword [rsp + 0x80], r10d
mov dword [rcx + 0x60], r10d
mov eax, r11d
mov r11d, dword [rsp + 0x90]
movzx edi, ah
xor r12d, r10d
mov ebx, r12d
mov r12d, dword [rsp + 0x8c]
mov rbp, qword [rsp + 0x20]
mov r13, qword [rsp + 0x18]
xor r11d, r9d
xor r12d, esi
mov esi, dword [rsp + 0xc0]
mov dword [rcx + 0x90], r12d
xor esi, r9d
movzx r9d, al
mov dword [rsp + 0x8c], esi
mov dword [rcx + 0x94], esi
mov esi, dword [rsp + 0xc8]
xor esi, r10d
mov dword [rcx + 0x98], esi
mov esi, eax
shr eax, 0x18
shr esi, 0x10
movzx r8d, sil
mov rsi, qword [rsp + 0x10]
mov r10d, dword [rbp + r8*4]
mov r8d, dword [r13 + rdi*4]
mov esi, dword [rsi + r9*4]
mov r9, qword [rsp + 8]
mov r12d, dword [r9 + rax*4]
mov eax, r10d
xor eax, r8d
xor r12d, esi
xor r12d, eax
mov eax, r11d
shr eax, 0x18
mov eax, dword [r9 + rax*4]
movzx r9d, r11b
mov dword [rsp + 0x20], eax
mov eax, r11d
shr r11d, 0x10
movzx edi, ah
mov eax, dword [rsp + 0x20]
movzx r11d, r11b
mov edi, dword [r13 + rdi*4]
mov r13, rbp
xor r8d, edi
xor edi, dword [rbp + r11*4]
mov r11d, eax
mov dword [rsp + 0x4c], r8d
mov r8, qword [rsp + 0x10]
mov r9d, dword [r8 + r9*4]
xor r11d, r9d
xor r9d, esi
mov rsi, qword [rsp + 8]
xor edi, r11d
mov r11d, ebx
shr r11d, 0x18
mov r11d, dword [rsi + r11*4]
mov esi, ebx
shr esi, 0x10
movzx esi, sil
mov ebp, dword [rbp + rsi*4]
movzx esi, bl
movzx ebx, bh
mov esi, dword [r8 + rsi*4]
mov r8, qword [rsp + 0x18]
xor eax, r11d
xor r10d, ebp
xor ebp, dword [r8 + rbx*4]
xor r11d, esi
xor r9d, esi
mov ebx, r11d
mov r11d, dword [rsp + 0x2c]
xor ebx, ebp
mov rbp, qword [rsp + 8]
shr r11d, 0x18
mov esi, dword [rbp + r11*4]
xor eax, esi
mov dword [rsp + 0x2c], eax
mov r11, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x9c]
mov qword [rsp + 0x20], r13
shr r11, 0x10
movzx ebp, ah
mov eax, edi
and r11d, 0xff
mov r11d, dword [r13 + r11*4]
mov r13d, dword [r8 + rbp*4]
movzx ebp, r14b
mov r14, qword [rsp + 0x10]
mov r8d, dword [rsp + 0x4c]
xor r10d, r11d
xor r11d, r13d
xor esi, dword [r14 + rbp*4]
xor r8d, r13d
mov ebp, r10d
xor eax, r10d
shl ebp, 8
mov dword [rsp + 0xb0], eax
mov eax, dword [rsp + 0x2c]
xor ebp, ebx
and ebp, 0xff0000
mov r13d, ebp
mov ebp, r8d
xor esi, r11d
mov r11d, ebx
shl ebp, 8
shl eax, 8
xor r11d, r8d
xor ebp, esi
mov dword [rsp + 0x9c], r11d
mov r11d, r9d
and ebp, 0xff00
xor r11d, esi
mov dword [rsp + 0xa0], r11d
mov r11d, dword [rsp + 0x2c]
xor r11d, r12d
mov dword [rsp + 0xa8], r11d
mov r11d, ebp
mov ebp, r13d
or ebp, r11d
mov r11d, eax
mov eax, r9d
shr eax, 0x18
xor r11d, edi
mov r13d, eax
mov eax, ebp
mov ebp, r10d
and r11d, 0xff000000
xor r13d, r12d
shl ebp, 0x10
xor ebp, esi
movzx r13d, r13b
or r11d, r13d
and ebp, 0xff0000
or eax, r11d
mov r13d, ebp
mov ebp, r8d
mov dword [rsp + 0x4c], eax
mov dword [rcx + 0x4c], eax
shr ebp, 0x10
mov eax, dword [rsp + 0x2c]
xor ebp, r12d
and ebp, 0xff00
mov r11d, ebp
mov ebp, r13d
or ebp, r11d
shl eax, 0x10
shr r10d, 8
shr r8d, 8
mov r11d, eax
mov eax, r9d
xor r10d, r12d
xor r8d, edi
shr eax, 0x10
shr r9d, 8
and r8d, 0xff00
and r10d, 0xff0000
mov r13d, eax
mov eax, dword [rsp + 0x2c]
xor r9d, ebx
or r10d, r8d
movzx r8d, r9b
xor r11d, ebx
xor r13d, edi
mov ebx, dword [rsp + 0x38]
mov edi, dword [rsp + 0x4c]
mov r12d, dword [rsp + 0xac]
and r11d, 0xff000000
movzx r13d, r13b
or r11d, r13d
shl eax, 0x18
or ebp, r11d
xor eax, esi
mov dword [rcx + 0x50], ebp
and eax, 0xff000000
xor ebx, edi
xor r12d, ebp
or eax, r8d
mov r8d, dword [rsp + 0x98]
or r10d, eax
mov eax, ebx
mov ebx, dword [rsp + 0xcc]
mov dword [rsp + 0x90], r10d
mov dword [rcx + 0x54], r10d
movzx r9d, al
xor r8d, edi
mov edi, dword [rsp + 0x34]
xor edi, dword [rsp + 0x58]
mov dword [rcx + 0x84], r8d
xor ebx, r10d
xor ebp, edi
mov edi, dword [rsp + 0x94]
mov dword [rcx + 0x88], ebp
xor edi, r15d
mov r15, r14
mov r8d, edi
mov edi, eax
xor r8d, r10d
shr edi, 0x10
mov dword [rcx + 0x8c], r8d
mov rsi, qword [rsp + 0x20]
mov rbp, qword [rsp + 8]
movzx r8d, dil
mov r13, qword [rsp + 0x18]
movzx edi, ah
shr eax, 0x18
mov r11d, dword [r14 + r9*4]
movzx r9d, r12b
mov r9d, dword [r15 + r9*4]
mov r10d, dword [rsi + r8*4]
mov r14d, dword [rbp + rax*4]
mov r15, rsi
mov r8d, dword [r13 + rdi*4]
mov edi, r10d
xor r14d, r11d
xor edi, r8d
xor r14d, edi
mov edi, r12d
shr edi, 0x18
mov eax, edi
mov eax, dword [rbp + rax*4]
mov dword [rsp + 8], eax
mov eax, r12d
shr r12d, 0x10
movzx edi, ah
movzx r12d, r12b
mov eax, dword [rsp + 8]
mov qword [rsp + 8], rbp
mov edi, dword [r13 + rdi*4]
xor r8d, edi
xor edi, dword [rsi + r12*4]
mov esi, eax
mov r12, qword [rsp + 0x10]
xor esi, r9d
xor r9d, r11d
xor edi, esi
mov esi, ebx
shr esi, 0x18
mov r11d, esi
mov esi, ebx
shr esi, 0x10
mov r11d, dword [rbp + r11*4]
movzx esi, sil
mov ebp, dword [r15 + rsi*4]
movzx esi, bl
movzx ebx, bh
mov esi, dword [r12 + rsi*4]
xor eax, r11d
xor r10d, ebp
xor ebp, dword [r13 + rbx*4]
mov ebx, r11d
mov r11d, dword [rsp + 0xa8]
xor ebx, esi
xor r9d, esi
shr r11d, 0x18
xor ebx, ebp
mov rbp, qword [rsp + 8]
mov esi, dword [rbp + r11*4]
mov rbp, qword [rsp + 0xb0]
xor eax, esi
shr rbp, 0x10
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x9c]
mov r11, rbp
and r11d, 0xff
mov r11d, dword [r15 + r11*4]
mov r15, qword [rsp + 0x10]
movzx ebp, ah
mov eax, dword [rsp + 0x2c]
mov r12d, dword [r13 + rbp*4]
movzx ebp, byte [rsp + 0xa0]
xor r10d, r11d
mov r13d, r10d
xor esi, dword [r15 + rbp*4]
xor r11d, r12d
xor r8d, r12d
mov ebp, ebx
xor ebp, r8d
mov r12d, edi
and ebp, 0xff00
xor esi, r11d
mov r11d, r9d
xor r11d, esi
movzx r11d, r11b
or ebp, r11d
mov r11d, r14d
xor r11d, eax
and r11d, 0xff000000
xor r12d, r10d
shl r13d, 8
shl eax, 8
and r12d, 0xff0000
xor r13d, ebx
or r11d, r12d
mov r12d, r13d
or ebp, r11d
mov r11d, r8d
and r12d, 0xff0000
shl r11d, 8
mov dword [rcx + 0x3c], ebp
xor r11d, esi
and r11d, 0xff00
or r12d, r11d
mov r11d, r9d
mov r13d, r12d
shr r11d, 0x18
mov r12d, eax
xor r12d, edi
xor r11d, r14d
and r12d, 0xff000000
movzx r11d, r11b
or r11d, r12d
or r11d, r13d
mov r13d, r10d
shl r13d, 0x10
mov dword [rcx + 0x40], r11d
mov eax, dword [rsp + 0x2c]
xor r13d, esi
mov r15d, r13d
mov r13d, r8d
shr r13d, 0x10
and r15d, 0xff0000
xor r13d, r14d
shl eax, 0x10
mov r12d, r13d
and r12d, 0xff00
or r15d, r12d
mov r12d, eax
mov eax, dword [rsp + 0x2c]
mov r13d, r15d
mov r15d, r9d
xor r12d, ebx
shr r15d, 0x10
and r12d, 0xff000000
xor r15d, edi
movzx r15d, r15b
or r12d, r15d
or r13d, r12d
shr r10d, 8
shr r8d, 8
shl eax, 0x18
xor r10d, r14d
xor r8d, edi
shr r9d, 8
xor eax, esi
and r8d, 0xff00
and r10d, 0xff0000
xor r9d, ebx
and eax, 0xff000000
or r10d, r8d
movzx r8d, r9b
mov dword [rsp + 0x34], r13d
mov dword [rcx + 0x44], r13d
or eax, r8d
or r10d, eax
cmp qword [rsp + 0x130], 4
mov eax, 2
mov dword [rsp + 0x38], r10d
mov dword [rcx + 0x48], r10d
jbe 0x487059
mov r8d, dword [rdx]
bswap r8d
sub qword [rsp + 0x130], 4
mov r15d, r8d
add rdx, 4
jmp 0x487d90
mov dword [rcx], r15d
mov dword [rcx + 4], r10d
jmp 0x487029