Function at 0x1400b6790
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, 0x98
mov rax, rcx
mov qword [rsp + 0xf0], r8
lea rcx, [r8*8]
mov ebx, dword [rax]
mov r9d, dword [rax + 4]
add qword [rax + 0xa0], rcx
mov dword [rsp + 0x28], ebx
cmp r9d, 3
ja 0x1400b688d
mov r8d, 4
sub r8d, r9d
cmp qword [rsp + 0xf0], r8
jb 0x1400b8100
mov r8d, 3
mov ecx, ebx
sub r8d, r9d
mov r9d, 4
movzx r10d, byte [rdx]
shl ecx, 8
mov esi, ecx
or esi, r10d
mov dword [rsp + 0x28], esi
test r8d, r8d
je 0x1400b686b
movzx r10d, byte [rdx + 1]
shl esi, 8
or esi, r10d
mov dword [rsp + 0x28], esi
cmp r8d, 1
je 0x1400b686b
movzx r10d, byte [rdx + 2]
shl esi, 8
or esi, r10d
xor r10d, r10d
cmp r8d, 2
sete r10b
mov dword [rsp + 0x28], esi
neg r10d
cmp r8d, 2
je 0x1400b686b
movzx r11d, byte [rdx + 3]
shl esi, 8
mov ecx, esi
or ecx, r11d
mov dword [rsp + 0x28], ecx
test r10d, r10d
je 0x1400b686b
movzx r10d, byte [rdx + 4]
shl ecx, 8
or ecx, r10d
mov dword [rsp + 0x28], ecx
mov rbx, qword [rsp + 0xf0]
lea rdx, [rdx + r8 + 1]
lea r10, [rbx - 1]
sub r10, r8
mov qword [rsp + 0xf0], r10
je 0x1400b810b
mov r8d, dword [rax + 8]
cmp r8d, 2
je 0x1400b8990
ja 0x1400b7100
test r8d, r8d
je 0x1400b8910
mov ebx, dword [rax + 0x98]
mov r13d, dword [rax + 0x78]
mov r10d, dword [rax + 0x7c]
mov r15d, dword [rax + 0x88]
mov dword [rsp + 0x60], ebx
mov ebx, dword [rax + 0x80]
mov dword [rsp + 0x50], ebx
mov ebx, dword [rax + 0x84]
mov dword [rsp + 0x40], ebx
mov ebx, dword [rax + 0x2c]
mov dword [rsp + 0x64], ebx
mov ebx, dword [rax + 0x18]
mov dword [rsp + 0x38], ebx
mov ebx, dword [rax + 0x1c]
mov dword [rsp + 0x74], ebx
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x78], ebx
mov ebx, dword [rax + 0x10]
mov dword [rsp + 0x88], ebx
mov ebx, dword [rax + 0x14]
mov dword [rsp + 0x34], ebx
lea rbx, [0x1402c9320]
mov qword [rsp + 0x20], rbx
lea rbx, [0x1402c8f20]
mov qword [rsp + 0x18], rbx
lea rbx, [0x1402c8b20]
mov qword [rsp + 0x10], rbx
lea rbx, [0x1402c9720]
mov qword [rsp + 8], rbx
mov ecx, dword [rsp + 0x28]
mov ebx, dword [rsp + 0x60]
xor r15d, dword [rax + 0x60]
mov r9d, dword [rsp + 0x64]
xor ebx, ecx
xor r10d, dword [rax + 0x54]
mov esi, dword [rax + 0x74]
mov dword [rsp + 0x68], r15d
mov ecx, dword [rsp + 0x50]
mov r8d, dword [rax + 0x70]
mov dword [rsp + 0x58], ebx
mov dword [rax + 0x98], ebx
mov ebx, dword [rax + 0x6c]
mov r11, qword [rsp + 0x18]
xor r8d, ecx
xor r13d, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rax + 0x88], r15d
mov r15d, dword [rsp + 0x40]
xor ebx, r10d
movzx edi, bh
xor dword [rax + 0x28], r13d
xor r9d, r15d
xor esi, r15d
mov r15, qword [rsp + 0x20]
xor dword [rax + 0x24], r10d
mov dword [rax + 0x2c], r9d
mov r9d, ebx
shr r9d, 0x10
mov dword [rsp + 0x70], r10d
movzx r9d, r9b
mov dword [rax + 0x7c], r10d
mov r13d, dword [r15 + r9*4]
mov r9d, edi
mov rdi, qword [rsp + 8]
mov r12d, dword [r11 + r9*4]
movzx r9d, bl
shr ebx, 0x18
mov r14d, dword [rcx + r9*4]
mov r10d, dword [rdi + rbx*4]
mov r9d, r8d
mov ecx, r8d
shr r9d, 0x18
xor r10d, r14d
mov ebx, r10d
mov r10d, dword [rdi + r9*4]
movzx edi, ch
mov rcx, qword [rsp + 0x10]
mov r9d, edi
xor ebx, r13d
mov ebp, dword [r11 + r9*4]
movzx r9d, r8b
shr r8d, 0x10
mov r11d, r10d
mov r9d, dword [rcx + r9*4]
movzx r8d, r8b
mov rdi, qword [rsp + 8]
xor ebx, r12d
xor r11d, r9d
xor r11d, dword [r15 + r8*4]
mov r8d, esi
shr r8d, 0x18
xor r11d, ebp
mov edi, dword [rdi + r8*4]
mov r8d, esi
shr r8d, 0x10
movzx r8d, r8b
xor r10d, edi
mov r8d, dword [r15 + r8*4]
movzx r15d, sil
mov r15d, dword [rcx + r15*4]
mov ecx, esi
movzx esi, ch
mov rcx, qword [rsp + 0x18]
xor edi, r15d
mov esi, esi
xor r9d, r15d
mov r15, qword [rsp + 0x18]
xor edi, r8d
xor edi, dword [rcx + rsi*4]
mov ecx, dword [rsp + 0x28]
xor r9d, r14d
mov dword [rsp + 0x48], edi
mov rdi, qword [rsp + 8]
mov esi, ecx
mov r14d, ecx
movzx ecx, ch
shr r14d, 0x10
shr esi, 0x18
mov esi, dword [rdi + rsi*4]
movzx edi, r14b
mov r14, qword [rsp + 0x20]
mov edi, dword [r14 + rdi*4]
xor r10d, esi
xor r8d, edi
xor r8d, r13d
mov r13d, ecx
movzx ecx, byte [rsp + 0x28]
mov r13d, dword [r15 + r13*4]
xor ebp, r13d
xor r12d, ebp
mov rbp, qword [rsp + 0x10]
xor esi, dword [rbp + rcx*4]
mov ecx, ebx
mov ebp, r11d
xor ecx, r10d
xor esi, edi
mov edi, r9d
xor ebp, r8d
mov dword [rsp + 0x64], ecx
mov ecx, r10d
shr edi, 0x18
xor esi, r13d
shl ecx, 8
xor edi, ebx
mov r13d, r9d
mov dword [rsp + 0x80], ebp
xor ecx, r11d
xor r13d, esi
movzx edi, dil
mov ebp, r9d
and ecx, 0xff000000
mov dword [rsp + 0x8c], r13d
mov r13d, dword [rsp + 0x48]
shr ebp, 0x10
or ecx, edi
mov edi, r8d
xor ebp, r11d
shl edi, 8
movzx ebp, bpl
xor edi, r13d
and edi, 0xff0000
or ecx, edi
mov edi, r12d
shl edi, 8
xor edi, esi
and edi, 0xff00
or ecx, edi
mov edi, r10d
shl edi, 0x10
mov dword [rax + 0x70], ecx
xor edi, r13d
and edi, 0xff000000
or edi, ebp
mov ebp, r8d
shl ebp, 0x10
xor ebp, esi
and ebp, 0xff0000
or edi, ebp
shl r10d, 0x18
mov ebp, r12d
shr r9d, 8
xor r10d, esi
shr r8d, 8
xor r9d, r13d
and r10d, 0xff000000
xor r8d, ebx
shr ebp, 0x10
movzx r9d, r9b
and r8d, 0xff0000
xor ebp, ebx
mov ebx, dword [rax + 0x64]
or r9d, r10d
and ebp, 0xff00
mov r10d, dword [rsp + 0x38]
or r8d, r9d
mov r9d, r12d
or edi, ebp
shr r9d, 8
xor ebx, edi
mov ebp, edi
mov dword [rsp + 0x54], edi
xor r9d, r11d
mov dword [rax + 0x74], edi
mov edi, ebx
mov ebx, dword [rax + 0x68]
and r9d, 0xff00
or r8d, r9d
mov r9d, dword [rax + 0x60]
mov dword [rsp + 0x6c], r8d
xor ebx, r8d
xor r9d, ecx
xor ecx, r10d
mov dword [rax + 0x78], r8d
mov r11d, r9d
mov dword [rax + 0x18], ecx
mov r10d, dword [rsp + 0x74]
shr r11d, 0x10
mov r13, qword [rsp + 8]
xor dword [rax + 0x20], r8d
xor r10d, ebp
movzx ecx, r11b
mov dword [rax + 0x1c], r10d
mov r10d, dword [r14 + rcx*4]
mov ecx, r9d
movzx esi, ch
mov r8d, esi
mov rsi, qword [rsp + 0x10]
mov dword [rsp + 0x38], r10d
mov ecx, dword [r15 + r8*4]
movzx r8d, r9b
shr r9d, 0x18
mov r8d, dword [rsi + r8*4]
mov r11d, dword [r13 + r9*4]
mov r9d, edi
mov dword [rsp + 0x60], ecx
shr r9d, 0x18
xor r11d, r8d
mov r9d, dword [r13 + r9*4]
xor r11d, r10d
xor r11d, ecx
mov ecx, edi
movzx ecx, ch
mov r10d, ecx
mov rcx, r14
mov ebp, dword [r15 + r10*4]
movzx r10d, dil
shr edi, 0x10
mov r15d, dword [rsi + r10*4]
movzx edi, dil
mov r10d, r9d
xor r10d, r15d
xor r10d, dword [r14 + rdi*4]
mov edi, ebx
xor r8d, r15d
shr edi, 0x18
xor r10d, ebp
mov edi, dword [r13 + rdi*4]
mov dword [rsp + 0x20], edi
mov edi, ebx
shr edi, 0x10
movzx edi, dil
mov r13d, dword [r14 + rdi*4]
movzx edi, bl
movzx ebx, bh
mov r14d, dword [rsi + rdi*4]
mov edi, dword [rsp + 0x20]
mov ebx, ebx
mov rsi, qword [rsp + 0x18]
xor edi, r14d
xor r8d, r14d
mov r14, rcx
xor edi, r13d
xor edi, dword [rsi + rbx*4]
mov ebx, dword [rsp + 0x64]
mov dword [rsp + 0x28], edi
mov rdi, qword [rsp + 8]
shr ebx, 0x18
mov r15d, dword [rdi + rbx*4]
mov ebx, dword [rsp + 0x20]
xor r9d, r15d
xor r9d, ebx
mov rbx, qword [rsp + 0x80]
shr rbx, 0x10
mov rdi, rbx
mov ebx, dword [rsp + 0x38]
and edi, 0xff
mov edi, dword [rcx + rdi*4]
xor ebx, edi
mov ecx, ebx
mov rbx, qword [rsp + 0x48]
xor ecx, r13d
mov r13, rsi
xor r12, rbx
mov rbx, r12
movzx ebx, bh
mov r12d, dword [rsi + rbx*4]
mov esi, dword [rsp + 0x60]
mov rbx, qword [rsp + 0x10]
xor esi, ebp
mov ebp, esi
movzx esi, byte [rsp + 0x8c]
xor ebp, r12d
xor r15d, dword [rbx + rsi*4]
mov esi, r8d
mov ebx, r15d
mov r15d, r11d
xor ebx, edi
mov edi, ecx
xor r15d, r9d
xor ebx, r12d
mov r12d, dword [rsp + 0x28]
shl edi, 8
mov dword [rsp + 0x38], r15d
xor esi, ebx
mov r15d, r10d
mov dword [rsp + 0x60], esi
mov esi, r9d
xor edi, r12d
xor r15d, ecx
shl esi, 8
and edi, 0xff0000
mov dword [rsp + 0x48], r15d
xor esi, r10d
and esi, 0xff000000
or esi, edi
mov edi, ebp
shl edi, 8
xor edi, ebx
and edi, 0xff00
or esi, edi
mov edi, r8d
shr edi, 0x18
mov r15d, esi
xor edi, r11d
movzx edi, dil
or r15d, edi
mov edi, r9d
shl r9d, 0x18
shl edi, 0x10
xor r9d, ebx
mov dword [rax + 0x64], r15d
mov esi, edi
mov edi, ecx
shr ecx, 8
and r9d, 0xff000000
shl edi, 0x10
xor esi, r12d
xor ecx, r11d
xor edi, ebx
and esi, 0xff000000
and ecx, 0xff0000
mov ebx, dword [rax + 0x5c]
and edi, 0xff0000
or r9d, ecx
or esi, edi
mov edi, ebp
shr edi, 0x10
xor edi, r11d
mov r11d, r9d
mov r9d, ebp
and edi, 0xff00
shr r9d, 8
or esi, edi
mov edi, r8d
mov ecx, r9d
mov r9d, dword [rsp + 0x88]
shr edi, 0x10
xor ecx, r10d
xor edi, r10d
and ecx, 0xff00
mov r10d, dword [rax + 0x54]
movzx edi, dil
or esi, edi
or ecx, r11d
shr r8d, 8
xor r10d, r15d
xor r8d, r12d
mov r11d, dword [rax + 0x58]
mov dword [rax + 0x68], esi
mov rdi, r13
movzx r8d, r8b
mov r12, qword [rsp + 0x10]
or ecx, r8d
mov r8d, dword [rsp + 0x78]
xor r11d, esi
xor esi, r9d
xor ebx, ecx
mov dword [rax + 0x6c], ecx
xor r8d, r15d
mov dword [rax + 0x10], esi
mov dword [rax + 0xc], r8d
mov r8d, dword [rsp + 0x34]
xor ecx, r8d
mov dword [rax + 0x14], ecx
mov ecx, r10d
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r14 + rcx*4]
mov dword [rsp + 0x34], ecx
mov ecx, r10d
movzx esi, ch
mov ecx, dword [rsp + 0x34]
mov r8d, esi
mov rsi, qword [rsp + 8]
mov r9d, dword [r13 + r8*4]
movzx r8d, r10b
shr r10d, 0x18
mov r13d, dword [rsi + r10*4]
mov r8d, dword [r12 + r8*4]
mov r10d, r11d
shr r10d, 0x18
xor r13d, r8d
mov r10d, dword [rsi + r10*4]
xor r13d, ecx
mov ecx, r11d
movzx esi, ch
mov ecx, r10d
xor r13d, r9d
mov esi, esi
mov edi, dword [rdi + rsi*4]
movzx esi, r11b
shr r11d, 0x10
mov esi, dword [r12 + rsi*4]
movzx r11d, r11b
mov r12d, dword [r14 + r11*4]
xor r9d, edi
mov qword [rsp + 0x20], r14
xor ecx, esi
xor r8d, esi
mov rsi, qword [rsp + 8]
xor r12d, ecx
mov ecx, ebx
shr ecx, 0x18
xor r12d, edi
mov rdi, qword [rsp + 0x10]
mov r11d, ecx
mov ecx, ebx
shr ecx, 0x10
mov r11d, dword [rsi + r11*4]
movzx esi, cl
mov ecx, dword [rsp + 0x34]
mov r14d, dword [r14 + rsi*4]
movzx esi, bl
movzx ebx, bh
xor r10d, r11d
mov edi, dword [rdi + rsi*4]
mov rsi, qword [rsp + 0x18]
mov ebx, ebx
xor ecx, r14d
xor r11d, edi
xor r8d, edi
mov rdi, qword [rsp + 0x18]
xor r11d, r14d
xor r11d, dword [rsi + rbx*4]
mov rbx, qword [rsp + 8]
mov esi, r11d
mov r11d, dword [rsp + 0x38]
mov r14, qword [rsp + 0x20]
shr r11d, 0x18
mov r11d, dword [rbx + r11*4]
mov rbx, qword [rsp + 0x48]
xor r10d, r11d
shr rbx, 0x10
and ebx, 0xff
mov r14d, dword [r14 + rbx*4]
mov rbx, qword [rsp + 0x28]
xor rbx, rbp
xor ecx, r14d
movzx ebx, bh
mov ebp, dword [rdi + rbx*4]
movzx ebx, byte [rsp + 0x60]
mov rdi, qword [rsp + 0x10]
xor r9d, ebp
xor r11d, dword [rdi + rbx*4]
mov ebx, r13d
xor r11d, r14d
xor ebx, r10d
mov r14d, r8d
mov edi, r11d
mov r11d, r12d
and ebx, 0xff000000
xor r11d, ecx
xor edi, ebp
mov ebp, r8d
and r11d, 0xff0000
shr ebp, 0x18
or ebx, r11d
mov r11d, r8d
xor ebp, r13d
xor r11d, edi
movzx ebp, bpl
movzx r11d, r11b
or ebx, r11d
mov r11d, esi
xor r11d, r9d
and r11d, 0xff00
or ebx, r11d
mov r11d, r10d
shl r11d, 8
mov dword [rax + 0x54], ebx
xor r11d, r12d
and r11d, 0xff000000
or r11d, ebp
mov ebp, ecx
shl ebp, 8
xor ebp, esi
and ebp, 0xff0000
or r11d, ebp
mov ebp, r9d
shl ebp, 8
xor ebp, edi
and ebp, 0xff00
or r11d, ebp
mov ebp, r10d
shl ebp, 0x10
shr r14d, 0x10
mov dword [rax + 0x58], r11d
shl r10d, 0x18
xor ebp, esi
xor r14d, r12d
shr r8d, 8
and ebp, 0xff000000
movzx r14d, r14b
xor r10d, edi
xor r8d, esi
or ebp, r14d
mov r14d, ecx
shr ecx, 8
movzx r8d, r8b
shl r14d, 0x10
and r10d, 0xff000000
xor ecx, r13d
xor r14d, edi
or r8d, r10d
and ecx, 0xff0000
and r14d, 0xff0000
or ecx, r8d
mov r8d, 2
or ebp, r14d
mov r14d, r9d
shr r9d, 8
shr r14d, 0x10
xor r9d, r12d
xor r14d, r13d
and r9d, 0xff00
and r14d, 0xff00
or ecx, r9d
or ebp, r14d
mov dword [rsp + 0x38], ecx
cmp qword [rsp + 0xf0], 4
mov dword [rsp + 0x34], ebp
mov dword [rax + 0x5c], ebp
mov dword [rax + 0x60], ecx
ja 0x1400b8140
nop word [rax + rax]
cmp qword [rsp + 0xf0], 0
mov esi, dword [rsp + 0xf0]
mov dword [rax + 4], esi
je 0x1400b8a20
mov r9, qword [rsp + 0xf0]
xor ecx, ecx
add r9, rdx
nop
movzx r10d, byte [rdx]
shl ecx, 8
add rdx, 1
or ecx, r10d
cmp rdx, r9
jne 0x1400b70d0
mov dword [rax], ecx
mov dword [rax + 8], r8d
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp r8d, 3
jne 0x1400b70a8
mov esi, dword [rax + 0x3c]
lea rbx, [0x1402c8b20]
mov r11d, dword [rax + 0x34]
mov r10d, dword [rax + 0x30]
mov r15d, dword [rax + 0x40]
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x50], esi
mov esi, dword [rax + 0x38]
mov dword [rsp + 0x40], esi
mov esi, dword [rax + 0x50]
mov dword [rsp + 0x48], esi
mov esi, dword [rax + 0x74]
mov dword [rsp + 0x54], esi
mov esi, dword [rax + 0x60]
mov dword [rsp + 0x38], esi
mov esi, dword [rax + 0x64]
mov dword [rsp + 0x60], esi
mov esi, dword [rax + 0x54]
mov dword [rsp + 0x58], esi
mov esi, dword [rax + 0x58]
mov dword [rsp + 0x64], esi
mov esi, dword [rax + 0x5c]
mov dword [rsp + 0x34], esi
lea rsi, [0x1402c9320]
mov qword [rsp + 0x20], rsi
lea rsi, [0x1402c8f20]
mov qword [rsp + 0x18], rsi
lea rsi, [0x1402c9720]
mov qword [rsp + 8], rsi
mov ecx, dword [rsp + 0x28]
mov ebx, dword [rsp + 0x48]
mov r8d, dword [rax + 0x24]
mov r9d, dword [rsp + 0x54]
xor ebx, ecx
mov ecx, dword [rsp + 0x50]
xor r11d, dword [rax + 0xc]
xor r8d, r11d
mov esi, r11d
mov dword [rsp + 0x70], r11d
mov edi, dword [rsp + 0x40]
xor r9d, ecx
mov dword [rax + 0x34], r11d
mov r11d, dword [rax + 0x2c]
mov dword [rax + 0x74], r9d
mov r9d, r8d
mov r14, qword [rsp + 0x20]
xor r10d, edi
xor r11d, ecx
mov dword [rsp + 0x68], ebx
mov ecx, r8d
shr r9d, 0x10
mov dword [rax + 0x50], ebx
mov ebx, dword [rax + 0x28]
movzx r9d, r9b
xor dword [rax + 0x6c], esi
movzx esi, ch
mov rcx, qword [rsp + 0x18]
mov r13d, dword [r14 + r9*4]
xor ebx, edi
mov r9d, esi
mov rdi, qword [rsp + 8]
mov r12d, dword [rcx + r9*4]
movzx r9d, r8b
shr r8d, 0x18
xor r15d, dword [rax + 0x18]
mov esi, dword [rdi + r8*4]
mov r8d, ebx
xor dword [rax + 0x70], r10d
shr r8d, 0x18
mov dword [rsp + 0x6c], r15d
mov r10d, dword [rdi + r8*4]
movzx edi, bh
mov dword [rax + 0x40], r15d
mov r8d, edi
mov r15, qword [rsp + 0x10]
mov edi, dword [rcx + r8*4]
movzx r8d, bl
shr ebx, 0x10
mov ebp, dword [r15 + r9*4]
mov r9d, dword [r15 + r8*4]
movzx r8d, bl
mov ebx, r10d
mov rcx, r15
xor ebx, r9d
xor ebx, dword [r14 + r8*4]
mov r15, qword [rsp + 8]
mov r8d, r11d
shr r8d, 0x18
xor esi, ebp
xor ebx, edi
mov r15d, dword [r15 + r8*4]
mov r8d, r11d
xor esi, r13d
shr r8d, 0x10
xor esi, r12d
movzx r8d, r8b
xor r10d, r15d
mov r8d, dword [r14 + r8*4]
movzx r14d, r11b
mov r14d, dword [rcx + r14*4]
mov ecx, r11d
movzx ecx, ch
mov r11d, ecx
mov rcx, qword [rsp + 0x18]
xor r15d, r14d
xor r9d, r14d
xor r15d, r8d
xor r9d, ebp
mov rbp, qword [rsp + 8]
mov r14, qword [rsp + 0x20]
xor r15d, dword [rcx + r11*4]
mov ecx, dword [rsp + 0x28]
mov r11d, ecx
shr r11d, 0x18
mov r11d, dword [rbp + r11*4]
mov ebp, ecx
movzx ecx, ch
shr ebp, 0x10
movzx ebp, bpl
xor r10d, r11d
mov ebp, dword [r14 + rbp*4]
xor r8d, ebp
xor r8d, r13d
mov r13d, ecx
mov rcx, qword [rsp + 0x18]
mov r13d, dword [rcx + r13*4]
movzx ecx, byte [rsp + 0x28]
xor edi, r13d
xor r12d, edi
mov rdi, qword [rsp + 0x10]
xor r11d, dword [rdi + rcx*4]
mov edi, esi
xor edi, r10d
xor r11d, ebp
mov ebp, r10d
xor r11d, r13d
mov dword [rsp + 0x74], edi
mov edi, r9d
shl ebp, 8
xor edi, r11d
mov ecx, ebp
mov ebp, r9d
mov r13d, ebx
mov dword [rsp + 0x88], edi
mov edi, r9d
xor ecx, ebx
shr ebp, 0x10
shr edi, 0x18
and ecx, 0xff000000
xor ebp, ebx
xor r13d, r8d
xor edi, esi
movzx ebp, bpl
mov dword [rsp + 0x78], r13d
movzx edi, dil
or ecx, edi
mov edi, r8d
shl edi, 8
xor edi, r15d
and edi, 0xff0000
or ecx, edi
mov edi, r12d
shl edi, 8
xor edi, r11d
and edi, 0xff00
or ecx, edi
mov edi, r10d
shl edi, 0x10
mov dword [rax + 0x28], ecx
xor edi, r15d
and edi, 0xff000000
or edi, ebp
mov ebp, r8d
shl ebp, 0x10
xor ebp, r11d
and ebp, 0xff0000
or edi, ebp
shl r10d, 0x18
mov ebp, r12d
shr r9d, 8
xor r10d, r11d
shr r8d, 8
xor r9d, r15d
and r10d, 0xff000000
xor r8d, esi
shr ebp, 0x10
movzx r9d, r9b
and r8d, 0xff0000
xor ebp, esi
or r9d, r10d
mov r10d, dword [rsp + 0x38]
and ebp, 0xff00
or r8d, r9d
mov r9d, r12d
or edi, ebp
shr r9d, 8
mov esi, edi
mov dword [rsp + 0x48], edi
xor r9d, ebx
mov ebx, dword [rax + 0x1c]
mov dword [rax + 0x2c], edi
and r9d, 0xff00
or r8d, r9d
mov r9d, dword [rax + 0x18]
xor ebx, edi
mov edi, dword [rax + 0x20]
mov dword [rsp + 0x54], r8d
xor r9d, ecx
xor ecx, r10d
mov r10d, dword [rsp + 0x60]
mov dword [rax + 0x30], r8d
mov dword [rax + 0x60], ecx
xor edi, r8d
xor r10d, esi
mov esi, r9d
shr esi, 0x10
mov dword [rax + 0x64], r10d
movzx ecx, sil
xor dword [rax + 0x68], r8d
mov rbp, qword [rsp + 0x18]
mov r10d, dword [r14 + rcx*4]
mov ecx, r9d
mov r13, qword [rsp + 0x10]
movzx esi, ch
mov rcx, qword [rsp + 8]
mov r8d, esi
mov dword [rsp + 0x28], r10d
mov r11d, dword [rbp + r8*4]
movzx r8d, r9b
shr r9d, 0x18
mov r8d, dword [r13 + r8*4]
mov esi, dword [rcx + r9*4]
mov r9d, ebx
shr r9d, 0x18
mov r9d, dword [rcx + r9*4]
xor esi, r8d
movzx ecx, bh
xor esi, r10d
mov r10d, ecx
mov rcx, r13
mov ebp, dword [rbp + r10*4]
movzx r10d, bl
shr ebx, 0x10
xor esi, r11d
mov r13d, dword [r13 + r10*4]
movzx r10d, bl
mov ebx, r13d
mov dword [rsp + 0x20], r13d
xor ebx, r9d
xor ebx, dword [r14 + r10*4]
mov r10d, edi
xor r12, r15
xor ebx, ebp
shr r10d, 0x18
xor r11d, ebp
mov dword [rsp + 0x38], ebx
mov rbx, qword [rsp + 8]
mov r13d, dword [rbx + r10*4]
mov r10d, edi
mov rbx, r14
shr r10d, 0x10
movzx r10d, r10b
mov r14d, dword [r14 + r10*4]
movzx r10d, dil
mov r10d, dword [rcx + r10*4]
mov ecx, edi
movzx edi, ch
mov rcx, qword [rsp + 0x18]
mov dword [rsp + 0x60], r10d
mov edi, edi
xor r10d, r13d
xor r10d, r14d
xor r10d, dword [rcx + rdi*4]
mov edi, dword [rsp + 0x20]
mov qword [rsp + 0x20], rbx
mov rcx, qword [rsp + 8]
xor r8d, edi
mov edi, dword [rsp + 0x60]
xor r8d, edi
mov edi, dword [rsp + 0x74]
shr edi, 0x18
mov edi, dword [rcx + rdi*4]
mov ecx, dword [rsp + 0x28]
xor r9d, edi
xor r9d, r13d
mov r13, qword [rsp + 0x78]
shr r13, 0x10
and r13d, 0xff
mov r13d, dword [rbx + r13*4]
mov rbx, r12
movzx ebx, bh
xor ecx, r13d
xor ecx, r14d
mov r14, qword [rsp + 0x18]
mov r12d, dword [r14 + rbx*4]
movzx ebp, byte [rsp + 0x88]
mov r15, qword [rsp + 0x10]
mov ebx, dword [rsp + 0x38]
xor r11d, r12d
mov r14, qword [rsp + 0x20]
xor edi, dword [r15 + rbp*4]
mov ebp, r9d
mov r15d, esi
xor edi, r13d
shl ebp, 8
xor r15d, r9d
mov r13, qword [rsp + 0x10]
xor edi, r12d
mov r12d, ebx
xor ebp, ebx
mov dword [rsp + 0x60], r15d
xor r12d, ecx
mov r15d, r8d
and ebp, 0xff000000
mov dword [rsp + 0x38], r12d
mov r12d, ecx
xor r15d, edi
shl r12d, 8
mov dword [rsp + 0x74], r15d
xor r12d, r10d
and r12d, 0xff0000
or ebp, r12d
mov r12d, r11d
shl r12d, 8
xor r12d, edi
and r12d, 0xff00
or ebp, r12d
mov r12d, r8d
shr r12d, 0x18
xor r12d, esi
movzx r12d, r12b
or ebp, r12d
mov r12d, ecx
shr ecx, 8
mov r15d, ebp
mov dword [rax + 0x1c], ebp
mov ebp, r9d
shl r12d, 0x10
shl ebp, 0x10
xor r12d, edi
shl r9d, 0x18
xor ecx, esi
xor ebp, r10d
and r12d, 0xff0000
xor r9d, edi
and ecx, 0xff0000
and ebp, 0xff000000
and r9d, 0xff000000
mov edi, dword [rax + 0x14]
or ebp, r12d
mov r12d, r11d
shr r12d, 0x10
xor r12d, esi
mov esi, r9d
mov r9d, r11d
and r12d, 0xff00
shr r9d, 8
or esi, ecx
or ebp, r12d
mov r12d, r8d
xor r9d, ebx
shr r12d, 0x10
mov ecx, r9d
xor r12d, ebx
and ecx, 0xff00
movzx r12d, r12b
or ebp, r12d
or ecx, esi
shr r8d, 8
mov esi, dword [rax + 0xc]
xor r8d, r10d
mov dword [rax + 0x20], ebp
movzx r8d, r8b
xor esi, r15d
or ecx, r8d
mov r8d, dword [rsp + 0x58]
mov ebx, esi
mov esi, dword [rax + 0x10]
mov r9d, ebx
xor edi, ecx
mov dword [rax + 0x24], ecx
xor r8d, r15d
xor esi, ebp
shr r9d, 0x10
mov dword [rax + 0x54], r8d
mov r8d, dword [rsp + 0x64]
xor ebp, r8d
mov r8d, dword [rsp + 0x34]
mov dword [rax + 0x58], ebp
mov rbp, qword [rsp + 8]
xor ecx, r8d
mov dword [rax + 0x5c], ecx
movzx ecx, r9b
mov ecx, dword [r14 + rcx*4]
mov r14, qword [rsp + 0x18]
mov dword [rsp + 0x28], ecx
movzx ecx, bh
mov r8d, ecx
mov ecx, dword [rsp + 0x28]
mov r9d, dword [r14 + r8*4]
movzx r8d, bl
shr ebx, 0x18
mov r12d, dword [rbp + rbx*4]
mov r8d, dword [r13 + r8*4]
mov ebx, esi
shr ebx, 0x18
xor r12d, r8d
mov ebx, dword [rbp + rbx*4]
xor r12d, ecx
mov ecx, esi
movzx ebp, ch
xor r12d, r9d
mov ebp, ebp
mov r14d, dword [r14 + rbp*4]
movzx ebp, sil
shr esi, 0x10
mov r13d, dword [r13 + rbp*4]
mov rcx, qword [rsp + 0x20]
movzx esi, sil
mov ebp, ebx
xor r9d, r14d
xor ebp, r13d
xor ebp, dword [rcx + rsi*4]
xor r8d, r13d
mov esi, edi
xor ebp, r14d
mov r13, qword [rsp + 8]
mov r14d, edi
shr esi, 0x18
shr r14d, 0x10
mov esi, dword [r13 + rsi*4]
movzx r13d, r14b
mov r14d, dword [rcx + r13*4]
mov ecx, dword [rsp + 0x28]
movzx r13d, dil
xor ebx, esi
xor ecx, r14d
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsp + 0x10]
mov r13d, dword [rcx + r13*4]
mov ecx, edi
movzx edi, ch
mov rcx, qword [rsp + 0x20]
xor esi, r13d
mov edi, edi
xor r8d, r13d
mov r13, qword [rsp + 8]
xor esi, r14d
mov r14, qword [rsp + 0x18]
xor esi, dword [r14 + rdi*4]
mov edi, dword [rsp + 0x60]
shr edi, 0x18
mov edi, dword [r13 + rdi*4]
mov r13, qword [rsp + 0x38]
xor ebx, edi
shr r13, 0x10
xor r10, r11
movzx r11d, byte [rsp + 0x74]
and r13d, 0xff
mov r13d, dword [rcx + r13*4]
mov ecx, dword [rsp + 0x28]
xor ecx, r13d
mov dword [rsp + 0x28], ecx
mov rcx, r10
movzx ecx, ch
mov r10d, dword [r14 + rcx*4]
mov rcx, qword [rsp + 0x10]
mov r14d, r8d
xor edi, dword [rcx + r11*4]
mov ecx, dword [rsp + 0x28]
xor r9d, r10d
mov r11d, r12d
xor edi, r13d
xor r11d, ebx
mov r13d, r8d
xor edi, r10d
mov r10d, ebp
and r11d, 0xff000000
shr r13d, 0x18
xor r10d, ecx
xor r13d, r12d
shl ecx, 8
and r10d, 0xff0000
movzx r13d, r13b
or r11d, r10d
mov r10d, r8d
xor r10d, edi
movzx r10d, r10b
or r11d, r10d
mov r10d, esi
xor r10d, r9d
and r10d, 0xff00
or r11d, r10d
mov r10d, ebx
shl r10d, 8
mov dword [rax + 0xc], r11d
xor r10d, ebp
and r10d, 0xff000000
or r10d, r13d
mov r13d, ecx
mov ecx, dword [rsp + 0x28]
xor r13d, esi
and r13d, 0xff0000
or r10d, r13d
mov r13d, r9d
shl r13d, 8
xor r13d, edi
and r13d, 0xff00
or r10d, r13d
mov r13d, ebx
shl r13d, 0x10
shr r14d, 0x10
mov dword [rax + 0x10], r10d
shl ecx, 0x10
xor r13d, esi
xor r14d, ebp
shl ebx, 0x18
and r13d, 0xff000000
movzx r14d, r14b
shr r8d, 8
xor ebx, edi
or r13d, r14d
mov r14d, ecx
mov ecx, dword [rsp + 0x28]
xor r8d, esi
xor r14d, edi
and ebx, 0xff000000
movzx r8d, r8b
and r14d, 0xff0000
shr ecx, 8
or r8d, ebx
or r13d, r14d
mov r14d, r9d
xor ecx, r12d
shr r9d, 8
shr r14d, 0x10
and ecx, 0xff0000
xor r9d, ebp
xor r14d, r12d
or ecx, r8d
and r9d, 0xff00
xor r8d, r8d
and r14d, 0xff00
or ecx, r9d
or r13d, r14d
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x34], r13d
mov dword [rax + 0x14], r13d
mov dword [rax + 0x18], ecx
cmp qword [rsp + 0xf0], 4
jbe 0x1400b70a8
mov ecx, dword [rdx]
bswap ecx
sub qword [rsp + 0xf0], 4
add rdx, 4
mov dword [rsp + 0x28], ecx
mov r9d, dword [rax + 0x90]
xor r10d, dword [rax + 0x78]
mov ebp, dword [rsp + 0x28]
mov ebx, dword [rsp + 0x48]
mov dword [rsp + 0x88], r10d
xor r9d, r10d
mov ecx, dword [rsp + 0x38]
mov edi, dword [rsp + 0x34]
mov dword [rax + 0x10], r10d
xor dword [rax + 0x48], r10d
mov r10d, dword [rsp + 0x68]
xor ebx, ebp
mov dword [rsp + 0x64], ebx
mov r8d, dword [rax + 0x94]
xor r11d, edi
xor r10d, ecx
mov dword [rax + 0x2c], ebx
mov r12, qword [rsp + 0x20]
mov ebx, dword [rax + 0x98]
mov dword [rax + 0x50], r10d
mov r10d, r9d
xor r8d, edi
shr r10d, 0x10
mov rdi, qword [rsp + 0x18]
xor dword [rax + 0x4c], r11d
xor ebx, ecx
mov ecx, r9d
movzx r10d, r10b
mov r11, qword [rsp + 0x10]
movzx esi, ch
mov r13d, dword [r12 + r10*4]
xor r15d, dword [rax + 0x84]
mov r10d, esi
mov rsi, qword [rsp + 8]
mov dword [rsp + 0x74], r15d
mov r14d, dword [rdi + r10*4]
movzx r10d, r9b
shr r9d, 0x18
mov dword [rax + 0x1c], r15d
mov ebp, dword [r11 + r10*4]
mov ecx, dword [rsi + r9*4]
xor ecx, ebp
mov r9d, ecx
mov ecx, r8d
xor r9d, r13d
mov r15d, r9d
mov r9d, r8d
shr r9d, 0x18
xor r15d, r14d
mov r10d, dword [rsi + r9*4]
movzx esi, ch
mov rcx, r12
mov r9d, esi
mov esi, dword [rdi + r9*4]
movzx r9d, r8b
shr r8d, 0x10
mov rdi, r11
movzx r8d, r8b
mov dword [rsp + 0x60], esi
mov r9d, dword [r11 + r9*4]
mov r11d, r10d
mov esi, dword [rsp + 0x60]
xor r11d, r9d
xor r11d, dword [r12 + r8*4]
mov r8d, ebx
xor r11d, esi
mov rsi, qword [rsp + 8]
shr r8d, 0x18
mov esi, dword [rsi + r8*4]
mov r8d, ebx
shr r8d, 0x10
movzx r8d, r8b
xor r10d, esi
mov r8d, dword [r12 + r8*4]
movzx r12d, bl
movzx ebx, bh
mov r12d, dword [rdi + r12*4]
mov rdi, qword [rsp + 0x18]
mov ebx, ebx
xor r9d, r12d
xor esi, r12d
xor r9d, ebp
mov ebp, dword [rsp + 0x28]
xor esi, r8d
xor esi, dword [rdi + rbx*4]
mov dword [rsp + 0x48], esi
mov rsi, qword [rsp + 8]
mov ebx, ebp
mov r12d, ebp
shr r12d, 0x10
shr ebx, 0x18
mov ebx, dword [rsi + rbx*4]
movzx esi, r12b
mov esi, dword [rcx + rsi*4]
mov ecx, ebp
movzx ebp, ch
xor r10d, ebx
movzx ecx, cl
xor r8d, esi
mov ebp, ebp
xor r8d, r13d
mov ebp, dword [rdi + rbp*4]
mov r13, rdi
mov edi, dword [rsp + 0x60]
xor edi, ebp
mov r12d, edi
mov edi, r11d
xor r12d, r14d
mov r14, qword [rsp + 0x10]
xor edi, r8d
mov dword [rsp + 0x80], edi
mov edi, r9d
xor ebx, dword [r14 + rcx*4]
mov r14d, r15d
mov ecx, r9d
shr edi, 0x10
xor ebx, esi
xor r14d, r10d
xor edi, r11d
xor ebx, ebp
mov dword [rsp + 0x68], r14d
mov r14d, r9d
mov ebp, dword [rsp + 0x48]
xor ecx, ebx
shr r14d, 0x18
movzx edi, dil
mov dword [rsp + 0x8c], ecx
mov ecx, r10d
mov esi, r14d
mov r14d, r8d
shl ecx, 8
xor esi, r15d
shl r14d, 8
xor ecx, r11d
movzx esi, sil
and ecx, 0xff000000
or ecx, esi
mov esi, r14d
xor esi, ebp
and esi, 0xff0000
or ecx, esi
mov esi, r12d
shl esi, 8
xor esi, ebx
and esi, 0xff00
or ecx, esi
mov esi, r10d
shl esi, 0x10
mov dword [rax + 0x94], ecx
xor esi, ebp
and esi, 0xff000000
or esi, edi
mov edi, r8d
shl edi, 0x10
xor edi, ebx
and edi, 0xff0000
or esi, edi
shl r10d, 0x18
mov edi, r12d
shr r9d, 8
xor r10d, ebx
shr r8d, 8
mov r14d, esi
xor r9d, ebp
and r10d, 0xff000000
xor r8d, r15d
shr edi, 0x10
movzx r9d, r9b
and r8d, 0xff0000
mov ebx, dword [rax + 0x84]
xor edi, r15d
or r9d, r10d
mov r10d, dword [rax + 0x8c]
and edi, 0xff00
or r8d, r9d
mov r9d, r12d
xor ebx, ecx
or r14d, edi
shr r9d, 8
mov r15d, ebx
mov dword [rsp + 0x60], r14d
xor r9d, r11d
shr r15d, 0x10
mov dword [rax + 0x98], r14d
mov r11d, dword [rax + 0x88]
and r9d, 0xff00
or r8d, r9d
xor r11d, r14d
xor r10d, r8d
mov r9d, r8d
mov dword [rsp + 0x78], r8d
mov dword [rax + 0xc], r8d
mov r8d, dword [rsp + 0x50]
xor ecx, r8d
mov dword [rax + 0x3c], ecx
mov r8d, dword [rsp + 0x6c]
movzx ecx, r15b
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 8]
xor r8d, r14d
mov rbp, qword [rsp + 0x10]
xor dword [rax + 0x44], r9d
mov r14d, dword [rdi + rcx*4]
movzx ecx, bh
mov dword [rax + 0x40], r8d
mov r8d, r11d
mov ecx, ecx
shr r8d, 0x18
mov r15d, dword [r13 + rcx*4]
movzx ecx, bl
shr ebx, 0x18
mov r8d, dword [rsi + r8*4]
mov r9d, dword [rsi + rbx*4]
mov ebx, r11d
mov ecx, dword [rbp + rcx*4]
movzx esi, r11b
movzx ebx, bh
shr r11d, 0x10
mov ebx, ebx
xor r9d, ecx
movzx r11d, r11b
mov r13d, dword [r13 + rbx*4]
mov ebx, dword [rbp + rsi*4]
xor r9d, r14d
xor r9d, r15d
mov dword [rsp + 0x58], ebx
xor ebx, r8d
mov esi, ebx
xor esi, dword [rdi + r11*4]
mov dword [rsp + 0x50], r13d
mov rbx, rdi
mov r11d, esi
mov rsi, qword [rsp + 8]
xor r11d, r13d
mov r13d, r11d
mov r11d, r10d
shr r11d, 0x18
mov edi, dword [rsi + r11*4]
mov r11d, r10d
shr r11d, 0x10
movzx r11d, r11b
mov esi, dword [rbx + r11*4]
movzx r11d, r10b
mov ebx, r10d
mov ebp, dword [rbp + r11*4]
movzx ebx, bh
mov r11d, edi
mov r10d, ebx
mov rbx, qword [rsp + 0x18]
xor r11d, ebp
xor r11d, esi
xor r11d, dword [rbx + r10*4]
mov r10d, dword [rsp + 0x58]
mov dword [rsp + 0x28], r11d
mov r11, qword [rsp + 8]
xor ecx, r10d
mov r10d, dword [rsp + 0x68]
mov rbx, qword [rsp + 0x48]
xor ecx, ebp
shr r10d, 0x18
xor rbx, r12
mov r10d, dword [r11 + r10*4]
mov r11, qword [rsp + 0x80]
xor r8d, r10d
shr r11, 0x10
xor r8d, edi
mov rdi, qword [rsp + 0x20]
and r11d, 0xff
mov r11d, dword [rdi + r11*4]
mov rbp, qword [rsp + 0x18]
xor r14d, r11d
xor r14d, esi
movzx esi, bh
mov ebx, dword [rsp + 0x50]
mov esi, dword [rbp + rsi*4]
xor r15d, ebx
movzx ebx, byte [rsp + 0x8c]
xor r15d, esi
mov r12d, r15d
mov r15, qword [rsp + 0x10]
xor r10d, dword [r15 + rbx*4]
mov ebx, r9d
mov r15d, ecx
xor ebx, r8d
xor r10d, r11d
mov r11d, r8d
mov dword [rsp + 0x48], ebx
mov ebx, r13d
xor r10d, esi
mov esi, dword [rsp + 0x28]
xor ebx, r14d
shl r11d, 8
xor r15d, r10d
mov dword [rsp + 0x58], ebx
mov ebx, r14d
xor r11d, r13d
shl ebx, 8
and r11d, 0xff000000
mov dword [rsp + 0x68], r15d
xor ebx, esi
and ebx, 0xff0000
or r11d, ebx
mov ebx, r12d
shl ebx, 8
xor ebx, r10d
and ebx, 0xff00
or r11d, ebx
mov ebx, ecx
shr ebx, 0x18
xor ebx, r9d
movzx ebx, bl
or r11d, ebx
mov ebx, r14d
shr r14d, 8
mov r15d, r11d
mov dword [rax + 0x88], r11d
mov r11d, r8d
shl ebx, 0x10
shl r11d, 0x10
xor ebx, r10d
shl r8d, 0x18
xor r14d, r9d
xor r11d, esi
and ebx, 0xff0000
xor r8d, r10d
and r14d, 0xff0000
and r11d, 0xff000000
and r8d, 0xff000000
or r11d, ebx
mov ebx, r12d
or r14d, r8d
mov r8d, r12d
shr ebx, 0x10
shr r8d, 8
xor ebx, r9d
xor r8d, r13d
mov r9d, dword [rax + 0x78]
and ebx, 0xff00
and r8d, 0xff00
or r11d, ebx
mov ebx, ecx
shr ebx, 0x10
xor ebx, r13d
mov r13, qword [rsp + 0x10]
movzx ebx, bl
or r11d, ebx
or r8d, r14d
mov r14d, dword [rax + 0x7c]
shr ecx, 8
xor ecx, esi
mov dword [rax + 0x8c], r11d
xor r9d, r15d
xor r14d, r11d
movzx ecx, cl
mov r10d, r14d
mov r14d, dword [rax + 0x80]
or ecx, r8d
mov r8d, dword [rsp + 0x54]
mov dword [rax + 0x90], ecx
xor r14d, ecx
xor r8d, r15d
mov ebx, r14d
mov r14d, dword [rsp + 0x70]
mov dword [rax + 0x30], r8d
xor r11d, r14d
mov r14d, dword [rsp + 0x40]
mov dword [rax + 0x34], r11d
xor ecx, r14d
mov dword [rax + 0x38], ecx
mov ecx, r9d
shr ecx, 0x10
movzx ecx, cl
mov r14d, dword [rdi + rcx*4]
mov ecx, r9d
movzx esi, ch
mov r8d, esi
mov rsi, qword [rsp + 8]
mov dword [rsp + 0x50], r14d
mov r11d, dword [rbp + r8*4]
movzx r8d, r9b
shr r9d, 0x18
mov r8d, dword [r13 + r8*4]
mov ecx, dword [rsi + r9*4]
xor ecx, r8d
mov r9d, ecx
mov ecx, r10d
xor r9d, r14d
mov r14d, r9d
mov r9d, r10d
shr r9d, 0x18
xor r14d, r11d
mov r9d, dword [rsi + r9*4]
movzx esi, ch
mov esi, esi
mov esi, dword [rbp + rsi*4]
mov ecx, r9d
xor r11d, esi
mov dword [rsp + 0x40], r11d
movzx r11d, r10b
shr r10d, 0x10
mov r11d, dword [r13 + r11*4]
movzx r10d, r10b
mov r13, rdi
mov ebp, dword [rdi + r10*4]
mov r10d, ebx
xor ecx, r11d
xor r8d, r11d
mov r11d, ebx
shr r10d, 0x18
xor ebp, ecx
shr r11d, 0x10
mov rcx, qword [rsp + 8]
xor ebp, esi
movzx r11d, r11b
mov rsi, qword [rsp + 0x10]
mov edi, dword [rdi + r11*4]
movzx r11d, bl
mov r10d, dword [rcx + r10*4]
movzx ebx, bh
mov esi, dword [rsi + r11*4]
mov ecx, dword [rsp + 0x50]
mov ebx, ebx
xor r9d, r10d
xor r10d, esi
xor ecx, edi
xor r8d, esi
mov rsi, qword [rsp + 8]
xor r10d, edi
mov rdi, qword [rsp + 0x18]
mov r11d, dword [rdi + rbx*4]
mov rbx, qword [rsp + 0x58]
xor r11d, r10d
mov r10d, dword [rsp + 0x48]
shr r10d, 0x18
mov r10d, dword [rsi + r10*4]
mov esi, dword [rsp + 0x40]
xor r9d, r10d
shr rbx, 0x10
and ebx, 0xff
mov r13d, dword [r13 + rbx*4]
mov rbx, qword [rsp + 0x28]
xor rbx, r12
xor ecx, r13d
movzx ebx, bh
mov r12d, dword [rdi + rbx*4]
movzx edi, byte [rsp + 0x68]
mov rbx, qword [rsp + 0x10]
xor esi, r12d
xor r10d, dword [rbx + rdi*4]
mov edi, ebp
xor r10d, r13d
xor edi, ecx
mov ebx, r10d
mov r10d, r14d
and edi, 0xff0000
xor r10d, r9d
xor ebx, r12d
mov r12d, r8d
and r10d, 0xff000000
or r10d, edi
mov edi, r8d
xor edi, ebx
movzx edi, dil
or r10d, edi
mov edi, r11d
xor edi, esi
and edi, 0xff00
or r10d, edi
mov edi, r8d
mov dword [rax + 0x78], r10d
mov r13d, r10d
mov r10d, r9d
shr edi, 0x18
shl r10d, 8
xor edi, r14d
xor r10d, ebp
movzx edi, dil
and r10d, 0xff000000
or r10d, edi
mov edi, ecx
shl edi, 8
xor edi, r11d
and edi, 0xff0000
or r10d, edi
mov edi, esi
shl edi, 8
xor edi, ebx
and edi, 0xff00
or r10d, edi
mov edi, r9d
shl edi, 0x10
shr r12d, 0x10
mov dword [rax + 0x7c], r10d
shl r9d, 0x18
xor edi, r11d
xor r12d, ebp
shr r8d, 8
and edi, 0xff000000
movzx r12d, r12b
xor r9d, ebx
xor r8d, r11d
or edi, r12d
mov r12d, ecx
shr ecx, 8
movzx r8d, r8b
shl r12d, 0x10
and r9d, 0xff000000
xor ecx, r14d
xor r12d, ebx
or r8d, r9d
and ecx, 0xff0000
and r12d, 0xff0000
or ecx, r8d
mov r8d, 1
or edi, r12d
mov r12d, esi
shr esi, 8
shr r12d, 0x10
xor esi, ebp
xor r12d, r14d
and esi, 0xff00
and r12d, 0xff00
or ecx, esi
or edi, r12d
mov dword [rsp + 0x40], ecx
cmp qword [rsp + 0xf0], 4
mov dword [rsp + 0x50], edi
mov dword [rax + 0x80], edi
mov dword [rax + 0x84], ecx
jbe 0x1400b70a8
mov ecx, dword [rdx]
bswap ecx
sub qword [rsp + 0xf0], 4
add rdx, 4
mov dword [rsp + 0x28], ecx
jmp 0x1400b6934
mov ecx, dword [rsp + 0xf0]
test ecx, ecx
jne 0x1400b8120
mov edx, dword [rsp + 0x28]
mov dword [rax + 4], r9d
mov dword [rax], edx
jmp 0x1400b70e9
mov esi, dword [rsp + 0xf0]
add r9d, dword [rsp + 0xf0]
mov ecx, ebx
lea r8d, [rsi - 1]
jmp 0x1400b67f9
mov ecx, dword [rdx]
bswap ecx
sub qword [rsp + 0xf0], 4
add rdx, 4
mov dword [rsp + 0x28], ecx
mov esi, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x28]
mov r9d, dword [rax + 0x48]
mov r10d, dword [rsp + 0x58]
xor esi, ecx
mov ecx, dword [rsp + 0x38]
xor r11d, dword [rax + 0x30]
xor r9d, r11d
mov edi, dword [rsp + 0x34]
mov r8d, dword [rax + 0x4c]
mov dword [rsp + 0x54], esi
xor r10d, ecx
mov r14, qword [rsp + 0x20]
xor r15d, dword [rax + 0x3c]
mov dword [rax + 0x74], esi
mov dword [rax + 0x98], r10d
mov r10d, r9d
xor ebx, edi
xor r8d, edi
shr r10d, 0x10
mov rdi, qword [rsp + 0x18]
mov esi, r11d
mov dword [rax + 0x58], r11d
xor dword [rax + 0x94], ebx
mov ebx, r9d
movzx r10d, r10b
xor dword [rax + 0x90], esi
movzx esi, bh
mov r13d, dword [r14 + r10*4]
mov ebx, r8d
mov r10d, esi
mov dword [rsp + 0x64], r11d
mov r11d, dword [rax + 0x50]
movzx ebx, bh
mov dword [rsp + 0x60], r15d
mov r12d, dword [rdi + r10*4]
movzx r10d, r9b
shr r9d, 0x18
mov dword [rax + 0x64], r15d
mov r15, qword [rsp + 8]
xor r11d, ecx
mov rcx, qword [rsp + 0x10]
mov esi, dword [r15 + r9*4]
mov r9d, r8d
shr r9d, 0x18
mov ebp, dword [rcx + r10*4]
mov r10d, dword [r15 + r9*4]
mov r9d, ebx
mov edi, dword [rdi + r9*4]
movzx r9d, r8b
shr r8d, 0x10
xor esi, ebp
mov r9d, dword [rcx + r9*4]
movzx r8d, r8b
mov ebx, r10d
xor esi, r13d
xor esi, r12d
xor ebx, r9d
xor ebx, dword [r14 + r8*4]
mov r8d, r11d
shr r8d, 0x18
xor ebx, edi
mov r15d, dword [r15 + r8*4]
mov r8d, r11d
shr r8d, 0x10
movzx r8d, r8b
xor r10d, r15d
mov r8d, dword [r14 + r8*4]
movzx r14d, r11b
mov r14d, dword [rcx + r14*4]
mov ecx, r11d
movzx ecx, ch
mov r11d, ecx
mov rcx, qword [rsp + 0x18]
xor r15d, r14d
xor r9d, r14d
xor r15d, r8d
xor r9d, ebp
mov rbp, qword [rsp + 8]
mov r14, qword [rsp + 0x20]
xor r15d, dword [rcx + r11*4]
mov ecx, dword [rsp + 0x28]
mov r11d, ecx
shr r11d, 0x18
mov r11d, dword [rbp + r11*4]
mov ebp, ecx
movzx ecx, ch
shr ebp, 0x10
movzx ebp, bpl
xor r10d, r11d
mov ebp, dword [r14 + rbp*4]
xor r8d, ebp
xor r8d, r13d
mov r13d, ecx
mov rcx, qword [rsp + 0x18]
mov r13d, dword [rcx + r13*4]
movzx ecx, byte [rsp + 0x28]
xor edi, r13d
xor r12d, edi
mov rdi, qword [rsp + 0x10]
xor r11d, dword [rdi + rcx*4]
mov edi, esi
xor r11d, ebp
mov ebp, ebx
xor edi, r10d
xor ebp, r8d
mov dword [rsp + 0x74], edi
mov edi, r9d
xor r11d, r13d
mov dword [rsp + 0x78], ebp
mov ebp, r10d
shr edi, 0x18
mov r13d, r9d
shl ebp, 8
xor edi, esi
xor r13d, r11d
mov ecx, ebp
movzx edi, dil
mov ebp, r9d
mov dword [rsp + 0x88], r13d
xor ecx, ebx
shr ebp, 0x10
and ecx, 0xff000000
xor ebp, ebx
or ecx, edi
mov edi, r8d
movzx ebp, bpl
shl edi, 8
xor edi, r15d
and edi, 0xff0000
or ecx, edi
mov edi, r12d
shl edi, 8
xor edi, r11d
and edi, 0xff00
or ecx, edi
mov edi, r10d
shl edi, 0x10
mov dword [rax + 0x4c], ecx
xor edi, r15d
and edi, 0xff000000
or edi, ebp
mov ebp, r8d
shl ebp, 0x10
xor ebp, r11d
and ebp, 0xff0000
or edi, ebp
shl r10d, 0x18
mov ebp, r12d
shr r9d, 8
xor r10d, r11d
shr r8d, 8
xor r9d, r15d
and r10d, 0xff000000
xor r8d, esi
shr ebp, 0x10
movzx r9d, r9b
and r8d, 0xff0000
xor ebp, esi
or r9d, r10d
and ebp, 0xff00
or r8d, r9d
mov r9d, r12d
or edi, ebp
shr r9d, 8
mov esi, edi
mov dword [rsp + 0x48], edi
xor r9d, ebx
mov ebx, dword [rax + 0x40]
mov dword [rax + 0x50], edi
and r9d, 0xff00
xor ebx, edi
mov edi, dword [rax + 0x44]
or r8d, r9d
mov r9d, dword [rax + 0x3c]
mov r11d, r8d
mov dword [rsp + 0x58], r8d
xor edi, r8d
mov dword [rax + 0x54], r8d
mov r8d, dword [rsp + 0x40]
xor r9d, ecx
xor ecx, r8d
mov r8d, dword [rsp + 0x68]
mov dword [rax + 0x84], ecx
xor r8d, esi
mov esi, r9d
shr esi, 0x10
mov dword [rax + 0x88], r8d
movzx ecx, sil
xor dword [rax + 0x8c], r11d
mov r13, qword [rsp + 0x18]
mov ebp, dword [r14 + rcx*4]
mov ecx, r9d
mov r10, qword [rsp + 8]
movzx esi, ch
mov rcx, qword [rsp + 0x10]
mov r8d, esi
mov dword [rsp + 0x28], ebp
mov r11d, dword [r13 + r8*4]
movzx r8d, r9b
shr r9d, 0x18
mov r8d, dword [rcx + r8*4]
mov esi, dword [r10 + r9*4]
mov r9d, ebx
movzx ecx, bh
shr r9d, 0x18
mov r9d, dword [r10 + r9*4]
xor esi, r8d
mov r10d, ecx
mov rcx, qword [rsp + 0x10]
xor esi, ebp
mov ebp, dword [r13 + r10*4]
movzx r10d, bl
shr ebx, 0x10
mov r13d, dword [rcx + r10*4]
movzx r10d, bl
xor esi, r11d
mov ebx, r13d
mov dword [rsp + 0x20], r13d
xor ebx, r9d
xor ebx, dword [r14 + r10*4]
mov r10d, edi
xor r12, r15
xor ebx, ebp
shr r10d, 0x18
xor r11d, ebp
mov dword [rsp + 0x40], ebx
mov rbx, qword [rsp + 8]
mov r13d, dword [rbx + r10*4]
mov r10d, edi
mov rbx, r14
shr r10d, 0x10
movzx r10d, r10b
mov r14d, dword [r14 + r10*4]
movzx r10d, dil
mov r10d, dword [rcx + r10*4]
mov ecx, edi
movzx edi, ch
mov rcx, qword [rsp + 0x18]
mov dword [rsp + 0x68], r10d
mov edi, edi
xor r10d, r13d
xor r10d, r14d
xor r10d, dword [rcx + rdi*4]
mov edi, dword [rsp + 0x20]
mov qword [rsp + 0x20], rbx
mov rcx, qword [rsp + 8]
xor r8d, edi
mov edi, dword [rsp + 0x68]
xor r8d, edi
mov edi, dword [rsp + 0x74]
shr edi, 0x18
mov edi, dword [rcx + rdi*4]
mov ecx, dword [rsp + 0x28]
xor r9d, edi
xor r9d, r13d
mov r13, qword [rsp + 0x78]
shr r13, 0x10
and r13d, 0xff
mov r13d, dword [rbx + r13*4]
mov r15, qword [rsp + 0x18]
mov rbx, r12
movzx ebp, byte [rsp + 0x88]
movzx ebx, bh
xor ecx, r13d
mov r12d, dword [r15 + rbx*4]
mov ebx, dword [rsp + 0x40]
mov r15d, r8d
xor ecx, r14d
mov r14, qword [rsp + 0x10]
xor r11d, r12d
xor edi, dword [r14 + rbp*4]
mov ebp, esi
mov r14, qword [rsp + 0x20]
xor edi, r13d
xor ebp, r9d
mov r13, qword [rsp + 0x18]
xor edi, r12d
mov r12d, ebx
mov dword [rsp + 0x68], ebp
mov ebp, r9d
xor r12d, ecx
shl ebp, 8
xor r15d, edi
mov dword [rsp + 0x40], r12d
mov r12d, ecx
xor ebp, ebx
shl r12d, 8
and ebp, 0xff000000
mov dword [rsp + 0x74], r15d
xor r12d, r10d
and r12d, 0xff0000
or ebp, r12d
mov r12d, r11d
shl r12d, 8
xor r12d, edi
and r12d, 0xff00
or ebp, r12d
mov r12d, r8d
shr r12d, 0x18
xor r12d, esi
movzx r12d, r12b
or ebp, r12d
mov r12d, ecx
shr ecx, 8
mov r15d, ebp
mov dword [rax + 0x40], ebp
mov ebp, r9d
shl r12d, 0x10
shl ebp, 0x10
xor r12d, edi
shl r9d, 0x18
xor ecx, esi
xor ebp, r10d
and r12d, 0xff0000
xor r9d, edi
and ecx, 0xff0000
and ebp, 0xff000000
and r9d, 0xff000000
mov edi, dword [rax + 0x38]
or ebp, r12d
mov r12d, r11d
shr r12d, 0x10
xor r12d, esi
mov esi, r9d
mov r9d, r11d
and r12d, 0xff00
shr r9d, 8
or esi, ecx
or ebp, r12d
mov r12d, r8d
xor r9d, ebx
shr r12d, 0x10
mov ecx, r9d
xor r12d, ebx
and ecx, 0xff00
movzx r12d, r12b
or ebp, r12d
or ecx, esi
shr r8d, 8
mov esi, dword [rax + 0x30]
xor r8d, r10d
mov dword [rax + 0x44], ebp
movzx r8d, r8b
xor esi, r15d
or ecx, r8d
mov r8d, dword [rsp + 0x6c]
mov ebx, esi
mov esi, dword [rax + 0x34]
xor edi, ecx
mov dword [rax + 0x48], ecx
xor r8d, r15d
xor esi, ebp
mov dword [rax + 0x78], r8d
mov r8d, dword [rsp + 0x70]
xor ebp, r8d
mov r8d, dword [rsp + 0x50]
mov dword [rax + 0x7c], ebp
mov rbp, qword [rsp + 0x10]
xor ecx, r8d
mov r8d, ebx
shr r8d, 0x10
mov dword [rax + 0x80], ecx
movzx ecx, r8b
mov r14d, dword [r14 + rcx*4]
movzx ecx, bh
mov r8d, ecx
mov rcx, qword [rsp + 8]
mov r9d, dword [r13 + r8*4]
movzx r8d, bl
shr ebx, 0x18
mov dword [rsp + 0x28], r14d
mov r12d, dword [rcx + rbx*4]
mov ebx, esi
mov r8d, dword [rbp + r8*4]
shr ebx, 0x18
mov ebx, dword [rcx + rbx*4]
mov ecx, esi
xor r12d, r8d
movzx ebp, ch
xor r12d, r14d
mov ebp, ebp
xor r12d, r9d
mov r14d, dword [r13 + rbp*4]
mov rcx, qword [rsp + 0x10]
movzx ebp, sil
shr esi, 0x10
movzx esi, sil
mov r13d, dword [rcx + rbp*4]
mov rcx, qword [rsp + 0x20]
mov ebp, ebx
xor r9d, r14d
xor ebp, r13d
xor ebp, dword [rcx + rsi*4]
mov esi, edi
xor r8d, r13d
xor ebp, r14d
mov r14, qword [rsp + 8]
shr esi, 0x18
mov r13d, dword [r14 + rsi*4]
mov esi, edi
movzx r14d, dil
shr esi, 0x10
movzx esi, sil
xor ebx, r13d
mov esi, dword [rcx + rsi*4]
mov ecx, dword [rsp + 0x28]
xor ecx, esi
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsp + 0x10]
mov r14d, dword [rcx + r14*4]
mov ecx, edi
movzx edi, ch
mov rcx, qword [rsp + 0x20]
xor r13d, r14d
mov edi, edi
xor r8d, r14d
mov r14, qword [rsp + 8]
xor r13d, esi
mov rsi, qword [rsp + 0x18]
xor r13d, dword [rsi + rdi*4]
mov edi, dword [rsp + 0x68]
mov esi, r13d
shr edi, 0x18
mov r13d, dword [r14 + rdi*4]
mov rdi, qword [rsp + 0x40]
xor ebx, r13d
shr rdi, 0x10
xor r10, r11
movzx r11d, byte [rsp + 0x74]
and edi, 0xff
mov r14d, dword [rcx + rdi*4]
mov ecx, dword [rsp + 0x28]
xor ecx, r14d
mov dword [rsp + 0x28], ecx
mov rcx, r10
movzx edi, ch
mov rcx, qword [rsp + 0x10]
mov r10, rdi
mov rdi, qword [rsp + 0x18]
xor r13d, dword [rcx + r11*4]
mov ecx, dword [rsp + 0x28]
mov r11d, ebp
mov r10d, dword [rdi + r10*4]
xor r13d, r14d
mov r14d, r8d
mov edi, r13d
xor r11d, ecx
mov r13d, r8d
shl ecx, 8
xor r9d, r10d
xor edi, r10d
mov r10d, r12d
shr r13d, 0x18
xor r10d, ebx
and r11d, 0xff0000
xor r13d, r12d
and r10d, 0xff000000
movzx r13d, r13b
or r10d, r11d
mov r11d, r8d
xor r11d, edi
movzx r11d, r11b
or r10d, r11d
mov r11d, esi
xor r11d, r9d
and r11d, 0xff00
or r10d, r11d
mov r11d, ebx
shl r11d, 8
mov dword [rax + 0x30], r10d
xor r11d, ebp
and r11d, 0xff000000
or r11d, r13d
mov r13d, ecx
mov ecx, dword [rsp + 0x28]
xor r13d, esi
and r13d, 0xff0000
or r11d, r13d
mov r13d, r9d
shl r13d, 8
xor r13d, edi
and r13d, 0xff00
or r11d, r13d
mov r13d, ebx
shl r13d, 0x10
shr r14d, 0x10
mov dword [rax + 0x34], r11d
shl ecx, 0x10
xor r13d, esi
xor r14d, ebp
shl ebx, 0x18
and r13d, 0xff000000
movzx r14d, r14b
shr r8d, 8
xor ebx, edi
or r13d, r14d
mov r14d, ecx
xor r8d, esi
and ebx, 0xff000000
xor r14d, edi
movzx r8d, r8b
and r14d, 0xff0000
or r8d, ebx
or r13d, r14d
mov r14d, r9d
shr r9d, 8
shr r14d, 0x10
xor r9d, ebp
xor r14d, r12d
and r9d, 0xff00
and r14d, 0xff00
or r13d, r14d
mov dword [rsp + 0x40], r13d
mov dword [rax + 0x38], r13d
mov ecx, dword [rsp + 0x28]
shr ecx, 8
xor ecx, r12d
and ecx, 0xff0000
or ecx, r8d
mov r8d, 3
or ecx, r9d
cmp qword [rsp + 0xf0], 4
mov dword [rsp + 0x50], ecx
mov dword [rax + 0x3c], ecx
jbe 0x1400b70a8
mov ecx, dword [rdx]
bswap ecx
sub qword [rsp + 0xf0], 4
add rdx, 4
mov dword [rsp + 0x28], ecx
jmp 0x1400b7181
mov ebx, dword [rax + 0x2c]
mov esi, dword [rax + 0x14]
mov r11d, dword [rax + 0xc]
mov r10d, dword [rax + 0x10]
mov dword [rsp + 0x48], ebx
mov ebx, dword [rax + 0x18]
mov dword [rsp + 0x34], esi
mov esi, dword [rax + 0x50]
mov dword [rsp + 0x38], ebx
mov ebx, dword [rax + 0x3c]
mov dword [rsp + 0x68], esi
mov esi, dword [rax + 0x40]
mov dword [rsp + 0x50], ebx
mov ebx, dword [rax + 0x30]
mov dword [rsp + 0x6c], esi
mov esi, dword [rax + 0x34]
mov dword [rsp + 0x54], ebx
mov ebx, dword [rax + 0x38]
mov dword [rsp + 0x70], esi
lea rsi, [0x1402c9320]
mov r15d, dword [rax + 0x1c]
mov dword [rsp + 0x40], ebx
lea rbx, [0x1402c8f20]
mov qword [rsp + 0x20], rsi
lea rsi, [0x1402c8b20]
mov qword [rsp + 0x18], rbx
lea rbx, [0x1402c9720]
mov qword [rsp + 0x10], rsi
mov qword [rsp + 8], rbx
jmp 0x1400b791b
mov esi, dword [rax + 0x74]
mov ebx, dword [rax + 0x54]
mov r11d, dword [rax + 0x58]
mov r15d, dword [rax + 0x64]
mov dword [rsp + 0x54], esi
mov esi, dword [rax + 0x5c]
mov dword [rsp + 0x34], esi
mov esi, dword [rax + 0x60]
mov dword [rsp + 0x38], esi
mov esi, dword [rax + 0x98]
mov dword [rsp + 0x58], esi
mov esi, dword [rax + 0x84]
mov dword [rsp + 0x40], esi
mov esi, dword [rax + 0x88]
mov dword [rsp + 0x68], esi
mov esi, dword [rax + 0x78]
mov dword [rsp + 0x6c], esi
mov esi, dword [rax + 0x7c]
mov dword [rsp + 0x70], esi
mov esi, dword [rax + 0x80]
mov dword [rsp + 0x50], esi
lea rsi, [0x1402c9320]
mov qword [rsp + 0x20], rsi
lea rsi, [0x1402c8f20]
mov qword [rsp + 0x18], rsi
lea rsi, [0x1402c8b20]
mov qword [rsp + 0x10], rsi
lea rsi, [0x1402c9720]
mov qword [rsp + 8], rsi
jmp 0x1400b8155
xor ecx, ecx
jmp 0x1400b70e3