Function at 0x5294f0
Capabilities:
Hash data using murmur3
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, 0x2a8
vmovups xmmword [rsp + 0x280], xmm6
vmovups xmmword [rsp + 0x290], xmm7
movzx eax, byte [rcx]
mov r15, rcx
mov dword [rsp + 0x2f8], edx
movzx edx, byte [rcx + 0x10]
mov r9d, eax
movzx ecx, byte [rcx + 0x20]
movzx esi, byte [r15 + 0x30]
lea ebx, [rax + rcx]
sub r9d, ecx
mov r8d, ecx
lea r11d, [rdx + rsi]
mov ecx, esi
shl r8d, 4
lea r10d, [r8 + rax]
shl ecx, 6
sub eax, r8d
lea ecx, [rcx + rdx*4]
lea r14d, [rbx + r11]
movzx r8d, cl
sar ecx, 8
sub r8d, ecx
mov ecx, edx
shl edx, 6
lea r12d, [r10 + r8]
sub ecx, esi
sub r10d, r8d
lea esi, [rdx + rsi*4]
shl ecx, 4
mov dword [rsp + 0xc], r10d
movzx r10d, byte [r15 + 0x38]
lea ebp, [r9 + rcx]
movzx edx, sil
sar esi, 8
sub edx, esi
sub r9d, ecx
sub ebx, r11d
lea edi, [rax + rdx]
sub eax, edx
movzx edx, byte [r15 + 0x28]
mov dword [rsp + 8], ebx
mov dword [rsp + 0x34], eax
movzx eax, byte [r15 + 8]
mov dword [rsp + 0x14], r9d
movzx r9d, byte [r15 + 0x18]
mov dword [rsp], edi
mov r11d, edx
lea r8d, [rax + rdx]
shl r11d, 4
mov r13d, eax
lea ecx, [r11 + rax]
mov esi, r9d
sub eax, r11d
mov r11d, r10d
sub r13d, edx
sub esi, r10d
mov dword [rsp + 0x10], eax
shl r11d, 6
shl esi, 4
mov edx, r13d
lea r11d, [r11 + r9*4]
lea r13d, [r9 + r10]
shl r9d, 6
movzx edi, r11b
lea r9d, [r9 + r10*4]
mov dword [rsp + 0x28], r13d
sar r11d, 8
add r13d, r8d
lea r10d, [rdx + rsi]
sub edi, r11d
movzx ebx, r9b
sub r8d, dword [rsp + 0x28]
shl r10d, 2
lea eax, [r10 + rbp]
sar r9d, 8
lea r11d, [r14 + r13]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x10]
sub ebx, r9d
mov dword [rsp + 0x18], r11d
lea r11d, [rcx + rdi]
add r11d, r11d
lea r9d, [r11 + r12]
mov dword [rsp + 0x1c], r9d
lea r9d, [rax + rbx]
mov eax, dword [rsp]
shl r9d, 3
add eax, r9d
shl r8d, 4
sub ecx, edi
mov edi, dword [rsp + 0xc]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 8]
sub edx, esi
shl ecx, 5
mov esi, dword [rsp + 0x14]
shl edx, 6
sub r14d, r13d
sub ebp, r10d
sub r12d, r11d
add edi, ecx
add eax, r8d
mov dword [rsp + 0x2c], edi
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x10]
lea edi, [rdx + rsi]
sub esi, edx
mov dword [rsp + 0x30], edi
sub eax, ebx
mov ebx, dword [rsp + 0x34]
shl eax, 7
lea edi, [rax + rbx]
sub ebx, eax
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x38], r14d
mov edi, dword [rsp + 8]
mov r14d, dword [rsp]
mov dword [rsp + 0x4c], esi
movzx eax, byte [r15 + 4]
mov dword [rsp + 0x50], ebx
mov r10d, dword [rsp + 0xc]
mov dword [rsp + 0x3c], ebp
sub edi, r8d
movzx r8d, byte [r15 + 0x24]
sub r14d, r9d
movzx r9d, byte [r15 + 0x34]
mov dword [rsp + 0x44], edi
movzx edx, byte [r15 + 0x14]
mov dword [rsp + 0x40], r14d
sub r10d, ecx
lea esi, [rax + r8]
mov r13d, r8d
mov dword [rsp + 0x48], r10d
shl r13d, 4
lea r11d, [r13 + rax]
mov ecx, r13d
mov r13d, eax
lea ebx, [rdx + r9]
sub r13d, r8d
mov r8d, r9d
shl r8d, 6
mov r10d, r13d
sub eax, ecx
lea ecx, [r8 + rdx*4]
mov r13d, edx
shl edx, 6
lea ebp, [rsi + rbx]
sub r13d, r9d
movzx r8d, cl
lea r9d, [rdx + r9*4]
sar ecx, 8
sub r8d, ecx
movzx edx, r9b
mov ecx, r13d
sar r9d, 8
shl ecx, 4
lea r13d, [r11 + r8]
sub edx, r9d
sub r11d, r8d
lea r14d, [r10 + rcx]
mov r8d, r10d
mov dword [rsp + 0x5c], r11d
lea r9d, [rax + rdx]
sub r8d, ecx
movzx ecx, byte [r15 + 0x2c]
sub eax, edx
mov dword [rsp + 0xc], r9d
mov r9d, esi
movzx edx, byte [r15 + 0x1c]
sub r9d, ebx
mov dword [rsp + 0x14], eax
movzx ebx, byte [r15 + 0x3c]
movzx eax, byte [r15 + 0xc]
mov dword [rsp + 0x10], r8d
mov r8d, ecx
mov dword [rsp + 0x58], r9d
shl r8d, 4
lea r11d, [rax + rcx]
mov esi, eax
lea r9d, [r8 + rax]
sub eax, r8d
mov r8d, ebx
shl r8d, 6
sub esi, ecx
lea r8d, [r8 + rdx*4]
mov ecx, esi
lea esi, [rdx + rbx]
movzx r10d, r8b
sar r8d, 8
sub r10d, r8d
mov r8d, edx
shl edx, 6
lea edi, [r9 + r10]
sub r8d, ebx
sub r9d, r10d
shl r8d, 4
add edi, edi
shl r9d, 5
lea ebx, [rdx + rbx*4]
mov dword [rsp], edi
lea edi, [rcx + r8]
movzx edx, bl
sar ebx, 8
sub edx, ebx
shl edi, 2
sub ecx, r8d
mov dword [rsp + 8], edi
lea edi, [rax + rdx]
sub eax, edx
mov edx, dword [rsp]
lea ebx, [r11 + rsi]
mov r8d, ecx
mov ecx, dword [rsp + 0x18]
sub r11d, esi
mov dword [rsp + 0x68], ebx
mov esi, eax
add ebx, ebp
shl edi, 3
shl r11d, 4
shl r8d, 6
lea eax, [rdx + r13]
shl esi, 7
imul eax, eax, 0x3c
lea r10d, [rcx + rbx]
sub ecx, ebx
mov dword [rsp + 0xc0], ecx
mov ecx, dword [rsp + 0x1c]
mov dword [rsp + 0x54], r10d
mov edx, eax
movzx eax, ax
sar edx, 0x10
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov dword [rsp + 0x84], edx
mov dword [rsp + 0xc4], ecx
mov r10d, dword [rsp + 8]
mov ebx, dword [rsp + 0x5c]
lea eax, [r10 + r14]
mov r10d, dword [rsp + 0x58]
lea ecx, [rax + rax]
mov edx, eax
movzx eax, cx
mov ecx, dword [rsp + 0x20]
sar edx, 0xf
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov dword [rsp + 0x88], edx
mov edx, dword [rsp + 0xc]
mov dword [rsp + 0xc8], ecx
mov ecx, dword [rsp + 0x24]
lea eax, [rdi + rdx]
imul eax, eax, 0x78
mov edx, eax
movzx eax, ax
sar edx, 0x10
sub ebp, dword [rsp + 0x68]
add eax, edx
sub r13d, dword [rsp]
sub r14d, dword [rsp + 8]
lea edx, [rcx + rax]
sub ecx, eax
lea eax, [r11 + r10]
mov dword [rsp + 0xcc], ecx
imul r13d, r13d, 0xbd
lea ecx, [rax*4]
sar eax, 0xe
mov dword [rsp + 0x8c], edx
mov edx, eax
movzx eax, cx
mov ecx, dword [rsp + 0x28]
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov eax, ebx
add eax, r9d
mov dword [rsp + 0xd0], ecx
mov ecx, dword [rsp + 0x2c]
imul eax, eax, 0xf0
mov dword [rsp + 0x90], edx
mov edx, eax
movzx eax, ax
sar edx, 0x10
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov eax, dword [rsp + 0x10]
mov dword [rsp + 0xd4], ecx
mov dword [rsp + 0x94], edx
add eax, r8d
lea ecx, [rax*8]
sar eax, 0xd
mov edx, eax
movzx eax, cx
mov ecx, dword [rsp + 0x30]
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov eax, dword [rsp + 0x14]
mov dword [rsp + 0xd8], ecx
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x98], edx
add eax, esi
imul eax, eax, 0xdf
mov edx, eax
movzx eax, ax
sar edx, 0x10
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov dword [rsp + 0x9c], edx
mov edx, dword [rsp + 0x38]
mov dword [rsp + 0xdc], ecx
mov ecx, ebp
sar ebp, 0x1f
shl ecx, 4
movzx eax, cx
mov ecx, r13d
add ebp, eax
sar ecx, 0x10
lea eax, [rdx + rbp]
sub edx, ebp
mov dword [rsp + 0xa0], eax
movzx eax, r13w
mov r13d, r14d
add eax, ecx
mov dword [rsp + 0xe0], edx
shl r13d, 5
lea edx, [r12 + rax]
sub r12d, eax
sar r14d, 0xb
mov dword [rsp + 0xe4], r12d
movzx eax, r13w
mov dword [rsp + 0xa4], edx
mov edx, dword [rsp + 0x3c]
add r14d, eax
mov ecx, dword [rsp + 0x40]
lea eax, [rdx + r14]
sub edx, r14d
mov dword [rsp + 0xe8], edx
mov edx, dword [rsp + 0xc]
mov dword [rsp + 0xa8], eax
sub edx, edi
mov edi, dword [rsp + 0x44]
imul eax, edx, 0x79
mov edx, eax
movzx eax, ax
sar edx, 0x10
add eax, edx
lea edx, [rcx + rax]
sub ecx, eax
mov eax, r10d
mov r10d, dword [rsp + 0x10]
sub eax, r11d
mov dword [rsp + 0xac], edx
mov r11d, ebx
mov ebx, dword [rsp + 0x50]
mov edx, eax
sar eax, 0xa
sub r11d, r9d
mov dword [rsp + 0xec], ecx
shl edx, 6
imul r11d, r11d, 0xf2
movzx ecx, byte [r15 + 0x22]
movzx edx, dx
sub r10d, r8d
add eax, edx
shl r10d, 7
lea edx, [rdi + rax]
sub edi, eax
movzx eax, r11w
mov dword [rsp + 0xf0], edi
mov edi, dword [rsp + 0x48]
sar r11d, 0x10
mov r8d, ecx
add r11d, eax
mov dword [rsp + 0xb0], edx
shl r8d, 4
lea eax, [rdi + r11]
mov dword [rsp + 0xb4], eax
mov eax, edi
mov edi, dword [rsp + 0x4c]
sub eax, r11d
mov dword [rsp + 0xf4], eax
movzx eax, r10w
sar r10d, 0x10
add r10d, eax
lea eax, [rdi + r10]
mov dword [rsp + 0xb8], eax
mov eax, edi
sub eax, r10d
mov dword [rsp + 0xf8], eax
mov eax, dword [rsp + 0x14]
sub eax, esi
movzx esi, byte [r15 + 0x32]
imul eax, eax, 0xe3
movzx edx, ax
sar eax, 0x10
add eax, edx
lea edx, [rbx + rax]
sub ebx, eax
movzx eax, byte [r15 + 2]
mov dword [rsp + 0xbc], edx
movzx edx, byte [r15 + 0x12]
mov dword [rsp + 0xfc], ebx
lea ebx, [rax + rcx]
mov r9d, eax
lea r10d, [r8 + rax]
sub r9d, ecx
mov ecx, esi
lea r11d, [rdx + rsi]
shl ecx, 6
sub eax, r8d
lea ecx, [rcx + rdx*4]
lea r14d, [rbx + r11]
movzx r8d, cl
sar ecx, 8
sub r8d, ecx
mov ecx, edx
shl edx, 6
lea r12d, [r10 + r8]
sub ecx, esi
sub ebx, r11d
lea esi, [rdx + rsi*4]
shl ecx, 4
sub r10d, r8d
mov dword [rsp + 0xc], ebx
lea ebp, [r9 + rcx]
movzx edx, sil
sar esi, 8
mov dword [rsp + 0x10], r10d
sub edx, esi
sub r9d, ecx
lea edi, [rax + rdx]
sub eax, edx
mov dword [rsp], r9d
movzx r9d, byte [r15 + 0x1a]
mov dword [rsp + 8], edi
mov dword [rsp + 0x14], eax
movzx eax, byte [r15 + 0xa]
movzx edx, byte [r15 + 0x2a]
movzx r10d, byte [r15 + 0x3a]
mov esi, r9d
mov r13d, eax
lea r8d, [rax + rdx]
mov r11d, edx
sub r13d, edx
shl r11d, 4
mov edx, r13d
sub esi, r10d
lea ecx, [r11 + rax]
sub eax, r11d
mov r11d, r10d
shl r11d, 6
shl esi, 4
mov dword [rsp + 0x18], eax
lea r13d, [r9 + r10]
lea r11d, [r11 + r9*4]
mov dword [rsp + 0x2c], r13d
add r13d, r8d
shl r9d, 6
lea r9d, [r9 + r10*4]
movzx edi, r11b
sar r11d, 8
sub r8d, dword [rsp + 0x2c]
sub edi, r11d
movzx ebx, r9b
lea r11d, [r14 + r13]
sar r9d, 8
mov dword [rsp + 0x1c], r11d
lea r11d, [rcx + rdi]
sub ebx, r9d
sub ecx, edi
lea r10d, [rdx + rsi]
add r11d, r11d
shl r8d, 4
mov edi, dword [rsp + 0x10]
lea r9d, [r11 + r12]
shl r10d, 2
mov dword [rsp + 0x20], r9d
lea r9d, [r10 + rbp]
shl ecx, 5
mov dword [rsp + 0x24], r9d
lea r9d, [rax + rbx]
mov eax, dword [rsp + 8]
shl r9d, 3
add eax, r9d
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xc]
add eax, r8d
add edi, ecx
sub edx, esi
mov esi, dword [rsp]
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x18]
shl edx, 6
sub r14d, r13d
mov dword [rsp + 0x30], edi
sub ebp, r10d
mov r10d, dword [rsp + 0x10]
sub r12d, r11d
mov dword [rsp + 0x38], r14d
mov r14d, dword [rsp + 8]
lea edi, [rdx + rsi]
sub esi, edx
mov dword [rsp + 0x3c], ebp
movzx edx, byte [r15 + 0x16]
sub eax, ebx
mov ebx, dword [rsp + 0x14]
mov dword [rsp + 0x34], edi
shl eax, 7
sub r10d, ecx
mov dword [rsp + 0x4c], esi
sub r14d, r9d
mov dword [rsp + 0x48], r10d
mov dword [rsp + 0x40], r14d
lea edi, [rax + rbx]
sub ebx, eax
movzx eax, byte [r15 + 6]
mov dword [rsp], edi
mov edi, dword [rsp + 0xc]
mov dword [rsp + 0x50], ebx
sub edi, r8d
movzx r8d, byte [r15 + 0x26]
mov dword [rsp + 0x44], edi
movzx r9d, byte [r15 + 0x36]
lea esi, [rax + r8]
mov r13d, r8d
lea ebx, [rdx + r9]
shl r13d, 4
lea r11d, [r13 + rax]
mov ecx, r13d
mov r13d, eax
lea ebp, [rsi + rbx]
sub r13d, r8d
sub eax, ecx
mov r10d, r13d
mov r13d, r9d
shl r13d, 6
lea ecx, [r13 + rdx*4]
mov r13d, edx
shl edx, 6
sub r13d, r9d
movzx r8d, cl
sar ecx, 8
lea r9d, [rdx + r9*4]
sub r8d, ecx
mov ecx, r13d
lea r13d, [r11 + r8]
movzx edx, r9b
sar r9d, 8
sub edx, r9d
shl ecx, 4
sub r11d, r8d
lea r9d, [rax + rdx]
mov r8d, eax
movzx eax, byte [r15 + 0xe]
mov dword [rsp + 0x14], r11d
lea r14d, [r10 + rcx]
mov dword [rsp + 0x10], r9d
sub r10d, ecx
mov r9d, esi
movzx ecx, byte [r15 + 0x2e]
sub r9d, ebx
sub r8d, edx
mov dword [rsp + 0x18], r10d
movzx ebx, byte [r15 + 0x3e]
mov dword [rsp + 0x5c], r8d
movzx edx, byte [r15 + 0x1e]
mov dword [rsp + 0x58], r9d
lea r11d, [rax + rcx]
mov esi, ecx
shl esi, 4
mov r10d, ebx
mov r8d, esi
shl r10d, 6
mov edi, edx
lea r9d, [rsi + rax]
mov esi, eax
sub eax, r8d
lea r8d, [r10 + rdx*4]
sub esi, ecx
movzx r10d, r8b
sar r8d, 8
sub edi, ebx
sub r10d, r8d
mov ecx, esi
mov r8d, edi
lea esi, [rdx + rbx]
shl edx, 6
lea edi, [r9 + r10]
shl r8d, 4
sub r9d, r10d
lea ebx, [rdx + rbx*4]
add edi, edi
shl r9d, 5
mov dword [rsp + 8], edi
lea edi, [rcx + r8]
movzx edx, bl
sub ecx, r8d
sar ebx, 8
shl edi, 2
mov r8d, dword [rsp + 0x20]
sub edx, ebx
mov dword [rsp + 0xc], edi
lea ebx, [r11 + rsi]
sub r11d, esi
mov esi, ecx
mov ecx, dword [rsp + 0x1c]
lea edi, [rax + rdx]
sub eax, edx
shl esi, 6
mov dword [rsp + 0x68], ebx
mov edx, eax
add ebx, ebp
mov r10d, esi
shl edx, 7
shl edi, 3
mov esi, edx
mov edx, ecx
sub ecx, ebx
mov dword [rsp + 0x140], ecx
mov ecx, dword [rsp + 8]
add edx, ebx
shl r11d, 4
lea eax, [rcx + r13]
imul eax, eax, 0x3c
mov ecx, eax
movzx eax, ax
sar ecx, 0x10
add eax, ecx
lea ecx, [r8 + rax]
sub r8d, eax
mov dword [rsp + 0x104], ecx
mov ecx, dword [rsp + 0xc]
mov dword [rsp + 0x144], r8d
lea eax, [rcx + r14]
lea r8d, [rax + rax]
sar eax, 0xf
mov ecx, eax
movzx eax, r8w
mov r8d, dword [rsp + 0x24]
add eax, ecx
lea ecx, [r8 + rax]
sub r8d, eax
mov dword [rsp + 0x108], ecx
mov ecx, dword [rsp + 0x10]
mov dword [rsp + 0x148], r8d
mov r8d, dword [rsp + 0x28]
lea eax, [rdi + rcx]
imul eax, eax, 0x78
mov ebx, eax
movzx eax, ax
sar ebx, 0x10
add eax, ebx
mov ebx, dword [rsp + 0x58]
lea ecx, [r8 + rax]
sub r8d, eax
mov dword [rsp + 0x14c], r8d
mov dword [rsp + 0x10c], ecx
lea eax, [r11 + rbx]
lea r8d, [rax*4]
sar eax, 0xe
mov ecx, eax
movzx eax, r8w
mov r8d, dword [rsp + 0x2c]
add eax, ecx
lea ecx, [r8 + rax]
sub r8d, eax
mov dword [rsp + 0x150], r8d
mov r8d, dword [rsp + 0x14]
mov dword [rsp + 0x110], ecx
lea eax, [r9 + r8]
imul eax, eax, 0xf0
mov r8d, eax
movzx eax, ax
sar r8d, 0x10
add eax, r8d
mov r8d, dword [rsp + 0x30]
sub ebp, dword [rsp + 0x68]
sub r13d, dword [rsp + 8]
sub r14d, dword [rsp + 0xc]
mov ecx, r8d
add ecx, eax
mov dword [rsp + 0x114], ecx
mov ecx, r8d
imul r13d, r13d, 0xbd
sub ecx, eax
mov eax, dword [rsp + 0x18]
mov dword [rsp + 0x154], ecx
add eax, r10d
lea r8d, [rax*8]
sar eax, 0xd
mov ecx, eax
movzx eax, r8w
mov r8d, dword [rsp + 0x34]
add eax, ecx
mov ecx, r8d
add ecx, eax
mov dword [rsp + 0x118], ecx
mov ecx, r8d
mov r8d, dword [rsp + 0x5c]
sub ecx, eax
mov dword [rsp + 0x158], ecx
lea eax, [rsi + r8]
imul eax, eax, 0xdf
mov ecx, eax
movzx eax, ax
sar ecx, 0x10
add eax, ecx
mov ecx, dword [rsp]
add ecx, eax
mov dword [rsp + 0x11c], ecx
mov ecx, dword [rsp]
sub ecx, eax
mov eax, ebp
sar ebp, 0x1f
mov dword [rsp + 0x15c], ecx
mov ecx, dword [rsp + 0x38]
shl eax, 4
movzx eax, ax
add ebp, eax
lea eax, [rcx + rbp]
sub ecx, ebp
mov ebp, r13d
mov dword [rsp + 0x120], eax
sar ebp, 0x10
movzx eax, r13w
add eax, ebp
mov dword [rsp + 0x160], ecx
lea ecx, [r12 + rax]
sub r12d, eax
mov dword [rsp + 0x124], ecx
mov ecx, dword [rsp + 0x3c]
mov dword [rsp + 0x164], r12d
mov r12d, r14d
sar r14d, 0xb
shl r12d, 5
movzx eax, r12w
add r14d, eax
lea eax, [rcx + r14]
sub ecx, r14d
mov r14d, dword [rsp + 0x40]
mov dword [rsp + 0x168], ecx
mov ecx, dword [rsp + 0x10]
mov dword [rsp + 0x128], eax
sub ecx, edi
mov edi, dword [rsp + 0x44]
imul eax, ecx, 0x79
mov ecx, eax
movzx eax, ax
sar ecx, 0x10
add eax, ecx
lea ecx, [r14 + rax]
sub r14d, eax
mov eax, ebx
sub eax, r11d
mov r11d, dword [rsp + 0x14]
mov dword [rsp + 0x12c], ecx
mov ecx, eax
sar eax, 0xa
mov dword [rsp + 0x16c], r14d
shl ecx, 6
movzx ecx, cx
add eax, ecx
sub r11d, r9d
lea ecx, [rdi + rax]
imul r11d, r11d, 0xf2
sub edi, eax
mov dword [rsp + 0x170], edi
mov edi, dword [rsp + 0x48]
mov dword [rsp + 0x130], ecx
movzx eax, r11w
sar r11d, 0x10
add r11d, eax
lea eax, [rdi + r11]
mov dword [rsp + 0x134], eax
mov eax, edi
mov edi, dword [rsp + 0x4c]
sub eax, r11d
mov ebx, dword [rsp + 0x50]
mov dword [rsp + 0x174], eax
mov eax, dword [rsp + 0x18]
lea r11, [rsp + 0x104]
sub eax, r10d
mov r10d, eax
shl r10d, 7
movzx eax, r10w
sar r10d, 0x10
add r10d, eax
lea eax, [rdi + r10]
mov dword [rsp + 0x138], eax
mov eax, edi
sub eax, r10d
mov dword [rsp + 0x178], eax
mov eax, r8d
sub eax, esi
imul eax, eax, 0xe3
movzx ecx, ax
sar eax, 0x10
add eax, ecx
lea ecx, [rbx + rax]
sub ebx, eax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x13c], ecx
lea rcx, [0x005fa150]
mov dword [rsp + 0x17c], ebx
mov r10, rcx
lea edi, [rax + rdx]
sub eax, edx
mov dword [rsp + 0x100], eax
lea rdx, [rsp + 0x80]
lea rax, [rsp + 0x84]
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x80], edi
mov r8, rax
mov qword [rsp], rdx
jmp 0x52a137
mov r9d, dword [r10 - 0x10]
imul r9d, dword [r8 + 0x7c]
mov ebx, dword [r8 - 4]
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov dword [r8 - 4], esi
mov dword [r8 + 0x7c], ebx
mov r9d, dword [r10]
add r8, 0x10
add r10, 0x40
imul r9d, dword [r8 + 0x70]
mov ebx, dword [r8 - 0x10]
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov r9d, dword [r10 - 0x30]
imul r9d, dword [r8 + 0x74]
mov dword [r8 + 0x70], ebx
mov ebx, dword [r8 - 0xc]
mov dword [r8 - 0x10], esi
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov r9d, dword [r10 - 0x20]
imul r9d, dword [r8 + 0x78]
mov dword [r8 + 0x74], ebx
mov ebx, dword [r8 - 8]
mov dword [r8 - 0xc], esi
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov dword [r8 - 8], esi
mov dword [r8 + 0x78], ebx
cmp r8, r11
jne 0x52a110
movzx r8d, byte [r15 + 1]
mov qword [rsp + 0x78], rcx
movzx r10d, byte [r15 + 0x21]
mov qword [rsp + 0x60], rax
movzx r12d, byte [r15 + 0x31]
movzx r9d, byte [r15 + 0x11]
mov ebx, r8d
lea ebp, [r8 + r10]
sub ebx, r10d
mov r11d, r10d
mov r10d, r12d
shl r11d, 4
lea esi, [r11 + r8]
shl r10d, 6
sub r8d, r11d
lea r10d, [r10 + r9*4]
lea edi, [r9 + r12]
movzx r11d, r10b
sar r10d, 8
lea ecx, [rbp + rdi]
sub r11d, r10d
mov r10d, r9d
shl r9d, 6
sub r10d, r12d
sub ebp, edi
mov dword [rsp + 0x18], ecx
lea r12d, [r9 + r12*4]
shl r10d, 4
mov dword [rsp + 0x14], ebp
lea r14d, [rsi + r11]
movzx r9d, r12b
sar r12d, 8
lea r13d, [rbx + r10]
sub r9d, r12d
sub esi, r11d
mov dword [rsp + 8], r14d
lea r12d, [r8 + r9]
sub r8d, r9d
movzx r9d, byte [r15 + 0x29]
sub ebx, r10d
mov dword [rsp + 0x1c], esi
movzx esi, byte [r15 + 0x39]
mov dword [rsp + 0x40], r8d
movzx r8d, byte [r15 + 9]
mov dword [rsp + 0x3c], ebx
movzx ebx, byte [r15 + 0x19]
mov edi, r9d
mov dword [rsp + 0xc], r13d
shl edi, 4
mov dword [rsp + 0x10], r12d
lea r11d, [r8 + r9]
mov eax, r8d
lea r10d, [rdi + r8]
sub r8d, edi
mov edi, esi
shl edi, 6
sub eax, r9d
lea edi, [rdi + rbx*4]
mov r9d, eax
lea eax, [rbx + rsi]
movzx r13d, dil
sar edi, 8
lea r14d, [r11 + rax]
sub r13d, edi
mov edi, ebx
mov dword [rsp + 0x34], eax
lea eax, [rcx + r14]
shl ebx, 6
sub edi, esi
mov ecx, dword [rsp + 0x10]
lea ebx, [rbx + rsi*4]
mov esi, dword [rsp + 8]
mov r12d, edi
mov dword [rsp + 0x20], eax
lea edi, [r10 + r13]
movzx ebp, bl
sar ebx, 8
sub r11d, dword [rsp + 0x34]
sub ebp, ebx
mov ebx, dword [rsp + 0xc]
shl r12d, 4
add edi, edi
sub r10d, r13d
mov r13d, dword [rsp + 0x1c]
lea eax, [rdi + rsi]
lea esi, [r9 + r12]
mov dword [rsp + 0x24], eax
shl r11d, 4
shl esi, 2
lea eax, [rsi + rbx]
lea ebx, [r8 + rbp]
mov dword [rsp + 0x28], eax
shl ebx, 3
shl r10d, 5
sub r9d, r12d
mov r12d, dword [rsp + 0x3c]
lea eax, [rbx + rcx]
mov ecx, dword [rsp + 0x14]
shl r9d, 6
sub r8d, ebp
mov dword [rsp + 0x2c], eax
shl r8d, 7
lea eax, [r11 + rcx]
mov dword [rsp + 0x34], eax
lea ecx, [r10 + r13]
sub r13d, r10d
lea eax, [r9 + r12]
mov dword [rsp + 0x38], ecx
sub r12d, r9d
mov dword [rsp + 0x3c], eax
mov ebp, dword [rsp + 0x40]
movzx r9d, byte [r15 + 0x15]
mov dword [rsp + 0x58], r12d
lea ecx, [r8 + rbp]
sub ebp, r8d
movzx r8d, byte [r15 + 5]
mov dword [rsp + 0x40], ecx
mov ecx, dword [rsp + 0x18]
mov dword [rsp + 0x5c], ebp
sub ecx, r14d
mov r14d, dword [rsp + 8]
mov dword [rsp + 0x44], ecx
mov ecx, r13d
sub r14d, edi
mov edi, dword [rsp + 0xc]
mov dword [rsp + 0x48], r14d
sub edi, esi
mov esi, dword [rsp + 0x10]
mov dword [rsp + 0x4c], edi
mov edi, dword [rsp + 0x14]
sub esi, ebx
movzx ebx, byte [r15 + 0x35]
sub edi, r11d
movzx r11d, byte [r15 + 0x25]
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x54], edi
lea ebp, [r9 + rbx]
lea r12d, [r8 + r11]
mov r13d, r11d
lea r14d, [r12 + rbp]
shl r13d, 4
sub r12d, ebp
movzx ebp, byte [r15 + 0x3d]
lea edi, [r13 + r8]
mov r10d, r13d
mov r13d, r8d
sub r13d, r11d
mov r11d, ebx
sub r8d, r10d
shl r11d, 6
mov esi, r13d
mov r13d, r9d
lea r10d, [r11 + r9*4]
shl r9d, 6
sub r13d, ebx
lea ebx, [r9 + rbx*4]
movzx r11d, r10b
sar r10d, 8
sub r11d, r10d
movzx r9d, bl
sar ebx, 8
sub r9d, ebx
mov r10d, r13d
mov eax, edi
lea ebx, [rdi + r11]
shl r10d, 4
sub eax, r11d
mov dword [rsp + 0x10], ebx
lea ebx, [r8 + r9]
sub r8d, r9d
movzx r9d, byte [r15 + 0x1d]
mov dword [rsp + 0x18], ebx
lea r13d, [rsi + r10]
mov ebx, esi
sub ebx, r10d
movzx r10d, byte [r15 + 0x2d]
mov dword [rsp + 0x1c], r8d
movzx r8d, byte [r15 + 0xd]
mov dword [rsp + 0x14], r13d
mov dword [rsp + 0x6c], ebx
mov r11d, r10d
lea edi, [r8 + r10]
shl r11d, 4
mov r13d, r8d
lea ebx, [r11 + r8]
sub r13d, r10d
sub r8d, r11d
lea r11d, [r9 + rbp]
mov r10d, r13d
mov r13d, r11d
mov r11d, ebp
shl r11d, 6
mov dword [rsp + 0x68], r13d
lea r11d, [r11 + r9*4]
movzx esi, r11b
sar r11d, 8
add r13d, edi
sub edi, dword [rsp + 0x68]
sub esi, r11d
mov r11d, r9d
mov dword [rsp + 0x70], r13d
shl r9d, 6
sub r11d, ebp
lea ebp, [r9 + rbp*4]
shl r11d, 4
movzx r9d, bpl
sar ebp, 8
sub r9d, ebp
shl edi, 4
lea ebp, [r14 + r13]
lea r13d, [rbx + rsi]
sub ebx, esi
add r13d, r13d
shl ebx, 5
mov dword [rsp + 8], r13d
lea r13d, [r10 + r11]
sub r10d, r11d
shl r13d, 2
mov r11d, r10d
mov dword [rsp + 0xc], r13d
lea r13d, [r8 + r9]
sub r8d, r9d
shl r11d, 6
mov r9d, dword [rsp + 0x20]
mov esi, r11d
mov r11d, r8d
shl r13d, 3
mov r10d, dword [rsp + 0x24]
shl r11d, 7
lea r8d, [r9 + rbp]
sub r9d, ebp
mov ebp, dword [rsp + 0x6c]
mov dword [rsp + 0x68], r8d
mov r8d, dword [rsp + 8]
add r8d, dword [rsp + 0x10]
mov dword [rsp + 0x1c0], r9d
imul r8d, r8d, 0x3c
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
lea r9d, [r10 + r8]
sub r10d, r8d
mov r8d, dword [rsp + 0xc]
add r8d, dword [rsp + 0x14]
mov dword [rsp + 0x1c4], r10d
mov dword [rsp + 0x184], r9d
lea r10d, [r8 + r8]
mov r9d, r8d
movzx r8d, r10w
mov r10d, dword [rsp + 0x28]
sar r9d, 0xf
add r8d, r9d
lea r9d, [r10 + r8]
sub r10d, r8d
mov r8d, dword [rsp + 0x18]
mov dword [rsp + 0x1c8], r10d
mov r10d, dword [rsp + 0x2c]
mov dword [rsp + 0x188], r9d
add r8d, r13d
imul r8d, r8d, 0x78
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
sub r14d, dword [rsp + 0x70]
lea r9d, [r10 + r8]
sub r10d, r8d
lea r8d, [rdi + r12]
mov dword [rsp + 0x1cc], r10d
lea r10d, [r8*4]
mov dword [rsp + 0x18c], r9d
mov r9d, r8d
movzx r8d, r10w
mov r10d, dword [rsp + 0x34]
sar r9d, 0xe
add r8d, r9d
lea r9d, [r10 + r8]
sub r10d, r8d
lea r8d, [rbx + rax]
mov dword [rsp + 0x1d0], r10d
mov r10d, dword [rsp + 0x38]
imul r8d, r8d, 0xf0
mov dword [rsp + 0x190], r9d
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
lea r9d, [r10 + r8]
sub r10d, r8d
mov r8d, ebp
add r8d, esi
mov dword [rsp + 0x1d4], r10d
lea r10d, [r8*8]
mov dword [rsp + 0x194], r9d
mov r9d, r8d
movzx r8d, r10w
mov r10d, dword [rsp + 0x3c]
sar r9d, 0xd
add r8d, r9d
lea r9d, [r10 + r8]
sub r10d, r8d
mov r8d, dword [rsp + 0x1c]
mov dword [rsp + 0x1d8], r10d
mov r10d, dword [rsp + 0x40]
mov dword [rsp + 0x198], r9d
add r8d, r11d
imul r8d, r8d, 0xdf
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
lea r9d, [r10 + r8]
sub r10d, r8d
mov dword [rsp + 0x1dc], r10d
mov r10d, r14d
sar r14d, 0x1f
shl r10d, 4
mov dword [rsp + 0x19c], r9d
movzx r8d, r10w
mov r10d, dword [rsp + 0x44]
add r14d, r8d
lea r8d, [r10 + r14]
sub r10d, r14d
mov r14d, dword [rsp + 0x48]
mov dword [rsp + 0x1e0], r10d
mov r10d, dword [rsp + 0x10]
sub r10d, dword [rsp + 8]
mov dword [rsp + 0x1a0], r8d
imul r8d, r10d, 0xbd
mov r10d, dword [rsp + 0x14]
sub r10d, dword [rsp + 0xc]
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
lea r9d, [r14 + r8]
sub r14d, r8d
mov r8d, r10d
mov dword [rsp + 0x1a4], r9d
mov r9d, r10d
mov r10d, dword [rsp + 0x18]
sar r8d, 0xb
mov dword [rsp + 0x1e4], r14d
mov r14d, dword [rsp + 0x4c]
shl r9d, 5
movzx r9d, r9w
add r8d, r9d
lea r9d, [r14 + r8]
sub r14d, r8d
sub r10d, r13d
imul r8d, r10d, 0x79
mov dword [rsp + 0x1e8], r14d
sub r12d, edi
sub eax, ebx
mov r14d, dword [rsp + 0x50]
mov dword [rsp + 0x1a8], r9d
mov edi, dword [rsp + 0x54]
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
lea r9d, [r14 + r8]
sub r14d, r8d
mov dword [rsp + 0x1ec], r14d
mov r14d, r12d
sar r12d, 0xa
shl r14d, 6
mov dword [rsp + 0x1ac], r9d
movzx r8d, r14w
add r12d, r8d
lea r8d, [rdi + r12]
sub edi, r12d
mov r12d, dword [rsp + 0x58]
mov dword [rsp + 0x1b0], r8d
imul r8d, eax, 0xf2
mov eax, ebp
mov ebp, dword [rsp + 0x5c]
sub eax, esi
mov dword [rsp + 0x1f0], edi
mov esi, eax
movzx r9d, r8w
sar r8d, 0x10
add r8d, r9d
shl esi, 7
lea r9d, [rcx + r8]
sub ecx, r8d
movzx r8d, si
sar esi, 0x10
mov dword [rsp + 0x1b4], r9d
add esi, r8d
mov dword [rsp + 0x1f4], ecx
lea r8d, [r12 + rsi]
sub r12d, esi
mov dword [rsp + 0x1b8], r8d
mov r8d, dword [rsp + 0x1c]
mov dword [rsp + 0x1f8], r12d
sub r8d, r11d
movzx r11d, byte [r15 + 0x23]
imul r8d, r8d, 0xe3
movzx r9d, r8w
sar r8d, 0x10
mov r10d, r11d
add r8d, r9d
shl r10d, 4
lea r9d, [rbp + r8]
sub ebp, r8d
movzx r8d, byte [r15 + 3]
mov dword [rsp + 0x1bc], r9d
movzx r9d, byte [r15 + 0x13]
mov dword [rsp + 0x1fc], ebp
movzx r12d, byte [r15 + 0x33]
lea ebp, [r8 + r11]
mov ebx, r8d
lea esi, [r10 + r8]
sub r8d, r10d
sub ebx, r11d
lea edi, [r9 + r12]
mov r10d, r12d
lea ecx, [rbp + rdi]
shl r10d, 6
lea r10d, [r10 + r9*4]
mov dword [rsp + 0x14], ecx
mov ecx, ebp
movzx r11d, r10b
sar r10d, 8
sub r11d, r10d
mov r10d, r9d
lea eax, [rsi + r11]
sub r10d, r12d
shl r9d, 6
lea r12d, [r9 + r12*4]
sub esi, r11d
shl r10d, 4
mov dword [rsp + 0x20], eax
mov dword [rsp + 8], esi
movzx r9d, r12b
sar r12d, 8
sub ecx, edi
movzx esi, byte [r15 + 0x3b]
lea r14d, [rbx + r10]
sub r9d, r12d
sub ebx, r10d
lea r13d, [r8 + r9]
sub r8d, r9d
movzx r9d, byte [r15 + 0x2b]
mov dword [rsp + 0xc], ebx
mov dword [rsp + 0x10], r8d
movzx r8d, byte [r15 + 0xb]
movzx ebx, byte [r15 + 0x1b]
mov dword [rsp + 0x18], r14d
mov dword [rsp + 0x1c], r13d
mov edi, r9d
lea r11d, [r8 + r9]
shl edi, 4
mov r14d, r8d
lea r10d, [rdi + r8]
sub r8d, edi
mov edi, esi
shl edi, 6
sub r14d, r9d
mov r12d, ebx
lea edi, [rdi + rbx*4]
mov r9d, r14d
sub r12d, esi
lea r14d, [rbx + rsi]
movzx r13d, dil
sar edi, 8
mov dword [rsp + 0x24], r14d
shl ebx, 6
sub r13d, edi
mov edi, dword [rsp + 0x14]
lea r14d, [r11 + r14]
shl r12d, 4
sub r11d, dword [rsp + 0x24]
lea ebx, [rbx + rsi*4]
add edi, r14d
movzx ebp, bl
sar ebx, 8
mov dword [rsp + 0x34], edi
lea edi, [r10 + r13]
sub ebp, ebx
mov ebx, dword [rsp + 0x18]
add edi, edi
sub r10d, r13d
mov r13d, dword [rsp + 8]
shl r11d, 4
lea esi, [rdi + rax]
mov eax, dword [rsp + 0x1c]
shl r10d, 5
mov dword [rsp + 0x38], esi
lea esi, [r9 + r12]
sub r9d, r12d
mov r12d, dword [rsp + 0xc]
shl esi, 2
shl r9d, 6
add ebx, esi
mov dword [rsp + 0x3c], ebx
lea ebx, [r8 + rbp]
shl ebx, 3
add eax, ebx
sub r8d, ebp
mov ebp, dword [rsp + 0x10]
mov dword [rsp + 0x40], eax
lea eax, [r11 + rcx]
shl r8d, 7
sub ecx, r11d
mov dword [rsp + 0x44], eax
lea eax, [r10 + r13]
sub r13d, r10d
mov dword [rsp + 8], eax
lea eax, [r9 + r12]
sub r12d, r9d
mov dword [rsp + 0xc], eax
lea eax, [r8 + rbp]
sub ebp, r8d
mov dword [rsp + 0x10], eax
mov eax, dword [rsp + 0x14]
sub eax, r14d
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x20]
sub eax, edi
mov edi, dword [rsp + 0x18]
sub edi, esi
mov dword [rsp + 0x4c], edi
mov esi, dword [rsp + 0x1c]
movzx r11d, byte [r15 + 0x27]
mov dword [rsp + 0x58], r12d
movzx r8d, byte [r15 + 7]
mov dword [rsp + 0x5c], ebp
movzx r9d, byte [r15 + 0x17]
mov dword [rsp + 0x54], r13d
sub esi, ebx
movzx ebx, byte [r15 + 0x37]
mov r10d, r11d
mov dword [rsp + 0x50], esi
lea r12d, [r8 + r11]
shl r10d, 4
mov r14d, r8d
lea edi, [r10 + r8]
sub r8d, r10d
sub r14d, r11d
lea ebp, [r9 + rbx]
mov r10d, ebx
mov esi, r14d
lea r14d, [r12 + rbp]
shl r10d, 6
sub r12d, ebp
movzx ebp, byte [r15 + 0x3f]
lea r10d, [r10 + r9*4]
movzx r11d, r10b
sar r10d, 8
sub r11d, r10d
mov r10d, r9d
shl r9d, 6
sub r10d, ebx
lea ebx, [r9 + rbx*4]
shl r10d, 4
movzx r9d, bl
sar ebx, 8
sub r9d, ebx
lea ebx, [rdi + r11]
sub edi, r11d
mov dword [rsp + 0x1c], ebx
lea ebx, [rsi + r10]
sub esi, r10d
movzx r10d, byte [r15 + 0x2f]
mov dword [rsp + 0x20], ebx
lea r13d, [r8 + r9]
mov ebx, r8d
movzx r8d, byte [r15 + 0xf]
sub ebx, r9d
movzx r9d, byte [r15 + 0x1f]
mov dword [rsp + 0x6c], edi
mov dword [rsp + 0x28], esi
mov r11d, r10d
mov dword [rsp + 0x2c], ebx
lea edi, [r8 + r10]
shl r11d, 4
mov esi, r8d
mov dword [rsp + 0x24], r13d
lea ebx, [r11 + r8]
sub r8d, r11d
sub esi, r10d
lea r11d, [r9 + rbp]
mov r10d, esi
mov r13d, r11d
mov r11d, ebp
shl r11d, 6
mov dword [rsp + 0x70], r13d
lea r11d, [r11 + r9*4]
movzx esi, r11b
sar r11d, 8
sub esi, r11d
mov r11d, r9d
sub r11d, ebp
shl r11d, 4
shl r9d, 6
add r13d, edi
sub edi, dword [rsp + 0x70]
mov dword [rsp + 0x74], r13d
lea ebp, [r9 + rbp*4]
movzx r9d, bpl
sar ebp, 8
sub r9d, ebp
shl edi, 4
lea ebp, [r14 + r13]
lea r13d, [rbx + rsi]
sub ebx, esi
add r13d, r13d
shl ebx, 5
mov dword [rsp + 0x14], r13d
lea r13d, [r10 + r11]
sub r10d, r11d
shl r13d, 2
shl r10d, 6
mov dword [rsp + 0x18], r13d
lea r13d, [r8 + r9]
sub r8d, r9d
mov esi, r10d
mov r9d, dword [rsp + 0x34]
mov r11d, r8d
shl r13d, 3
shl r11d, 7
mov r10d, r9d
sub r9d, ebp
mov dword [rsp + 0x240], r9d
mov r9d, dword [rsp + 0x14]
add r10d, ebp
add r9d, dword [rsp + 0x1c]
mov ebp, dword [rsp + 0x38]
imul r8d, r9d, 0x3c
movzx r9d, r8w
sar r8d, 0x10
add r8d, r9d
mov r9d, ebp
add r9d, r8d
mov dword [rsp + 0x204], r9d
mov r9d, ebp
sub r9d, r8d
mov dword [rsp + 0x244], r9d
mov r9d, dword [rsp + 0x18]
add r9d, dword [rsp + 0x20]
mov ebp, dword [rsp + 0x3c]
mov r8d, r9d
add r8d, r8d
movzx r9d, r8w
sar r8d, 0x10
add r8d, r9d
mov r9d, ebp
add r9d, r8d
mov dword [rsp + 0x208], r9d
mov r9d, ebp
mov ebp, dword [rsp + 0x40]
sub r9d, r8d
mov r8d, dword [rsp + 0x24]
mov dword [rsp + 0x248], r9d
add r8d, r13d
imul r8d, r8d, 0x78
movzx r9d, r8w
sar r8d, 0x10
sub r14d, dword [rsp + 0x74]
add r8d, r9d
mov r9d, ebp
add r9d, r8d
mov dword [rsp + 0x20c], r9d
mov r9d, ebp
sub r9d, r8d
lea r8d, [rdi + r12]
mov dword [rsp + 0x24c], r9d
lea ebp, [r8*4]
sar r8d, 0xe
mov r9d, r8d
movzx r8d, bp
mov ebp, dword [rsp + 0x44]
add r8d, r9d
mov r9d, ebp
add r9d, r8d
mov dword [rsp + 0x210], r9d
mov r9d, ebp
mov ebp, dword [rsp + 0x6c]
sub r9d, r8d
mov dword [rsp + 0x250], r9d
mov r8d, ebp
add r8d, ebx
imul r8d, r8d, 0xf0
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
mov r9d, dword [rsp + 8]
add r9d, r8d
mov dword [rsp + 0x214], r9d
mov r9d, dword [rsp + 8]
sub r9d, r8d
mov r8d, dword [rsp + 0x28]
mov dword [rsp + 0x254], r9d
add r8d, esi
shl r8d, 3
movzx r9d, r8w
sar r8d, 0x10
add r8d, r9d
mov r9d, dword [rsp + 0xc]
add r9d, r8d
mov dword [rsp + 0x218], r9d
mov r9d, dword [rsp + 0xc]
sub r9d, r8d
mov dword [rsp + 0x258], r9d
mov r9d, dword [rsp + 0x2c]
lea r8d, [r11 + r9]
imul r8d, r8d, 0xdf
mov r9d, r8d
movzx r8d, r8w
sar r9d, 0x10
add r8d, r9d
mov r9d, dword [rsp + 0x10]
add r9d, r8d
mov dword [rsp + 0x21c], r9d
mov r9d, dword [rsp + 0x10]
sub r9d, r8d
mov r8d, r14d
sar r14d, 0x1f
mov dword [rsp + 0x25c], r9d
mov r9d, dword [rsp + 0x48]
shl r8d, 4
movzx r8d, r8w
add r14d, r8d
lea r8d, [r9 + r14]
mov dword [rsp + 0x220], r8d
mov r8d, r9d
sub r8d, r14d
mov r14d, dword [rsp + 0x1c]
sub r14d, dword [rsp + 0x14]
mov dword [rsp + 0x260], r8d
imul r8d, r14d, 0xbd
mov r14d, r8d
movzx r8d, r8w
sar r14d, 0x10
sub r12d, edi
add r8d, r14d
mov edi, r12d
sar r12d, 0xa
lea r9d, [rax + r8]
sub eax, r8d
shl edi, 6
mov dword [rsp + 0x224], r9d
mov r14d, dword [rsp + 0x20]
sub r14d, dword [rsp + 0x18]
mov dword [rsp + 0x264], eax
mov eax, dword [rsp + 0x4c]
mov r8d, r14d
mov r9d, r14d
mov r14d, dword [rsp + 0x24]
shl r9d, 5
sar r8d, 0xb
movzx r9d, r9w
add r8d, r9d
lea r9d, [rax + r8]
sub r14d, r13d
sub eax, r8d
mov r13d, dword [rsp + 0x54]
imul r8d, r14d, 0x79
mov dword [rsp + 0x268], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x228], r9d
mov r14d, r8d
movzx r8d, r8w
sar r14d, 0x10
add r8d, r14d
lea r9d, [rax + r8]
sub eax, r8d
movzx r8d, di
add r12d, r8d
mov edi, ebp
mov dword [rsp + 0x22c], r9d
mov ebp, dword [rsp + 0x5c]
lea r8d, [rcx + r12]
sub edi, ebx
sub ecx, r12d
mov r12d, dword [rsp + 0x58]
mov dword [rsp + 0x230], r8d
imul r8d, edi, 0xf2
mov dword [rsp + 0x26c], eax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x270], ecx
mov rcx, qword [rsp + 0x78]
movzx r9d, r8w
sar r8d, 0x10
add r8d, r9d
lea r9d, [r13 + r8]
sub r13d, r8d
mov r8d, dword [rsp + 0x28]
mov dword [rsp + 0x234], r9d
mov dword [rsp + 0x274], r13d
sub r8d, esi
mov esi, r8d
shl esi, 7
movzx r8d, si
sar esi, 0x10
add esi, r8d
lea r8d, [r12 + rsi]
sub r12d, esi
mov dword [rsp + 0x238], r8d
mov r8d, dword [rsp + 0x2c]
mov dword [rsp + 0x278], r12d
sub r8d, r11d
imul r8d, r8d, 0xe3
lea r11d, [rax + r10]
mov dword [rsp + 0x180], r11d
movzx r9d, r8w
sar r8d, 0x10
add r8d, r9d
lea r9d, [rbp + r8]
sub ebp, r8d
sub eax, r10d
mov dword [rsp + 0x200], eax
mov rax, qword [rsp]
lea r8, [rsp + 0x184]
mov dword [rsp + 0x23c], r9d
mov dword [rsp + 0x27c], ebp
lea r10, [rax + 0x184]
mov rax, qword [rsp + 0x60]
jmp 0x52af0f
mov r9d, dword [rcx - 0x10]
imul r9d, dword [r8 + 0x7c]
mov ebx, dword [r8 - 4]
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov dword [r8 - 4], esi
mov dword [r8 + 0x7c], ebx
mov r9d, dword [rcx]
add r8, 0x10
add rcx, 0x40
imul r9d, dword [r8 + 0x70]
mov ebx, dword [r8 - 0x10]
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov r9d, dword [rcx - 0x30]
imul r9d, dword [r8 + 0x74]
mov dword [r8 + 0x70], ebx
mov ebx, dword [r8 - 0xc]
mov dword [r8 - 0x10], esi
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov r9d, dword [rcx - 0x20]
imul r9d, dword [r8 + 0x78]
mov dword [r8 + 0x74], ebx
mov ebx, dword [r8 - 8]
mov dword [r8 - 0xc], esi
movzx esi, r9w
sar r9d, 0x10
add r9d, esi
lea esi, [rbx + r9]
sub ebx, r9d
mov dword [r8 - 8], esi
mov dword [r8 + 0x78], ebx
cmp r10, r8
jne 0x52aee8
lea r8, [0x005fa148]
mov rdi, rax
mov eax, dword [rsp + 0x30]
lea ecx, [rax + r11]
sub eax, r11d
mov dword [rsp + 0x180], eax
mov rax, qword [rsp]
mov dword [rsp + 0x80], ecx
lea r9, [rax + 0x104]
mov rax, rdi
jmp 0x52affb
mov ecx, dword [r8 - 8]
imul ecx, dword [rax + 0xfc]
mov r10d, dword [rax - 4]
movzx r11d, cx
sar ecx, 0x10
add ecx, r11d
lea r11d, [r10 + rcx]
sub r10d, ecx
mov dword [rax - 4], r11d
mov dword [rax + 0xfc], r10d
mov ecx, dword [r8]
add rax, 0x10
add r8, 0x20
imul ecx, dword [rax + 0xf0]
mov r10d, dword [rax - 0x10]
movzx r11d, cx
sar ecx, 0x10
add ecx, r11d
lea r11d, [r10 + rcx]
sub r10d, ecx
mov ecx, dword [r8 - 0x18]
imul ecx, dword [rax + 0xf4]
mov dword [rax + 0xf0], r10d
mov r10d, dword [rax - 0xc]
mov dword [rax - 0x10], r11d
movzx r11d, cx
sar ecx, 0x10
add ecx, r11d
lea r11d, [r10 + rcx]
sub r10d, ecx
mov ecx, dword [r8 - 0x10]
imul ecx, dword [rax + 0xf8]
mov dword [rax + 0xf4], r10d
mov r10d, dword [rax - 8]
mov dword [rax - 0xc], r11d
movzx r11d, cx
sar ecx, 0x10
add ecx, r11d
lea r11d, [r10 + rcx]
sub r10d, ecx
mov dword [rax - 8], r11d
mov dword [rax + 0xf8], r10d
cmp rax, r9
jne 0x52afd0
mov eax, dword [rsp + 0x2f8]
test eax, eax
je 0x52d91c
mov rcx, qword [rsp]
lea rax, [0x005f9f40]
vmovdqu xmm4, xmmword [0x005fa540]
vmovdqu xmm1, xmmword [0x005fa550]
vmovdqu xmm3, xmmword [0x005fa560]
vmovdqu xmm2, xmmword [0x005fa570]
add rcx, 0x200
nop dword [rax]
vmovdqu xmm0, xmmword [rax]
add rdx, 0x20
add rax, 0x10
vpmovzxwd xmm7, xmm0
vpaddd xmm7, xmm7, xmmword [rdx - 0x20]
vpsrldq xmm0, xmm0, 8
vpmovzxwd xmm0, xmm0
vpaddd xmm0, xmm0, xmmword [rdx - 0x10]
vpsrad xmm5, xmm7, 0x10
vpand xmm7, xmm7, xmm4
vpaddd xmm5, xmm5, xmm7
vpsrad xmm6, xmm0, 0x10
vpand xmm0, xmm0, xmm4
vpand xmm7, xmm5, xmm1
vpsrad xmm5, xmm5, 8
vpaddd xmm0, xmm6, xmm0
vpsubd xmm7, xmm7, xmm5
vpand xmm6, xmm0, xmm1
vpsrad xmm0, xmm0, 8
vpand xmm5, xmm7, xmm1
vpsrad xmm7, xmm7, 8
vpsubd xmm6, xmm6, xmm0
vpsubd xmm5, xmm5, xmm7
vpand xmm0, xmm6, xmm1
vpsrad xmm6, xmm6, 8
vpcmpgtd xmm7, xmm5, xmm3
vpsubd xmm0, xmm0, xmm6
vpaddd xmm6, xmm5, xmm2
vpblendvb xmm5, xmm5, xmm6, xmm7
vpcmpgtd xmm6, xmm0, xmm3
vmovups xmmword [rdx - 0x20], xmm5
vpaddd xmm5, xmm0, xmm2
vpblendvb xmm0, xmm0, xmm5, xmm6
vmovups xmmword [rdx - 0x10], xmm0
cmp rdx, rcx
jne 0x52b0d0
mov ecx, dword [r15 + 0x4c]
mov ebp, dword [r15 + 0x64]
xor ecx, dword [r15 + 4]
xor ebp, dword [r15 + 0x1c]
mov eax, dword [r15 + 0x70]
xor eax, dword [r15 + 0x28]
mov edx, dword [r15 + 0x50]
mov r9d, dword [r15 + 0x54]
mov dword [rsp + 0x14], ebp
xor edx, dword [r15 + 8]
xor r9d, dword [r15 + 0xc]
mov ebp, eax
mov eax, ecx
rol eax, 3
mov esi, dword [r15 + 0x58]
mov dword [rsp], eax
xor esi, dword [r15 + 0x10]
mov r14d, edx
mov r13d, dword [r15 + 0x68]
mov eax, r9d
rol r14d, 3
xor r13d, dword [r15 + 0x20]
rol eax, 3
mov dword [rsp + 0x18], r14d
mov r8d, dword [r15 + 0x48]
imul r14d, dword [rsp + 0x100], 0xb9
mov dword [rsp + 8], eax
imul eax, dword [rsp + 0x104], 0xb9
xor r8d, dword [r15]
movzx r14d, r14w
mov ebx, dword [r15 + 0x5c]
shl eax, 0x10
xor ebx, dword [r15 + 0x14]
add r14d, eax
mov eax, dword [r15 + 0x78]
xor eax, dword [r15 + 0x30]
mov r10d, r8d
mov r11d, dword [r15 + 0x60]
rol r10d, 3
xor r11d, dword [r15 + 0x18]
mov r12d, dword [r15 + 0x6c]
add eax, r14d
mov r14d, esi
xor r12d, dword [r15 + 0x24]
xor r14d, r13d
mov edi, dword [r15 + 0x74]
and r14d, r8d
xor edi, dword [r15 + 0x2c]
xor r14d, r13d
add r14d, eax
mov eax, dword [rsp]
ror r14d, 9
lea r8d, [r14 + rax]
imul r14d, dword [rsp + 0x108], 0xb9
imul eax, dword [rsp + 0x10c], 0xb9
movzx r14d, r14w
shl eax, 0x10
add r14d, eax
mov eax, dword [r15 + 0x7c]
xor eax, dword [r15 + 0x34]
add eax, r14d
mov r14d, ebx
xor r14d, r12d
and r14d, ecx
xor r14d, r12d
add r14d, eax
imul eax, dword [rsp + 0x114], 0xb9
ror r14d, 9
lea ecx, [r14 + r10]
imul r14d, dword [rsp + 0x110], 0xb9
shl eax, 0x10
movzx r14d, r14w
add r14d, eax
mov eax, dword [r15 + 0x80]
xor eax, dword [r15 + 0x38]
add eax, r14d
mov r14d, r11d
xor r14d, ebp
and r14d, edx
mov edx, dword [rsp + 8]
xor r14d, ebp
add r14d, eax
imul eax, dword [rsp + 0x11c], 0xb9
ror r14d, 9
add edx, r14d
imul r14d, dword [rsp + 0x118], 0xb9
shl eax, 0x10
movzx r14d, r14w
add r14d, eax
mov eax, dword [r15 + 0x84]
xor eax, dword [r15 + 0x3c]
add eax, r14d
mov r14d, dword [rsp + 0x14]
xor r14d, edi
and r14d, r9d
mov r9d, r8d
xor r14d, edi
ror r9d, 9
add r14d, eax
mov eax, dword [rsp + 0x18]
ror r14d, 9
add eax, r14d
mov r14d, ecx
ror r14d, 9
mov dword [rsp + 0x1c], eax
mov dword [rsp + 0xc], r14d
mov r14d, edx
ror r14d, 9
mov dword [rsp + 0x10], r14d
mov r14d, eax
imul eax, dword [rsp + 0x140], 0xb9
ror r14d, 9
mov dword [rsp + 0x24], r14d
imul r14d, dword [rsp + 0x144], 0xb9
movzx eax, ax
shl r14d, 0x10
add eax, r14d
add r13d, eax
mov eax, esi
xor eax, r10d
and eax, r8d
mov r8d, dword [rsp + 0x10]
xor eax, esi
add r13d, eax
imul eax, dword [rsp + 0x148], 0xb9
ror r13d, 0xf
add r8d, r13d
imul r13d, dword [rsp + 0x14c], 0xb9
movzx eax, ax
shl r13d, 0x10
add eax, r13d
mov r13d, dword [rsp]
add r12d, eax
xor r13d, ebx
mov eax, r13d
and eax, ecx
mov ecx, dword [rsp + 0x24]
xor eax, ebx
add r12d, eax
imul eax, dword [rsp + 0x150], 0xb9
ror r12d, 0xf
add ecx, r12d
imul r12d, dword [rsp + 0x154], 0xb9
mov r14d, ecx
movzx eax, ax
shl r12d, 0x10
add eax, r12d
mov r12d, dword [rsp + 0x18]
add ebp, eax
mov eax, r12d
xor eax, r11d
and eax, edx
xor eax, r11d
add ebp, eax
ror r14d, 0xf
imul eax, dword [rsp + 0x158], 0xb9
ror ebp, 0xf
lea edx, [rbp + r9]
imul ebp, dword [rsp + 0x15c], 0xb9
movzx eax, ax
shl ebp, 0x10
add eax, ebp
mov ebp, dword [rsp + 0x14]
add edi, eax
mov eax, dword [rsp + 8]
xor eax, ebp
and eax, dword [rsp + 0x1c]
xor eax, ebp
add edi, eax
mov eax, r8d
ror edi, 0xf
add edi, dword [rsp + 0xc]
ror eax, 0xf
mov r13d, eax
mov eax, edx
ror eax, 0xf
mov dword [rsp + 0x1c], eax
imul eax, dword [rsp + 0x80], 0xb9
mov ebp, edi
ror ebp, 0xf
mov dword [rsp + 0x20], ebp
imul ebp, dword [rsp + 0x84], 0xb9
movzx eax, ax
shl ebp, 0x10
add eax, ebp
mov ebp, dword [rsp]
add esi, eax
mov eax, r10d
xor eax, r9d
and eax, r8d
mov r8d, dword [rsp + 0x20]
xor eax, r10d
add esi, eax
imul eax, dword [rsp + 0x88], 0xb9
ror esi, 5
add r8d, esi
imul esi, dword [rsp + 0x8c], 0xb9
movzx eax, ax
shl esi, 0x10
add eax, esi
add ebx, eax
mov eax, dword [rsp + 0xc]
xor eax, ebp
and eax, ecx
xor eax, ebp
add ebx, eax
mov eax, dword [rsp + 0x1c]
ror ebx, 5
lea ecx, [rbx + rax]
imul eax, dword [rsp + 0x90], 0xb9
imul ebx, dword [rsp + 0x94], 0xb9
movzx eax, ax
shl ebx, 0x10
add eax, ebx
mov ebx, dword [rsp + 8]
add r11d, eax
mov eax, dword [rsp + 0x10]
xor eax, r12d
and eax, edx
imul edx, dword [rsp + 0x9c], 0xb9
xor eax, r12d
add r11d, eax
imul eax, dword [rsp + 0x98], 0xb9
ror r11d, 5
shl edx, 0x10
add r11d, r14d
mov ebp, r11d
movzx eax, ax
ror ebp, 5
add eax, edx
mov edx, dword [rsp + 0x24]
add eax, dword [rsp + 0x14]
xor edx, ebx
and edx, edi
mov edi, r8d
xor edx, ebx
ror edi, 5
add edx, eax
mov ebx, edi
mov edi, ecx
ror edx, 5
ror edi, 5
add edx, r13d
mov r12d, edx
ror r12d, 5
imul eax, dword [rsp + 0xc0], 0xb9
imul esi, dword [rsp + 0xc4], 0xb9
movzx eax, ax
shl esi, 0x10
add eax, esi
mov esi, dword [rsp + 0xc]
add r10d, eax
mov eax, r9d
xor eax, r13d
and eax, r8d
xor eax, r9d
add r10d, eax
imul eax, dword [rsp + 0xc8], 0xb9
rol r10d, 3
lea r8d, [r10 + rdi]
imul r10d, dword [rsp + 0xcc], 0xb9
movzx eax, ax
shl r10d, 0x10
add eax, r10d
mov r10d, esi
add eax, dword [rsp]
xor r10d, r14d
and r10d, ecx
xor r10d, esi
mov esi, dword [rsp + 0x10]
add r10d, eax
imul eax, dword [rsp + 0xd0], 0xb9
rol r10d, 3
lea ecx, [r10 + rbx]
imul r10d, dword [rsp + 0xd4], 0xb9
movzx eax, ax
shl r10d, 0x10
add eax, r10d
add eax, dword [rsp + 0x18]
mov r10d, dword [rsp + 0x1c]
xor r10d, esi
and r10d, r11d
xor r10d, esi
mov esi, dword [rsp + 0x24]
add r10d, eax
imul eax, dword [rsp + 0xd8], 0xb9
rol r10d, 3
add r10d, r12d
imul r11d, dword [rsp + 0xdc], 0xb9
movzx eax, ax
shl r11d, 0x10
add eax, r11d
mov r11d, dword [rsp + 0x20]
add eax, dword [rsp + 8]
xor r11d, esi
and r11d, edx
xor r11d, esi
add r11d, eax
mov eax, r8d
rol eax, 3
rol r11d, 3
mov dword [rsp + 0x24], eax
lea edx, [r11 + rbp]
mov eax, ecx
imul r11d, dword [rsp + 0x164], 0xb9
rol eax, 3
mov dword [rsp + 0x28], eax
mov eax, r10d
rol eax, 3
mov dword [rsp], eax
mov eax, edx
shl r11d, 0x10
rol eax, 3
mov dword [rsp + 8], eax
imul eax, dword [rsp + 0x160], 0xb9
movzx eax, ax
add eax, r11d
mov r11d, ebx
or r11d, r8d
add r9d, eax
and r8d, ebx
mov eax, r11d
mov r11d, dword [rsp + 0x24]
and eax, r13d
or r8d, eax
imul eax, dword [rsp + 0x168], 0xb9
add r8d, r9d
imul r9d, dword [rsp + 0x16c], 0xb9
ror r8d, 9
add r8d, dword [rsp]
movzx eax, ax
shl r9d, 0x10
add eax, r9d
mov r9d, edi
add eax, dword [rsp + 0xc]
or r9d, ecx
and r9d, r14d
and ecx, edi
or ecx, r9d
imul r9d, dword [rsp + 0x174], 0xb9
add ecx, eax
imul eax, dword [rsp + 0x170], 0xb9
ror ecx, 9
add ecx, dword [rsp + 8]
shl r9d, 0x10
movzx eax, ax
add eax, r9d
mov r9d, ebp
add eax, dword [rsp + 0x10]
or r9d, r10d
and r9d, dword [rsp + 0x1c]
and r10d, ebp
or r10d, r9d
imul r9d, dword [rsp + 0x178], 0xb9
add eax, r10d
mov r10d, eax
ror r10d, 9
lea eax, [r10 + r11]
movzx r9d, r9w
imul r10d, dword [rsp + 0x17c], 0xb9
shl r10d, 0x10
add r9d, r10d
mov r10d, r12d
or r10d, edx
and r10d, dword [rsp + 0x20]
add r9d, esi
and edx, r12d
mov esi, dword [rsp + 0x28]
or edx, r10d
mov r10d, r8d
add edx, r9d
ror r10d, 9
mov r9d, eax
mov dword [rsp + 0xc], r10d
ror edx, 9
mov r10d, ecx
ror r9d, 9
add edx, esi
ror r10d, 9
mov dword [rsp + 0x14], r9d
mov dword [rsp + 0x10], r10d
mov r10d, edx
ror r10d, 9
mov dword [rsp + 0x18], r10d
imul r10d, dword [rsp + 0x120], 0xb9
imul r9d, dword [rsp + 0x124], 0xb9
movzx r10d, r10w
shl r9d, 0x10
add r9d, r10d
mov r10d, r11d
or r10d, r8d
and r8d, r11d
add r9d, r13d
mov r13d, dword [rsp + 0x18]
and r10d, ebx
or r8d, r10d
imul r10d, dword [rsp + 0x128], 0xb9
add r9d, r8d
mov r8d, r9d
ror r8d, 0xf
lea r9d, [r8 + r13]
movzx r10d, r10w
mov r13d, dword [rsp]
imul r8d, dword [rsp + 0x12c], 0xb9
shl r8d, 0x10
add r8d, r10d
mov r10d, esi
or r10d, ecx
and ecx, esi
add r8d, r14d
mov r14d, dword [rsp + 8]
and r10d, edi
or ecx, r10d
imul r10d, dword [rsp + 0x130], 0xb9
add r8d, ecx
mov ecx, r8d
mov r8d, dword [rsp + 0x14]
ror ecx, 0xf
movzx r10d, r10w
add r8d, ecx
imul ecx, dword [rsp + 0x134], 0xb9
shl ecx, 0x10
add ecx, r10d
mov r10d, r13d
add ecx, dword [rsp + 0x1c]
or r10d, eax
and eax, r13d
and r10d, ebp
or eax, r10d
add ecx, eax
imul r10d, dword [rsp + 0x138], 0xb9
ror ecx, 0xf
mov eax, ecx
mov ecx, dword [rsp + 0x10]
movzx r10d, r10w
add ecx, eax
imul eax, dword [rsp + 0x13c], 0xb9
shl eax, 0x10
add eax, r10d
mov r10d, r14d
add eax, dword [rsp + 0x20]
or r10d, edx
and edx, r14d
imul r14d, dword [rsp + 0xe4], 0xb9
and r10d, r12d
or edx, r10d
add edx, eax
mov eax, r9d
ror eax, 0xf
ror edx, 0xf
add edx, dword [rsp + 0xc]
mov r13d, eax
mov eax, r8d
ror eax, 0xf
shl r14d, 0x10
mov esi, eax
mov eax, ecx
ror eax, 0xf
mov r11d, eax
mov eax, edx
ror eax, 0xf
mov r10d, eax
imul eax, dword [rsp + 0xe0], 0xb9
movzx eax, ax
add eax, r14d
mov r14d, dword [rsp + 0xc]
add ebx, eax
mov eax, r14d
or eax, r9d
and eax, dword [rsp + 0x24]
and r9d, r14d
mov r14d, dword [rsp + 0x10]
or r9d, eax
imul eax, dword [rsp + 0xe8], 0xb9
add r9d, ebx
ror r9d, 5
add r9d, esi
imul ebx, dword [rsp + 0xec], 0xb9
movzx eax, ax
shl ebx, 0x10
add eax, ebx
imul ebx, dword [rsp + 0xf4], 0xb9
add edi, eax
mov eax, r14d
or eax, r8d
and eax, dword [rsp + 0x28]
and r8d, r14d
shl ebx, 0x10
or r8d, eax
imul eax, dword [rsp + 0xf0], 0xb9
add r8d, edi
mov edi, dword [rsp + 0x18]
ror r8d, 5
add r8d, r13d
movzx eax, ax
add eax, ebx
mov ebx, dword [rsp + 0x14]
add ebp, eax
mov eax, ebx
or eax, ecx
and eax, dword [rsp]
and ecx, ebx
imul ebx, dword [rsp + 0xfc], 0xb9
or ecx, eax
shl ebx, 0x10
imul eax, dword [rsp + 0xf8], 0xb9
add ecx, ebp
ror ecx, 5
add ecx, r10d
movzx eax, ax
mov r14d, ecx
add eax, ebx
add r12d, eax
mov eax, edi
or eax, edx
and eax, dword [rsp + 8]
and edx, edi
or edx, eax
add edx, r12d
mov r12d, r8d
ror r14d, 5
ror edx, 5
ror r12d, 5
imul edi, dword [rsp + 0xa4], 0xb9
lea eax, [rdx + r11]
mov edx, r9d
ror edx, 5
mov ebp, eax
mov ebx, edx
ror ebp, 5
imul edx, dword [rsp + 0xa0], 0xb9
shl edi, 0x10
movzx edx, dx
add edx, edi
mov edi, dword [rsp + 0x24]
mov dword [rsp + 0x1c], ebp
mov dword [rsp + 0x24], r14d
add edi, edx
mov edx, r13d
or edx, r9d
and edx, dword [rsp + 0xc]
and r9d, r13d
or r9d, edx
imul edx, dword [rsp + 0xa8], 0xb9
add r9d, edi
imul edi, dword [rsp + 0xac], 0xb9
rol r9d, 3
add r9d, r14d
movzx edx, dx
shl edi, 0x10
add edx, edi
mov edi, esi
add edx, dword [rsp + 0x28]
or edi, r8d
and edi, dword [rsp + 0x10]
and r8d, esi
or r8d, edi
imul edi, dword [rsp + 0xb4], 0xb9
add r8d, edx
imul edx, dword [rsp + 0xb0], 0xb9
rol r8d, 3
add r8d, ebp
shl edi, 0x10
imul ebp, dword [rsp + 0x264], 0xb9
movzx edx, dx
add edx, edi
mov edi, r11d
add edx, dword [rsp]
or edi, ecx
and edi, dword [rsp + 0x14]
and ecx, r11d
shl ebp, 0x10
or ecx, edi
imul edi, dword [rsp + 0xbc], 0xb9
add ecx, edx
imul edx, dword [rsp + 0xb8], 0xb9
rol ecx, 3
add ecx, ebx
shl edi, 0x10
movzx edx, dx
add edx, edi
mov edi, r10d
add edx, dword [rsp + 8]
or edi, eax
and edi, dword [rsp + 0x18]
and eax, r10d
or eax, edi
add edx, eax
mov eax, edx
rol eax, 3
lea edx, [rax + r12]
mov eax, r9d
ror eax, 4
mov edi, eax
mov eax, r8d
ror eax, 4
mov dword [rsp + 0x20], eax
mov eax, ecx
ror eax, 4
mov dword [rsp], eax
mov eax, edx
ror eax, 4
mov dword [rsp + 8], eax
imul eax, dword [rsp + 0x260], 0xb9
movzx eax, ax
add eax, ebp
mov ebp, r13d
add eax, dword [rsp + 0xc]
xor ebp, ebx
and ebp, r9d
mov r9d, dword [rsp + 8]
xor ebp, r13d
add ebp, eax
imul eax, dword [rsp + 0x268], 0xb9
ror ebp, 0xd
add r9d, ebp
imul ebp, dword [rsp + 0x26c], 0xb9
movzx eax, ax
shl ebp, 0x10
add eax, ebp
mov ebp, esi
add eax, dword [rsp + 0x10]
xor ebp, r12d
and ebp, r8d
mov r8d, dword [rsp]
xor ebp, esi
add ebp, eax
imul eax, dword [rsp + 0x270], 0xb9
ror ebp, 0xd
add r8d, ebp
imul ebp, dword [rsp + 0x274], 0xb9
movzx eax, ax
shl ebp, 0x10
add eax, ebp
mov ebp, r14d
add eax, dword [rsp + 0x14]
xor ebp, r11d
and ebp, ecx
xor ebp, r11d
add ebp, eax
mov eax, dword [rsp + 0x20]
ror ebp, 0xd
lea ecx, [rbp + rax]
imul eax, dword [rsp + 0x278], 0xb9
imul ebp, dword [rsp + 0x27c], 0xb9
movzx eax, ax
shl ebp, 0x10
add eax, ebp
mov ebp, dword [rsp + 0x1c]
add eax, dword [rsp + 0x18]
xor ebp, r10d
and ebp, edx
xor ebp, r10d
add ebp, eax
mov eax, r9d
ror ebp, 0xd
ror eax, 0xd
lea edx, [rbp + rdi]
mov ebp, eax
mov eax, r8d
ror eax, 0xd
mov r14d, edx
mov dword [rsp + 0x10], eax
mov eax, ecx
ror r14d, 0xd
ror eax, 0xd
mov dword [rsp + 0xc], r14d
imul r14d, dword [rsp + 0x1e4], 0xb9
mov dword [rsp + 0x14], eax
imul eax, dword [rsp + 0x1e0], 0xb9
shl r14d, 0x10
movzx eax, ax
add eax, r14d
mov r14d, dword [rsp + 0x24]
add r13d, eax
mov eax, ebx
xor eax, edi
and eax, r9d
mov r9d, dword [rsp + 0x10]
xor eax, ebx
add r13d, eax
imul eax, dword [rsp + 0x1e8], 0xb9
ror r13d, 0xa
add r9d, r13d
imul r13d, dword [rsp + 0x1ec], 0xb9
movzx eax, ax
shl r13d, 0x10
add eax, r13d
mov r13d, dword [rsp + 0x20]
add esi, eax
mov eax, r13d
xor eax, r12d
and eax, r8d
xor eax, r12d
add esi, eax
imul eax, dword [rsp + 0x1f0], 0xb9
ror esi, 0xa
lea r8d, [rsi + rbp]
imul esi, dword [rsp + 0x1f4], 0xb9
movzx eax, ax
shl esi, 0x10
add eax, esi
add r11d, eax
mov eax, dword [rsp]
xor eax, r14d
and eax, ecx
mov ecx, dword [rsp + 0xc]
xor eax, r14d
add r11d, eax
imul eax, dword [rsp + 0x1f8], 0xb9
ror r11d, 0xa
add ecx, r11d
imul r11d, dword [rsp + 0x1fc], 0xb9
movzx eax, ax
shl r11d, 0x10
add eax, r11d
mov r11d, dword [rsp + 0x1c]
add r10d, eax
mov eax, dword [rsp + 8]
xor eax, r11d
and eax, edx
xor eax, r11d
add r10d, eax
mov eax, dword [rsp + 0x14]
ror r10d, 0xa
lea edx, [r10 + rax]
mov r10d, r9d
ror r10d, 0xa
mov eax, edx
mov esi, r10d
mov r10d, r8d
ror eax, 0xa
ror r10d, 0xa
mov dword [rsp + 0x20], eax
imul eax, dword [rsp + 0x200], 0xb9
mov dword [rsp + 0x18], r10d
mov r10d, ecx
ror r10d, 0xa
mov dword [rsp + 0x1c], r10d
imul r10d, dword [rsp + 0x204], 0xb9
movzx eax, ax
shl r10d, 0x10
add eax, r10d
mov r10d, dword [rsp + 0x1c]
add ebx, eax
mov eax, edi
xor eax, ebp
and eax, r9d
xor eax, edi
add ebx, eax
imul eax, dword [rsp + 0x208], 0xb9
rol ebx, 7
lea r9d, [rbx + r10]
mov ebx, r13d
imul r10d, dword [rsp + 0x20c], 0xb9
movzx eax, ax
shl r10d, 0x10
add eax, r10d
add r12d, eax
mov eax, dword [rsp + 0x10]
xor eax, r13d
and eax, r8d
mov r8d, dword [rsp + 0x20]
xor eax, r13d
add r12d, eax
imul eax, dword [rsp + 0x210], 0xb9
rol r12d, 7
imul r10d, dword [rsp + 0x214], 0xb9
add r8d, r12d
movzx eax, ax
shl r10d, 0x10
add eax, r10d
mov r10d, dword [rsp + 0x14]
add eax, r14d
mov r14d, dword [rsp]
xor r10d, r14d
and r10d, ecx
xor r10d, r14d
add r10d, eax
imul eax, dword [rsp + 0x218], 0xb9
rol r10d, 7
lea ecx, [r10 + rsi]
imul r10d, dword [rsp + 0x21c], 0xb9
movzx eax, ax
shl r10d, 0x10
add eax, r10d
mov r10d, dword [rsp + 0xc]
add eax, r11d
mov r11d, dword [rsp + 8]
xor r10d, r11d
and r10d, edx
mov edx, r9d
xor r10d, r11d
rol edx, 7
add r10d, eax
mov eax, edx
mov edx, r8d
rol r10d, 7
add r10d, dword [rsp + 0x18]
rol edx, 7
imul r11d, dword [rsp + 0x184], 0xb9
mov r12d, edx
mov edx, ecx
rol edx, 7
mov r13d, edx
mov edx, r10d
shl r11d, 0x10
rol edx, 7
mov r14d, edx
imul edx, dword [rsp + 0x180], 0xb9
movzx edx, dx
add edx, r11d
imul r11d, dword [rsp + 0x18c], 0xb9
add edi, edx
mov edx, ebp
xor edx, esi
and edx, r9d
xor edx, ebp
shl r11d, 0x10
add edi, edx
imul edx, dword [rsp + 0x188], 0xb9
ror edi, 4
lea r9d, [rdi + r14]
mov edi, dword [rsp + 0x14]
movzx edx, dx
add edx, r11d
lea r11d, [rdx + rbx]
mov ebx, dword [rsp + 0x10]
mov edx, dword [rsp + 0x18]
xor edx, ebx
and edx, r8d
xor edx, ebx
add edx, r11d
imul r11d, dword [rsp + 0x194], 0xb9
ror edx, 4
lea r8d, [rdx + r13]
imul edx, dword [rsp + 0x190], 0xb9
shl r11d, 0x10
movzx edx, dx
add edx, r11d
mov r11d, dword [rsp + 0x1c]
add edx, dword [rsp]
xor r11d, edi
and r11d, ecx
xor r11d, edi
add r11d, edx
ror r11d, 4
imul edx, dword [rsp + 0x198], 0xb9
lea ecx, [r11 + r12]
imul r11d, dword [rsp + 0x19c], 0xb9
movzx edx, dx
shl r11d, 0x10
add edx, r11d
mov r11d, dword [rsp + 0xc]
xor r11d, dword [rsp + 0x20]
add edx, dword [rsp + 8]
and r11d, r10d
xor r11d, dword [rsp + 0xc]
add r11d, edx
mov edx, r9d
ror edx, 4
ror r11d, 4
mov dword [rsp + 0x24], edx
lea r10d, [r11 + rax]
mov edx, r8d
mov r11d, ecx
ror edx, 4
ror r11d, 4
mov dword [rsp + 0x28], edx
mov edx, r10d
ror edx, 4
mov dword [rsp], r11d
imul r11d, dword [rsp + 0x1a4], 0xb9
mov dword [rsp + 8], edx
imul edx, dword [rsp + 0x1a0], 0xb9
shl r11d, 0x10
movzx edx, dx
add edx, r11d
add ebp, edx
mov edx, eax
or edx, r9d
and r9d, eax
and edx, esi
or r9d, edx
add r9d, ebp
mov ebp, dword [rsp + 0x28]
imul edx, dword [rsp + 0x1a8], 0xb9
ror r9d, 0xd
imul r11d, dword [rsp + 0x1ac], 0xb9
movzx edx, dx
add r9d, ebp
shl r11d, 0x10
add edx, r11d
mov r11d, dword [rsp + 0x18]
add edx, ebx
mov ebx, r12d
or ebx, r8d
and r11d, ebx
and r8d, r12d
mov ebx, dword [rsp + 0x24]
or r8d, r11d
imul r11d, dword [rsp + 0x1b4], 0xb9
add r8d, edx
imul edx, dword [rsp + 0x1b0], 0xb9
ror r8d, 0xd
add r8d, ebx
shl r11d, 0x10
movzx edx, dx
add edx, r11d
mov r11d, dword [rsp + 0x1c]
add edx, edi
mov edi, r13d
or edi, ecx
and ecx, r13d
and r11d, edi
mov edi, r9d
or ecx, r11d
ror edi, 0xd
imul r11d, dword [rsp + 0x1bc], 0xb9
add ecx, edx
imul edx, dword [rsp + 0x1b8], 0xb9
ror ecx, 0xd
add ecx, dword [rsp + 8]
shl r11d, 0x10
movzx edx, dx
add edx, r11d
mov r11d, r14d
add edx, dword [rsp + 0xc]
mov dword [rsp + 0xc], edi
or r11d, r10d
and r11d, dword [rsp + 0x20]
and r10d, r14d
mov edi, r8d
ror edi, 0xd
mov dword [rsp + 0x10], edi
mov edi, ecx
or r10d, r11d
add r10d, edx
ror r10d, 0xd
add r10d, dword [rsp]
ror edi, 0xd
imul r11d, dword [rsp + 0x220], 0xb9
mov dword [rsp + 0x2c], edi
mov edx, r10d
movzx r11d, r11w
ror edx, 0xd
mov dword [rsp + 0x14], edx
imul edx, dword [rsp + 0x224], 0xb9
shl edx, 0x10
add edx, r11d
mov r11d, ebx
or r11d, r9d
and r9d, ebx
add edx, esi
mov esi, dword [rsp]
and r11d, eax
or r9d, r11d
imul r11d, dword [rsp + 0x228], 0xb9
add edx, r9d
mov r9d, edx
ror r9d, 0xa
lea edx, [r9 + rdi]
movzx r11d, r11w
imul r9d, dword [rsp + 0x22c], 0xb9
shl r9d, 0x10
add r9d, r11d
mov r11d, ebp
add r9d, dword [rsp + 0x18]
or r11d, r8d
and r8d, ebp
and r11d, r12d
or r8d, r11d
imul r11d, dword [rsp + 0x230], 0xb9
add r8d, r9d
imul r9d, dword [rsp + 0x234], 0xb9
ror r8d, 0xa
add r8d, dword [rsp + 0x14]
movzx r11d, r11w
shl r9d, 0x10
add r9d, r11d
mov r11d, esi
add r9d, dword [rsp + 0x1c]
or r11d, ecx
and r11d, r13d
and ecx, esi
or ecx, r11d
imul r11d, dword [rsp + 0x238], 0xb9
add ecx, r9d
imul r9d, dword [rsp + 0x23c], 0xb9
ror ecx, 0xa
add ecx, dword [rsp + 0xc]
movzx r11d, r11w
shl r9d, 0x10
add r9d, r11d
add r9d, dword [rsp + 0x20]
mov ebp, dword [rsp + 8]
imul edi, dword [rsp + 0x1c0], 0xb9
mov r11d, ebp
movzx edi, di
or r11d, r10d
and r10d, ebp
imul ebp, dword [rsp + 0x1c4], 0xb9
and r11d, r14d
or r10d, r11d
mov r11d, ecx
add r9d, r10d
ror r11d, 0xa
shl ebp, 0x10
mov r10d, r9d
mov r9d, dword [rsp + 0x10]
add edi, ebp
mov ebp, dword [rsp + 0xc]
ror r10d, 0xa
add eax, edi
add r9d, r10d
mov r10d, edx
mov edi, ebp
ror r10d, 0xa
or edi, edx
and edi, dword [rsp + 0x24]
mov esi, r10d
and edx, ebp
mov r10d, r8d
mov ebp, dword [rsp + 0x10]
ror r10d, 0xa
mov ebx, r10d
mov r10d, r9d
or edx, edi
ror r10d, 0xa
add edx, eax
rol edx, 7
add edx, r10d
imul eax, dword [rsp + 0x1c8], 0xb9
imul edi, dword [rsp + 0x1cc], 0xb9
movzx eax, ax
shl edi, 0x10
add eax, edi
imul edi, dword [rsp + 0x1d4], 0xb9
add r12d, eax
mov eax, ebp
or eax, r8d
and eax, dword [rsp + 0x28]
and r8d, ebp
shl edi, 0x10
or r8d, eax
imul eax, dword [rsp + 0x1d0], 0xb9
add r8d, r12d
mov r12d, dword [rsp + 0x14]
rol r8d, 7
add r8d, r11d
movzx eax, ax
add eax, edi
mov edi, dword [rsp + 0x2c]
add r13d, eax
mov eax, edi
or eax, ecx
and eax, dword [rsp]
and ecx, edi
imul edi, dword [rsp + 0x1dc], 0xb9
or ecx, eax
shl edi, 0x10
imul eax, dword [rsp + 0x1d8], 0xb9
add ecx, r13d
rol ecx, 7
add ecx, ebx
movzx eax, ax
add eax, edi
add r14d, eax
mov eax, r12d
or eax, r9d
and eax, dword [rsp + 8]
and r9d, r12d
imul edi, dword [rsp + 0x244], 0xb9
or r9d, eax
shl edi, 0x10
add r9d, r14d
mov r14d, edx
rol r9d, 7
rol r14d, 7
lea eax, [r9 + rsi]
mov r13d, r14d
mov r14d, r8d
imul r9d, dword [rsp + 0x240], 0xb9
rol r14d, 7
mov r12d, r14d
mov r14d, ecx
rol r14d, 7
movzx r9d, r9w
mov ebp, r14d
mov r14d, eax
add r9d, edi
mov edi, dword [rsp + 0x24]
rol r14d, 7
mov dword [rsp + 0x18], r14d
add edi, r9d
mov r9d, esi
or r9d, edx
and r9d, dword [rsp + 0xc]
and edx, esi
or edx, r9d
add edx, edi
imul edi, dword [rsp + 0x24c], 0xb9
ror edx, 4
lea r9d, [rdx + r12]
imul edx, dword [rsp + 0x248], 0xb9
shl edi, 0x10
movzx edx, dx
add edx, edi
mov edi, ebx
add edx, dword [rsp + 0x28]
or edi, r8d
and edi, dword [rsp + 0x10]
and r8d, ebx
or r8d, edi
add r8d, edx
imul edx, dword [rsp + 0x250], 0xb9
ror r8d, 4
add r8d, r13d
imul edi, dword [rsp + 0x254], 0xb9
movzx edx, dx
shl edi, 0x10
add edx, edi
mov edi, r11d
add edx, dword [rsp]
or edi, ecx
and edi, dword [rsp + 0x2c]
and ecx, r11d
or ecx, edi
add ecx, edx
imul edx, dword [rsp + 0x258], 0xb9
ror ecx, 4
imul edi, dword [rsp + 0x25c], 0xb9
add ecx, r14d
movzx edx, dx
shl edi, 0x10
add edx, edi
mov edi, r10d
add edx, dword [rsp + 8]
or edi, eax
and edi, dword [rsp + 0x14]
and eax, r10d
or eax, edi
mov edi, r9d
add eax, edx
mov edx, ecx
ror edi, 3
ror eax, 4
ror edx, 3
lea r14d, [rax + rbp]
mov eax, r8d
mov dword [rsp + 0x1c], edx
imul edx, dword [rsp + 0xa0], 0xe9
ror eax, 3
mov dword [rsp + 0x24], eax
mov eax, r14d
ror eax, 3
mov dword [rsp], eax
movzx edx, dx
imul eax, dword [rsp + 0x1a0], 0xe9
shl eax, 0x10
add eax, edx
mov edx, esi
add eax, dword [rsp + 0xc]
xor edx, r13d
and edx, r9d
xor edx, esi
add eax, edx
mov edx, dword [rsp + 0x1c]
rol eax, 9
lea r9d, [rax + rdx]
imul edx, dword [rsp + 0xa8], 0xe9
imul eax, dword [rsp + 0x1a8], 0xe9
movzx edx, dx
shl eax, 0x10
add eax, edx
mov edx, ebx
add eax, dword [rsp + 0x10]
xor edx, r12d
and edx, r8d
mov r8d, dword [rsp]
xor edx, ebx
add edx, eax
imul eax, dword [rsp + 0x1b0], 0xe9
rol edx, 9
add r8d, edx
imul edx, dword [rsp + 0xb0], 0xe9
shl eax, 0x10
movzx edx, dx
add eax, edx
mov edx, r11d
add eax, dword [rsp + 0x2c]
xor edx, ebp
and edx, ecx
xor edx, r11d
add edx, eax
imul eax, dword [rsp + 0x1b8], 0xe9
rol edx, 9
lea ecx, [rdx + rdi]
imul edx, dword [rsp + 0xb8], 0xe9
shl eax, 0x10
movzx edx, dx
add eax, edx
mov edx, dword [rsp + 0x18]
add eax, dword [rsp + 0x14]
xor edx, r10d
and edx, r14d
mov r14d, r9d
xor edx, r10d
rol r14d, 9
add edx, eax
mov eax, r8d
mov dword [rsp + 0xc], r14d
mov r14d, ecx
rol edx, 9
add edx, dword [rsp + 0x24]
rol eax, 9
mov dword [rsp + 0x10], eax
rol r14d, 9
mov dword [rsp + 0x14], r14d
imul r14d, dword [rsp + 0x1c0], 0xe9
mov eax, edx
rol eax, 9
mov dword [rsp + 8], eax
shl r14d, 0x10
imul eax, dword [rsp + 0xc0], 0xe9
movzx eax, ax
add eax, r14d
add esi, eax
mov eax, r13d
xor eax, edi
and eax, r9d
mov r9d, dword [rsp + 8]
xor eax, r13d
add esi, eax
imul eax, dword [rsp + 0xc8], 0xe9
rol esi, 0xf
add r9d, esi
imul esi, dword [rsp + 0x1c8], 0xe9
mov r14d, r9d
movzx eax, ax
shl esi, 0x10
add eax, esi
add ebx, eax
mov eax, dword [rsp + 0x24]
xor eax, r12d
and eax, r8d
mov r8d, dword [rsp + 0x14]
xor eax, r12d
mov esi, dword [rsp + 0x18]
add ebx, eax
imul eax, dword [rsp + 0xd0], 0xe9
rol ebx, 0xf
add r8d, ebx
imul ebx, dword [rsp + 0x1d0], 0xe9
movzx eax, ax
shl ebx, 0x10
rol r14d, 0xf
add eax, ebx
mov ebx, dword [rsp + 0x1c]
add r11d, eax
mov eax, ebx
xor eax, ebp
and eax, ecx
mov ecx, dword [rsp + 0x10]
xor eax, ebp
add r11d, eax
imul eax, dword [rsp + 0xd8], 0xe9
rol r11d, 0xf
add ecx, r11d
imul r11d, dword [rsp + 0x1d8], 0xe9
movzx eax, ax
shl r11d, 0x10
add eax, r11d
mov r11d, dword [rsp + 0xc]
add r10d, eax
mov eax, dword [rsp]
xor eax, esi
and eax, edx
xor eax, esi
add r10d, eax
rol r10d, 0xf
lea edx, [r10 + r11]
mov r10d, r8d
rol r10d, 0xf
mov eax, edx
mov dword [rsp + 0x18], r10d
mov r10d, ecx
rol eax, 0xf
rol r10d, 0xf
mov dword [rsp + 0x20], eax
imul eax, dword [rsp + 0x160], 0xe9
mov dword [rsp + 0x1c], r10d
imul r10d, dword [rsp + 0x260], 0xe9
movzx eax, ax
shl r10d, 0x10
add eax, r10d
mov r10d, r11d
xor r10d, edi
add r13d, eax
mov eax, r10d
mov r10d, dword [rsp + 0x18]
and eax, r9d
xor eax, edi
add r13d, eax
rol r13d, 5
imul eax, dword [rsp + 0x168], 0xe9
lea r9d, [r13 + r10]
imul r10d, dword [rsp + 0x268], 0xe9
mov r11d, r9d
mov r13d, dword [rsp + 0x24]
rol r11d, 5
movzx eax, ax
shl r10d, 0x10
add eax, r10d
imul r10d, dword [rsp + 0x270], 0xe9
add r12d, eax
mov eax, dword [rsp + 0x10]
shl r10d, 0x10
xor eax, r13d
and eax, r8d
xor eax, r13d
add r12d, eax
imul eax, dword [rsp + 0x170], 0xe9
rol r12d, 5
lea r8d, [r12 + r14]
mov r12d, ebx
movzx eax, ax
add eax, r10d
imul r10d, dword [rsp + 0x278], 0xe9
add ebp, eax
mov eax, dword [rsp + 0x14]
shl r10d, 0x10
xor eax, ebx
and eax, ecx
xor eax, ebx
mov ebx, dword [rsp + 0x20]
add ebp, eax
imul eax, dword [rsp + 0x178], 0xe9
rol ebp, 5
lea ecx, [rbp + rbx]
mov ebx, r8d
movzx eax, ax
add eax, r10d
mov r10d, dword [rsp + 8]
add eax, esi
mov esi, dword [rsp]
xor r10d, esi
and r10d, edx
xor r10d, esi
mov esi, ecx
add r10d, eax
mov eax, dword [rsp + 0x1c]
rol r10d, 5
rol ebx, 5
rol esi, 5
lea edx, [r10 + rax]
imul r10d, dword [rsp + 0x200], 0xe9
mov eax, edx
rol eax, 5
mov dword [rsp + 0x24], eax
imul eax, dword [rsp + 0x100], 0xe9
shl r10d, 0x10
mov ebp, dword [rsp + 0xc]
movzx eax, ax
add eax, r10d
imul r10d, dword [rsp + 0x208], 0xe9
add edi, eax
mov eax, ebp
xor eax, r14d
and eax, r9d
xor eax, ebp
shl r10d, 0x10
add edi, eax
imul eax, dword [rsp + 0x108], 0xe9
ror edi, 3
lea r9d, [rdi + rsi]
mov edi, dword [rsp + 8]
movzx eax, ax
add eax, r10d
lea r10d, [rax + r13]
mov r13d, dword [rsp + 0x10]
mov eax, dword [rsp + 0x18]
xor eax, r13d
and eax, r8d
imul r8d, dword [rsp + 0x110], 0xe9
xor eax, r13d
add eax, r10d
imul r10d, dword [rsp + 0x210], 0xe9
ror eax, 3
movzx r8d, r8w
add eax, dword [rsp + 0x24]
shl r10d, 0x10
add r8d, r10d
mov r10d, dword [rsp + 0x1c]
add r8d, r12d
mov r12d, dword [rsp + 0x14]
xor r10d, r12d
and r10d, ecx
xor r10d, r12d
add r10d, r8d
ror r10d, 3
imul r8d, dword [rsp + 0x118], 0xe9
lea ecx, [r10 + r11]
imul r10d, dword [rsp + 0x218], 0xe9
movzx r8d, r8w
shl r10d, 0x10
add r8d, r10d
mov r10d, dword [rsp + 0x20]
add r8d, dword [rsp]
xor r10d, edi
and r10d, edx
mov edx, r9d
xor r10d, edi
ror edx, 3
add r10d, r8d
mov edi, edx
mov edx, eax
ror r10d, 3
ror edx, 3
mov r8d, ecx
add r10d, ebx
mov dword [rsp + 0x28], edx
ror r8d, 3
mov edx, r10d
mov dword [rsp], r8d
imul r8d, dword [rsp + 0x240], 0xe9
ror edx, 3
mov dword [rsp + 0xc], edx
imul edx, dword [rsp + 0x140], 0xe9
shl r8d, 0x10
movzx edx, dx
add edx, r8d
mov r8d, r11d
or r8d, r9d
and r9d, r11d
add edx, ebp
and r8d, r14d
or r9d, r8d
add r9d, edx
mov edx, dword [rsp + 0xc]
rol r9d, 9
lea r8d, [r9 + rdx]
imul edx, dword [rsp + 0x148], 0xe9
imul r9d, dword [rsp + 0x248], 0xe9
movzx edx, dx
shl r9d, 0x10
add edx, r9d
mov r9d, ebx
add edx, r13d
or r9d, eax
and r9d, dword [rsp + 0x18]
and eax, ebx
mov r13d, dword [rsp + 0x28]
or eax, r9d
imul r9d, dword [rsp + 0x250], 0xe9
add edx, eax
mov eax, edx
mov edx, dword [rsp]
rol eax, 9
shl r9d, 0x10
add edx, eax
imul eax, dword [rsp + 0x150], 0xe9
movzx eax, ax
add eax, r9d
mov r9d, esi
or r9d, ecx
and r9d, dword [rsp + 0x1c]
and ecx, esi
add eax, r12d
or ecx, r9d
imul r9d, dword [rsp + 0x258], 0xe9
add ecx, eax
imul eax, dword [rsp + 0x158], 0xe9
rol ecx, 9
add ecx, r13d
shl r9d, 0x10
movzx eax, ax
add eax, r9d
add eax, dword [rsp + 8]
mov ebp, dword [rsp + 0x24]
mov r9d, ebp
or r9d, r10d
and r9d, dword [rsp + 0x20]
and r10d, ebp
or r10d, r9d
mov r9d, ecx
add eax, r10d
mov r10d, r8d
rol r10d, 9
rol eax, 9
lea eax, [rax + rdi]
mov r12d, r10d
mov r10d, edx
rol r10d, 9
rol r9d, 9
mov dword [rsp + 0x2c], r12d
mov dword [rsp + 0x10], r9d
mov r9d, eax
rol r9d, 9
mov dword [rsp + 8], r10d
mov dword [rsp + 0x14], r9d
imul r10d, dword [rsp + 0x220], 0xe9
imul r9d, dword [rsp + 0x120], 0xe9
shl r10d, 0x10
movzx r9d, r9w
add r9d, r10d
mov r10d, dword [rsp + 8]
add r14d, r9d
mov r9d, edi
or r9d, r8d
and r8d, edi
and r9d, r11d
or r8d, r9d
add r14d, r8d
imul r8d, dword [rsp + 0x228], 0xe9
rol r14d, 0xf
lea r9d, [r14 + r10]
mov r14d, dword [rsp + 0xc]
imul r10d, dword [rsp + 0x128], 0xe9
shl r8d, 0x10
movzx r10d, r10w
add r8d, r10d
mov r10d, r13d
add r8d, dword [rsp + 0x18]
or r10d, edx
and edx, r13d
and r10d, ebx
or edx, r10d
imul r10d, dword [rsp + 0x130], 0xe9
add r8d, edx
imul edx, dword [rsp + 0x230], 0xe9
rol r8d, 0xf
lea r8d, [r8 + r12]
mov r12d, dword [rsp]
movzx r10d, r10w
shl edx, 0x10
add edx, r10d
add edx, dword [rsp + 0x1c]
mov r10d, r12d
or r10d, ecx
and ecx, r12d
and r10d, esi
or ecx, r10d
imul r10d, dword [rsp + 0x138], 0xe9
add ecx, edx
imul edx, dword [rsp + 0x238], 0xe9
rol ecx, 0xf
add ecx, dword [rsp + 0x14]
movzx r10d, r10w
shl edx, 0x10
add edx, r10d
mov r10d, r14d
add edx, dword [rsp + 0x20]
or r10d, eax
and eax, r14d
imul r14d, dword [rsp + 0x180], 0xe9
and r10d, ebp
or eax, r10d
add edx, eax
mov eax, edx
mov edx, dword [rsp + 0x10]
shl r14d, 0x10
rol eax, 0xf
add edx, eax
mov eax, r9d
rol eax, 0xf
mov r13d, eax
mov eax, r8d
rol eax, 0xf
mov r12d, eax
mov eax, ecx
rol eax, 0xf
mov ebp, eax
mov eax, edx
rol eax, 0xf
mov r10d, eax
imul eax, dword [rsp + 0x80], 0xe9
movzx eax, ax
add eax, r14d
mov r14d, dword [rsp + 0x2c]
add r11d, eax
mov eax, r14d
or eax, r9d
and r9d, r14d
and eax, edi
or r9d, eax
add r9d, r11d
rol r9d, 5
add r9d, ebp
imul eax, dword [rsp + 0x88], 0xe9
imul r11d, dword [rsp + 0x188], 0xe9
movzx eax, ax
shl r11d, 0x10
add eax, r11d
mov r11d, dword [rsp + 8]
add ebx, eax
mov eax, r11d
or eax, r8d
and eax, dword [rsp + 0x28]
and r8d, r11d
imul r11d, dword [rsp + 0x190], 0xe9
or r8d, eax
shl r11d, 0x10
imul eax, dword [rsp + 0x90], 0xe9
add r8d, ebx
rol r8d, 5
add r8d, r10d
movzx eax, ax
add eax, r11d
mov r11d, dword [rsp + 0x10]
add esi, eax
mov eax, r11d
or eax, ecx
and eax, dword [rsp]
and ecx, r11d
imul r11d, dword [rsp + 0x98], 0xe9
mov ebx, dword [rsp + 0x14]
or ecx, eax
movzx r11d, r11w
imul eax, dword [rsp + 0x198], 0xe9
add ecx, esi
mov esi, ebx
rol ecx, 5
or esi, edx
and edx, ebx
add ecx, r13d
shl eax, 0x10
add eax, r11d
mov r11d, dword [rsp + 0xc]
add eax, dword [rsp + 0x24]
and r11d, esi
or edx, r11d
add eax, edx
mov edx, r9d
rol edx, 5
rol eax, 5
lea eax, [rax + r12]
mov ebx, edx
mov edx, r8d
rol edx, 5
mov r11d, eax
mov esi, edx
mov edx, ecx
rol r11d, 5
rol edx, 5
mov dword [rsp + 0x1c], r11d
imul r11d, dword [rsp + 0x1e0], 0xe9
mov r14d, edx
imul edx, dword [rsp + 0xe0], 0xe9
shl r11d, 0x10
movzx edx, dx
add edx, r11d
imul r11d, dword [rsp + 0x1e8], 0xe9
add edi, edx
mov edx, r13d
or edx, r9d
and edx, dword [rsp + 0x2c]
and r9d, r13d
shl r11d, 0x10
or r9d, edx
imul edx, dword [rsp + 0xe8], 0xe9
add r9d, edi
mov edi, dword [rsp + 0x28]
ror r9d, 3
add r9d, dword [rsp + 0x1c]
movzx edx, dx
add edx, r11d
lea r11d, [rdx + rdi]
mov edx, r12d
mov edi, ebp
or edx, r8d
and edx, dword [rsp + 8]
and r8d, r12d
or r8d, edx
imul edx, dword [rsp + 0x1f0], 0xe9
add r8d, r11d
imul r11d, dword [rsp + 0xf0], 0xe9
ror r8d, 3
add r8d, r14d
shl edx, 0x10
or edi, ecx
and ecx, ebp
movzx r11d, r11w
add edx, r11d
mov r11d, dword [rsp + 0x10]
add edx, dword [rsp]
and r11d, edi
mov edi, r10d
or ecx, r11d
or edi, eax
and eax, r10d
imul r11d, dword [rsp + 0xf8], 0xe9
add ecx, edx
imul edx, dword [rsp + 0x1f8], 0xe9
ror ecx, 3
add ecx, esi
movzx r11d, r11w
shl edx, 0x10
add edx, r11d
mov r11d, dword [rsp + 0x14]
add edx, dword [rsp + 0xc]
and r11d, edi
or eax, r11d
imul r11d, dword [rsp + 0x244], 0xe9
add edx, eax
mov eax, edx
ror eax, 3
lea edx, [rax + rbx]
mov eax, r9d
shl r11d, 0x10
rol eax, 4
mov edi, eax
mov eax, r8d
rol eax, 4
mov dword [rsp], eax
mov eax, ecx
rol eax, 4
mov dword [rsp + 0xc], eax
mov eax, edx
rol eax, 4
mov dword [rsp + 0x18], eax
imul eax, dword [rsp + 0x144], 0xe9
movzx eax, ax
add eax, r11d
mov r11d, r13d
add eax, dword [rsp + 0x2c]
xor r11d, ebx
and r11d, r9d
xor r11d, r13d
add r11d, eax
mov eax, dword [rsp]
rol r11d, 0xd
lea r9d, [r11 + rax]
imul eax, dword [rsp + 0x14c], 0xe9
imul r11d, dword [rsp + 0x24c], 0xe9
movzx eax, ax
shl r11d, 0x10
add eax, r11d
mov r11d, r12d
add eax, dword [rsp + 8]
xor r11d, esi
and r11d, r8d
xor r11d, r12d
add r11d, eax
imul eax, dword [rsp + 0x154], 0xe9
rol r11d, 0xd
lea r8d, [r11 + rdi]
imul r11d, dword [rsp + 0x254], 0xe9
movzx eax, ax
shl r11d, 0x10
add eax, r11d
mov r11d, ebp
add eax, dword [rsp + 0x10]
xor r11d, r14d
and r11d, ecx
mov ecx, dword [rsp + 0x18]
xor r11d, ebp
add r11d, eax
imul eax, dword [rsp + 0x25c], 0xe9
rol r11d, 0xd
add ecx, r11d
imul r11d, dword [rsp + 0x15c], 0xe9
shl eax, 0x10
movzx r11d, r11w
add eax, r11d
mov r11d, dword [rsp + 0x1c]
add eax, dword [rsp + 0x14]
xor r11d, r10d
and r11d, edx
mov edx, dword [rsp + 0xc]
xor r11d, r10d
add r11d, eax
mov eax, r9d
rol eax, 0xd
rol r11d, 0xd
mov dword [rsp + 0x24], eax
mov eax, r8d
add edx, r11d
mov r11d, ecx
rol eax, 0xd
rol r11d, 0xd
mov dword [rsp + 8], eax
mov eax, edx
rol eax, 0xd
mov dword [rsp + 0x10], r11d
imul r11d, dword [rsp + 0x184], 0xe9
mov dword [rsp + 0x14], eax
imul eax, dword [rsp + 0x84], 0xe9
shl r11d, 0x10
movzx eax, ax
add eax, r11d
imul r11d, dword [rsp + 0x18c], 0xe9
add r13d, eax
mov eax, ebx
xor eax, edi
and eax, r9d
mov r9d, dword [rsp + 0x10]
xor eax, ebx
shl r11d, 0x10
add r13d, eax
imul eax, dword [rsp + 0x8c], 0xe9
rol r13d, 0xa
add r9d, r13d
mov r13d, dword [rsp + 0xc]
movzx eax, ax
add eax, r11d
imul r11d, dword [rsp + 0x194], 0xe9
add r12d, eax
mov eax, dword [rsp]
shl r11d, 0x10
xor eax, esi
and eax, r8d
mov r8d, dword [rsp + 0x14]
xor eax, esi
add r12d, eax
imul eax, dword [rsp + 0x94], 0xe9
rol r12d, 0xa
add r8d, r12d
mov r12d, r8d
movzx eax, ax
add eax, r11d
xor r13d, r14d
rol r12d, 0xa
imul r11d, dword [rsp + 0x19c], 0xe9
add ebp, eax
mov eax, r13d
and eax, ecx
mov ecx, dword [rsp + 0x24]
xor eax, r14d
add ebp, eax
shl r11d, 0x10
imul eax, dword [rsp + 0x9c], 0xe9
rol ebp, 0xa
add ecx, ebp
movzx eax, ax
add eax, r11d
mov r11d, dword [rsp + 0x1c]
add r10d, eax
mov eax, dword [rsp + 0x18]
xor eax, r11d
and eax, edx
mov edx, dword [rsp + 8]
xor eax, r11d
add r10d, eax
imul eax, dword [rsp + 0xa4], 0xe9
rol r10d, 0xa
add edx, r10d
mov r10d, r9d
rol r10d, 0xa
mov r13d, edx
mov ebp, r10d
mov r10d, ecx
movzx eax, ax
rol r10d, 0xa
rol r13d, 0xa
mov dword [rsp + 0x20], r10d
imul r10d, dword [rsp + 0x1a4], 0xe9
shl r10d, 0x10
add eax, r10d
mov r10d, dword [rsp + 0x24]
add ebx, eax
xor r10d, edi
mov eax, r10d
and eax, r9d
xor eax, edi
add ebx, eax
ror ebx, 7
imul eax, dword [rsp + 0xac], 0xe9
lea r9d, [rbx + r13]
imul r10d, dword [rsp + 0x1ac], 0xe9
mov ebx, dword [rsp]
movzx eax, ax
shl r10d, 0x10
add eax, r10d
imul r10d, dword [rsp + 0x1b4], 0xe9
add esi, eax
mov eax, dword [rsp + 8]
shl r10d, 0x10
xor eax, ebx
and eax, r8d
xor eax, ebx
add esi, eax
mov eax, dword [rsp + 0x20]
ror esi, 7
lea r8d, [rsi + rax]
mov esi, dword [rsp + 0xc]
imul eax, dword [rsp + 0xb4], 0xe9
movzx eax, ax
add eax, r10d
imul r10d, dword [rsp + 0x1bc], 0xe9
add r14d, eax
mov eax, dword [rsp + 0x10]
shl r10d, 0x10
xor eax, esi
and eax, ecx
xor eax, esi
add r14d, eax
imul eax, dword [rsp + 0xbc], 0xe9
ror r14d, 7
lea ecx, [r14 + r12]
mov r14d, dword [rsp + 0x24]
movzx eax, ax
add eax, r10d
mov r10d, dword [rsp + 0x14]
add eax, r11d
mov r11d, dword [rsp + 0x18]
xor r10d, r11d
and r10d, edx
xor r10d, r11d
add r10d, eax
mov eax, r9d
ror eax, 7
ror r10d, 7
lea edx, [r10 + rbp]
mov r11d, eax
mov eax, r8d
ror eax, 7
imul r10d, dword [rsp + 0x264], 0xe9
mov ebx, eax
mov eax, ecx
ror eax, 7
mov esi, eax
mov eax, edx
ror eax, 7
shl r10d, 0x10
mov dword [rsp + 0x1c], eax
imul eax, dword [rsp + 0x164], 0xe9
movzx eax, ax
add eax, r10d
imul r10d, dword [rsp + 0x26c], 0xe9
add edi, eax
mov eax, r14d
xor eax, ebp
and eax, r9d
xor eax, r14d
shl r10d, 0x10
add edi, eax
imul eax, dword [rsp + 0x16c], 0xe9
rol edi, 4
lea r9d, [rdi + rbx]
mov edi, dword [rsp]
movzx eax, ax
add eax, r10d
lea r10d, [rax + rdi]
mov edi, dword [rsp + 8]
mov eax, edi
xor eax, r12d
and eax, r8d
imul r8d, dword [rsp + 0x174], 0xe9
xor eax, edi
add eax, r10d
mov edi, dword [rsp + 0x10]
imul r10d, dword [rsp + 0x274], 0xe9
rol eax, 4
movzx r8d, r8w
add eax, r11d
shl r10d, 0x10
add r8d, r10d
mov r10d, dword [rsp + 0x20]
add r8d, dword [rsp + 0xc]
xor r10d, edi
and r10d, ecx
mov ecx, dword [rsp + 0x1c]
xor r10d, edi
add r10d, r8d
rol r10d, 4
imul r8d, dword [rsp + 0x17c], 0xe9
add ecx, r10d
imul r10d, dword [rsp + 0x27c], 0xe9
movzx r8d, r8w
shl r10d, 0x10
add r8d, r10d
add r8d, dword [rsp + 0x18]
mov edi, dword [rsp + 0x14]
mov r10d, edi
xor r10d, r13d
and r10d, edx
mov edx, eax
xor r10d, edi
rol edx, 4
add r10d, r8d
mov dword [rsp], edx
mov r8d, ecx
rol r10d, 4
rol r8d, 4
lea edi, [r10 + rsi]
mov dword [rsp + 0xc], r8d
mov r10d, r9d
mov edx, edi
rol r10d, 4
imul r8d, dword [rsp + 0x1e4], 0xe9
rol edx, 4
mov dword [rsp + 0x18], edx
imul edx, dword [rsp + 0xe4], 0xe9
shl r8d, 0x10
movzx edx, dx
add edx, r8d
add edx, r14d
mov r14d, r11d
or r14d, r9d
and r9d, r11d
mov r8d, r14d
mov r14d, dword [rsp + 0x18]
and r8d, ebp
or r9d, r8d
mov r8d, dword [rsp + 0xc]
add r9d, edx
imul edx, dword [rsp + 0xec], 0xe9
rol r9d, 0xd
add r8d, r9d
imul r9d, dword [rsp + 0x1ec], 0xe9
movzx edx, dx
shl r9d, 0x10
add edx, r9d
mov r9d, ebx
add edx, dword [rsp + 8]
or r9d, eax
and eax, ebx
and r9d, r12d
or eax, r9d
imul r9d, dword [rsp + 0x1f4], 0xe9
add edx, eax
mov eax, edx
rol eax, 0xd
lea edx, [rax + r14]
shl r9d, 0x10
mov r14d, dword [rsp + 0x1c]
imul eax, dword [rsp + 0xf4], 0xe9
movzx eax, ax
add eax, r9d
mov r9d, esi
add eax, dword [rsp + 0x10]
or r9d, ecx
and r9d, dword [rsp + 0x20]
and ecx, esi
or ecx, r9d
imul r9d, dword [rsp + 0x1fc], 0xe9
add ecx, eax
imul eax, dword [rsp + 0xfc], 0xe9
rol ecx, 0xd
add ecx, r10d
shl r9d, 0x10
movzx eax, ax
add eax, r9d
mov r9d, r14d
add eax, dword [rsp + 0x14]
or r9d, edi
and edi, r14d
and r9d, r13d
mov r14d, r8d
or edi, r9d
mov r9d, ecx
rol r14d, 0xd
add eax, edi
rol eax, 0xd
mov edi, eax
mov eax, dword [rsp]
add eax, edi
mov edi, edx
rol edi, 0xd
rol r9d, 0xd
mov dword [rsp + 0x10], r9d
mov r9d, eax
rol r9d, 0xd
mov dword [rsp + 8], edi
imul edi, dword [rsp + 0x124], 0xe9
mov dword [rsp + 0x14], r9d
imul r9d, dword [rsp + 0x224], 0xe9
movzx edi, di
shl r9d, 0x10
add r9d, edi
add r9d, ebp
mov ebp, r10d
or ebp, r8d
and r8d, r10d
mov edi, ebp
mov ebp, dword [rsp]
and edi, r11d
or r8d, edi
add r8d, r9d
imul r9d, dword [rsp + 0x12c], 0xe9
rol r8d, 0xa
add r8d, dword [rsp + 0x14]
movzx r9d, r9w
mov dword [rsp + 0x24], r8d
imul r8d, dword [rsp + 0x22c], 0xe9
shl r8d, 0x10
add r8d, r9d
mov r9d, ebp
or r9d, edx
add r8d, r12d
and edx, ebp
mov r12d, dword [rsp + 0x10]
and r9d, ebx
or edx, r9d
add edx, r8d
imul r8d, dword [rsp + 0x134], 0xe9
rol edx, 0xa
add r12d, edx
imul edx, dword [rsp + 0x234], 0xe9
mov r9d, dword [rsp + 0xc]
movzx r8d, r8w
mov edi, dword [rsp + 8]
shl edx, 0x10
add edx, r8d
add edx, dword [rsp + 0x20]
mov r8d, r9d
or r8d, ecx
and ecx, r9d
and r8d, esi
or ecx, r8d
add ecx, edx
imul edx, dword [rsp + 0x23c], 0xe9
rol ecx, 0xa
lea r9d, [rcx + rdi]
mov edi, dword [rsp + 0x18]
imul ecx, dword [rsp + 0x13c], 0xe9
shl edx, 0x10
movzx ecx, cx
add edx, ecx
mov ecx, edi
or ecx, eax
and ecx, dword [rsp + 0x1c]
and eax, edi
add edx, r13d
mov r13d, r14d
or eax, ecx
mov ecx, r12d
add edx, eax
rol ecx, 0xa
mov eax, edx
rol eax, 0xa
lea edx, [rax + r14]
mov eax, dword [rsp + 0x24]
imul r14d, dword [rsp + 0x204], 0xe9
rol eax, 0xa
shl r14d, 0x10
mov r8d, eax
mov eax, r9d
rol eax, 0xa
mov ebp, eax
mov eax, edx
rol eax, 0xa
mov edi, eax
imul eax, dword [rsp + 0x104], 0xe9
movzx eax, ax
add eax, r14d
mov r14d, r13d
add r11d, eax
mov eax, r13d
mov r13d, dword [rsp + 0x24]
mov dword [rsp + 0x24], r14d
or eax, r13d
and r13d, r14d
mov r14d, dword [rsp + 0x14]
and eax, r10d
or r13d, eax
add r11d, r13d
ror r11d, 7
imul eax, dword [rsp + 0x10c], 0xe9
lea r11d, [r11 + rcx]
imul r13d, dword [rsp + 0x20c], 0xe9
movzx eax, ax
shl r13d, 0x10
add eax, r13d
mov r13d, dword [rsp + 8]
add ebx, eax
mov eax, r13d
or eax, r12d
and eax, dword [rsp]
and r12d, r13d
or r12d, eax
imul eax, dword [rsp + 0x114], 0xe9
add ebx, r12d
imul r12d, dword [rsp + 0x214], 0xe9
ror ebx, 7
lea ebx, [rbx + r8]
movzx eax, ax
shl r12d, 0x10
add eax, r12d
mov r12d, dword [rsp + 0x10]
add esi, eax
mov eax, r12d
or eax, r9d
and eax, dword [rsp + 0xc]
and r9d, r12d
or r9d, eax
imul eax, dword [rsp + 0x21c], 0xe9
add r9d, esi
imul esi, dword [rsp + 0x11c], 0xe9
ror r9d, 7
add r9d, edi
shl eax, 0x10
mov r12d, r9d
movzx esi, si
add eax, esi
mov esi, r14d
add eax, dword [rsp + 0x1c]
or esi, edx
and esi, dword [rsp + 0x18]
and edx, r14d
mov r14d, ebx
or edx, esi
add eax, edx
mov edx, r11d
ror r12d, 7
ror eax, 7
ror edx, 7
mov dword [rsp + 0x20], r12d
lea eax, [rax + rbp]
mov r13d, edx
ror r14d, 7
imul edx, dword [rsp + 0xc4], 0xe9
mov esi, eax
ror esi, 7
mov dword [rsp + 0x1c], esi
imul esi, dword [rsp + 0x1c4], 0xe9
movzx edx, dx
shl esi, 0x10
add edx, esi
add r10d, edx
mov edx, r8d
or edx, r11d
and edx, dword [rsp + 0x24]
and r11d, r8d
or r11d, edx
imul edx, dword [rsp + 0xcc], 0xe9
add r10d, r11d
mov r11d, r10d
rol r11d, 4
lea r10d, [r11 + r12]
movzx edx, dx
imul r11d, dword [rsp + 0x1cc], 0xe9
mov esi, dword [rsp + 0x1c]
shl r11d, 0x10
add edx, r11d
mov r11d, dword [rsp]
add r11d, edx
mov edx, ecx
or edx, ebx
and edx, dword [rsp + 8]
and ebx, ecx
or ebx, edx
imul edx, dword [rsp + 0x1d4], 0xe9
add ebx, r11d
rol ebx, 4
lea r11d, [rbx + rsi]
imul ebx, dword [rsp + 0xd4], 0xe9
shl edx, 0x10
movzx ebx, bx
add edx, ebx
mov ebx, ebp
add edx, dword [rsp + 0xc]
or ebx, r9d
and ebx, dword [rsp + 0x10]
and r9d, ebp
or r9d, ebx
imul ebx, dword [rsp + 0xdc], 0xe9
add edx, r9d
mov r9d, edx
rol r9d, 4
lea edx, [r9 + r13]
movzx ebx, bx
imul r9d, dword [rsp + 0x1dc], 0xe9
shl r9d, 0x10
add r9d, ebx
mov ebx, edi
add r9d, dword [rsp + 0x18]
mov dword [rsp + 0x18], r14d
or ebx, eax
and ebx, dword [rsp + 0x14]
and eax, edi
or eax, ebx
mov ebx, r11d
add eax, r9d
mov r9d, r10d
rol ebx, 4
rol eax, 4
rol r9d, 4
mov dword [rsp + 0xc], ebx
mov ebx, edx
add eax, r14d
mov dword [rsp], r9d
rol ebx, 4
mov r9d, eax
rol r9d, 4
mov r12d, r9d
mov r9d, r8d
xor r9d, r13d
and r9d, r10d
mov r10d, dword [rsp + 0x24]
mov dword [rsp + 0x24], r12d
add r10d, dword [r15 + 0x48]
xor r9d, r8d
add r9d, r10d
mov r10d, dword [rsp + 8]
mov dword [rsp + 8], ebx
rol r9d, 0xd
lea r12d, [r9 + r12]
mov r9d, r14d
mov r14d, dword [rsp]
xor r9d, ecx
and r9d, r11d
mov r11d, dword [rsp + 0x1c]
xor r9d, ecx
add r10d, dword [r15 + 0x4c]
add r8d, dword [r15 + 0x58]
xor r11d, edi
add r9d, r10d
rol r9d, 0xd
lea esi, [r9 + rbx]
mov ebx, dword [rsp + 0x20]
xor ebx, ebp
mov r9d, ebx
mov ebx, r12d
and r9d, edx
mov edx, dword [rsp + 0x10]
rol ebx, 0xd
add edx, dword [r15 + 0x50]
xor r9d, ebp
add edx, r9d
mov r9d, r11d
mov r11d, esi
rol edx, 0xd
and r9d, eax
mov eax, dword [rsp + 0x14]
rol r11d, 0xd
add eax, dword [r15 + 0x54]
xor r9d, edi
add edx, dword [rsp + 0xc]
add eax, r9d
rol eax, 0xd
mov r10d, edx
add eax, r14d
xor r14d, r13d
rol r10d, 0xd
and r14d, r12d
mov r12d, dword [rsp + 0xc]
mov r9d, eax
xor r14d, r13d
rol r9d, 0xd
add r8d, r14d
mov r14d, dword [rsp + 0x18]
add ecx, dword [r15 + 0x5c]
rol r8d, 0xa
add r8d, r11d
xor r12d, r14d
and r12d, esi
mov esi, dword [rsp + 8]
xor r12d, r14d
add ecx, r12d
mov r12d, dword [rsp + 0x20]
add ebp, dword [r15 + 0x60]
rol ecx, 0xa
add edi, dword [r15 + 0x64]
add ecx, ebx
add r13d, dword [r15 + 0x68]
xor esi, r12d
and esi, edx
xor esi, r12d
mov r12d, dword [rsp + 0x24]
add esi, ebp
mov ebp, dword [rsp + 0x1c]
rol esi, 0xa
lea edx, [rsi + r9]
mov esi, ebp
xor esi, r12d
and esi, eax
xor esi, ebp
mov ebp, edx
add esi, edi
rol ebp, 0xa
mov edi, r8d
rol esi, 0xa
mov r14d, ebp
rol edi, 0xa
lea eax, [rsi + r10]
mov esi, ecx
mov ebp, eax
rol esi, 0xa
rol ebp, 0xa
mov dword [rsp + 0x10], ebp
mov ebp, dword [rsp]
xor ebp, ebx
and ebp, r8d
xor ebp, dword [rsp]
add ebp, r13d
mov r13d, dword [rsp + 0xc]
ror ebp, 7
lea r8d, [rbp + r14]
mov ebp, r13d
xor ebp, r11d
and ebp, ecx
mov ecx, dword [rsp + 0x18]
xor ebp, r13d
add ecx, dword [r15 + 0x6c]
mov r13d, dword [rsp + 8]
add ecx, ebp
mov ebp, r13d
ror ecx, 7
add ecx, dword [rsp + 0x10]
xor ebp, r10d
and ebp, edx
mov edx, dword [rsp + 0x20]
add edx, dword [r15 + 0x70]
xor ebp, r13d
add edx, ebp
mov ebp, r12d
xor ebp, r9d
ror edx, 7
and ebp, eax
mov eax, dword [rsp + 0x1c]
add edx, edi
add eax, dword [r15 + 0x74]
xor ebp, r12d
mov r12d, ebx
xor r12d, edi
add eax, ebp
mov ebp, r8d
and r8d, r12d
mov r12d, dword [rsp]
add r12d, dword [r15 + 0x78]
ror ebp, 7
xor r8d, ebx
ror eax, 7
mov dword [rsp + 0x14], ebp
mov ebp, ecx
add eax, esi
ror ebp, 7
mov r13d, ebp
mov ebp, edx
add r8d, r12d
mov r12d, r11d
ror ebp, 7
xor r12d, esi
mov dword [rsp + 0x18], ebp
mov ebp, eax
rol r8d, 4
and ecx, r12d
mov r12d, dword [rsp + 0xc]
ror ebp, 7
add r12d, dword [r15 + 0x7c]
xor ecx, r11d
add ecx, r12d
mov r12d, r10d
xor r12d, r14d
rol ecx, 4
and edx, r12d
mov r12d, dword [rsp + 8]
xor edx, r10d
add r12d, dword [r15 + 0x80]
add r8d, ebp
mov dword [r15 + 0x48], r8d
add edx, r12d
mov r12d, dword [rsp + 0x10]
rol edx, 4
add edx, r13d
xor r12d, r9d
and eax, r12d
mov r12d, dword [rsp + 0x24]
add r12d, dword [r15 + 0x84]
xor eax, r9d
mov r8d, dword [rsp + 0x18]
mov dword [r15 + 0x50], edx
mov edx, dword [rsp + 0x14]
mov dword [r15 + 0x5c], r13d
vmovups xmm6, xmmword [rsp + 0x280]
mov dword [r15 + 0x64], ebp
vmovups xmm7, xmmword [rsp + 0x290]
add eax, r12d
mov dword [r15 + 0x68], edi
rol eax, 4
add ecx, r8d
mov dword [r15 + 0x60], r8d
add eax, edx
mov dword [r15 + 0x4c], ecx
mov dword [r15 + 0x54], eax
mov eax, dword [rsp + 0x10]
mov dword [r15 + 0x58], edx
mov dword [r15 + 0x6c], esi
mov dword [r15 + 0x70], r14d
mov dword [r15 + 0x74], eax
mov dword [r15 + 0x78], ebx
mov dword [r15 + 0x7c], r11d
mov dword [r15 + 0x80], r10d
mov dword [r15 + 0x84], r9d
add rsp, 0x2a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp]
lea rax, [0x005fa040]
vmovdqu xmm4, xmmword [0x005fa540]
vmovdqu xmm1, xmmword [0x005fa550]
vmovdqu xmm3, xmmword [0x005fa560]
vmovdqu xmm2, xmmword [0x005fa570]
add rcx, 0x200
nop
vmovdqu xmm0, xmmword [rax]
add rdx, 0x20
add rax, 0x10
vpmovzxwd xmm7, xmm0
vpaddd xmm7, xmm7, xmmword [rdx - 0x20]
vpsrldq xmm0, xmm0, 8
vpmovzxwd xmm0, xmm0
vpaddd xmm0, xmm0, xmmword [rdx - 0x10]
vpsrad xmm5, xmm7, 0x10
vpand xmm7, xmm7, xmm4
vpaddd xmm5, xmm5, xmm7
vpsrad xmm6, xmm0, 0x10
vpand xmm0, xmm0, xmm4
vpand xmm7, xmm5, xmm1
vpsrad xmm5, xmm5, 8
vpaddd xmm0, xmm6, xmm0
vpsubd xmm7, xmm7, xmm5
vpand xmm6, xmm0, xmm1
vpsrad xmm0, xmm0, 8
vpand xmm5, xmm7, xmm1
vpsrad xmm7, xmm7, 8
vpsubd xmm6, xmm6, xmm0
vpsubd xmm5, xmm5, xmm7
vpand xmm0, xmm6, xmm1
vpsrad xmm6, xmm6, 8
vpcmpgtd xmm7, xmm5, xmm3
vpsubd xmm0, xmm0, xmm6
vpaddd xmm6, xmm5, xmm2
vpblendvb xmm5, xmm5, xmm6, xmm7
vpcmpgtd xmm6, xmm0, xmm3
vmovups xmmword [rdx - 0x20], xmm5
vpaddd xmm5, xmm0, xmm2
vpblendvb xmm0, xmm0, xmm5, xmm6
vmovups xmmword [rdx - 0x10], xmm0
cmp rcx, rdx
jne 0x52d950
jmp 0x52b172