Function at 0x1800ab2e0
Capabilities:
Encode data using xor
Hash data using sha1

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov edi, dword [rcx]
lea rax, [rdx + 1]
mov r11d, dword [rcx + 4]
mov ebp, dword [rcx + 8]
mov esi, dword [rcx + 0xc]
mov r10d, dword [rcx + 0x10]
movzx r8d, byte [rdx]
mov edx, esi
movzx ecx, byte [rax]
xor edx, ebp
movzx r9d, byte [rax + 3]
and edx, r11d
movzx ebx, byte [rax + 7]
xor edx, esi
shl ecx, 0x10
shl r8d, 0x18
or r8d, ecx
shl r9d, 0x18
movzx ecx, byte [rax + 1]
shl ecx, 8
or r8d, ecx
shl ebx, 0x18
movzx ecx, byte [rax + 2]
or r8d, ecx
movzx ecx, byte [rax + 4]
shl ecx, 0x10
or r9d, ecx
mov dword [rsp + 0x44], r8d
movzx ecx, byte [rax + 5]
shl ecx, 8
or r9d, ecx
movzx ecx, byte [rax + 6]
or r9d, ecx
mov ecx, edi
rol ecx, 5
add ecx, r10d
mov dword [rsp + 0x40], r9d
add edx, ecx
lea r10d, [r8 + 0x5a827999]
movzx ecx, byte [rax + 8]
add r10d, edx
shl ecx, 0x10
mov r8d, r11d
or ebx, ecx
ror r8d, 2
movzx ecx, byte [rax + 9]
lea r11d, [rsi + 0x5a827999]
shl ecx, 8
mov edx, ebp
or ebx, ecx
xor edx, r8d
movzx ecx, byte [rax + 0xa]
and edx, edi
or ebx, ecx
xor edx, ebp
mov ecx, r10d
mov dword [rsp + 0x48], ebx
rol ecx, 5
add ecx, r9d
mov r9d, edi
movzx edi, byte [rax + 0xb]
add edx, ecx
movzx ecx, byte [rax + 0xc]
add r11d, edx
shl ecx, 0x10
mov edx, r8d
shl edi, 0x18
or edi, ecx
ror r9d, 2
movzx ecx, byte [rax + 0xd]
xor edx, r9d
shl ecx, 8
and edx, r10d
or edi, ecx
xor edx, r8d
movzx ecx, byte [rax + 0xe]
or edi, ecx
mov ecx, r11d
rol ecx, 5
add ecx, ebx
mov dword [rsp + 0xc], edi
add edx, ecx
movzx esi, byte [rax + 0xf]
movzx ecx, byte [rax + 0x10]
lea ebx, [rbp + 0x5a827999]
shl ecx, 0x10
add ebx, edx
shl esi, 0x18
add r8d, 0x5a827999
or esi, ecx
ror r10d, 2
movzx ecx, byte [rax + 0x11]
mov edx, r10d
shl ecx, 8
xor edx, r9d
or esi, ecx
and edx, r11d
movzx ecx, byte [rax + 0x12]
xor edx, r9d
or esi, ecx
ror r11d, 2
mov dword [rsp + 0x18], esi
mov ecx, ebx
rol ecx, 5
add r9d, 0x5a827999
add ecx, edi
movzx edi, byte [rax + 0x13]
add edx, ecx
shl edi, 0x18
movzx ecx, byte [rax + 0x14]
add r8d, edx
shl ecx, 0x10
mov edx, r10d
or edi, ecx
xor edx, r11d
movzx ecx, byte [rax + 0x15]
and edx, ebx
shl ecx, 8
xor edx, r10d
or edi, ecx
ror ebx, 2
movzx ecx, byte [rax + 0x16]
or edi, ecx
mov ecx, r8d
rol ecx, 5
add ecx, esi
mov dword [rsp], edi
movzx esi, byte [rax + 0x17]
add edx, ecx
movzx ecx, byte [rax + 0x18]
add r9d, edx
shl ecx, 0x10
add edi, 0x5a827999
shl esi, 0x18
mov edx, r11d
or esi, ecx
xor edx, ebx
movzx ecx, byte [rax + 0x19]
and edx, r8d
shl ecx, 8
xor edx, r11d
or esi, ecx
ror r8d, 2
movzx ecx, byte [rax + 0x1a]
or esi, ecx
mov ecx, r9d
rol ecx, 5
add ecx, edi
mov dword [rsp + 8], esi
movzx edi, byte [rax + 0x1b]
add edx, ecx
movzx ecx, byte [rax + 0x1c]
add r10d, edx
shl ecx, 0x10
shl edi, 0x18
or edi, ecx
movzx ecx, byte [rax + 0x1d]
shl ecx, 8
or edi, ecx
movzx ecx, byte [rax + 0x1e]
or edi, ecx
mov dword [rsp + 0x24], edi
movzx r14d, byte [rax + 0x23]
add esi, 0x5a827999
movzx r12d, byte [rax + 0x2b]
mov edx, ebx
xor edx, r8d
shl r14d, 0x18
and edx, r9d
shl r12d, 0x18
xor edx, ebx
ror r9d, 2
mov ecx, r10d
rol ecx, 5
add ecx, esi
movzx esi, byte [rax + 0x1f]
add edx, ecx
shl esi, 0x18
movzx ecx, byte [rax + 0x20]
add r11d, edx
shl ecx, 0x10
mov edx, r8d
or esi, ecx
xor edx, r9d
movzx ecx, byte [rax + 0x21]
and edx, r10d
shl ecx, 8
xor edx, r8d
or esi, ecx
ror r10d, 2
movzx ecx, byte [rax + 0x22]
or esi, ecx
mov ecx, r11d
rol ecx, 5
add ecx, edi
mov dword [rsp + 0x20], esi
add edx, ecx
lea edi, [rbx + 0x5a827999]
movzx ecx, byte [rax + 0x24]
add edi, edx
movzx ebx, byte [rax + 0x27]
mov edx, r9d
shl ecx, 0x10
xor edx, r10d
or r14d, ecx
shl ebx, 0x18
movzx ecx, byte [rax + 0x25]
and edx, r11d
shl ecx, 8
xor edx, r9d
or r14d, ecx
ror r11d, 2
movzx ecx, byte [rax + 0x26]
or r14d, ecx
mov ecx, edi
rol ecx, 5
add ecx, esi
mov dword [rsp + 4], r14d
add edx, ecx
lea esi, [r8 + 0x5a827999]
movzx ecx, byte [rax + 0x28]
add esi, edx
shl ecx, 0x10
mov r8d, r11d
or ebx, ecx
xor r8d, r10d
movzx ecx, byte [rax + 0x29]
and r8d, edi
shl ecx, 8
xor r8d, r10d
or ebx, ecx
ror edi, 2
movzx ecx, byte [rax + 0x2a]
or ebx, ecx
mov ecx, esi
rol ecx, 5
add ecx, 0x5a827999
mov dword [rsp + 0x14], ebx
add ecx, r14d
add r8d, ecx
movzx ecx, byte [rax + 0x2c]
add r8d, r9d
shl ecx, 0x10
or r12d, ecx
movzx ebp, byte [rax + 0x2f]
movzx ecx, byte [rax + 0x2d]
mov edx, r11d
movzx r15d, byte [rax + 0x33]
xor edx, edi
movzx r14d, byte [rax + 0x37]
and edx, esi
shl ecx, 8
xor edx, r11d
or r12d, ecx
shl ebp, 0x18
movzx ecx, byte [rax + 0x2e]
or r12d, ecx
ror esi, 2
shl r15d, 0x18
mov ecx, r8d
rol ecx, 5
add ecx, ebx
shl r14d, 0x18
add edx, ecx
mov dword [rsp + 0x30], r12d
movzx ecx, byte [rax + 0x30]
lea ebx, [r10 + 0x5a827999]
shl ecx, 0x10
lea r10d, [r11 + 0x5a827999]
or ebp, ecx
add ebx, edx
movzx ecx, byte [rax + 0x31]
mov edx, edi
shl ecx, 8
xor edx, esi
or ebp, ecx
and edx, r8d
movzx ecx, byte [rax + 0x32]
xor edx, edi
or ebp, ecx
ror r8d, 2
mov ecx, ebx
mov dword [rsp + 0x28], ebp
rol ecx, 5
mov r11d, esi
add ecx, r12d
xor r11d, r8d
add edx, ecx
and r11d, ebx
movzx ecx, byte [rax + 0x34]
add r10d, edx
shl ecx, 0x10
xor r11d, esi
or r15d, ecx
ror ebx, 2
movzx ecx, byte [rax + 0x35]
mov edx, r8d
shl ecx, 8
xor edx, ebx
or r15d, ecx
and edx, r10d
movzx ecx, byte [rax + 0x36]
xor edx, r8d
or r15d, ecx
mov ecx, r10d
rol ecx, 5
add ecx, 0x5a827999
mov dword [rsp + 0x38], r15d
add ecx, ebp
add r11d, ecx
movzx ecx, byte [rax + 0x38]
shl ecx, 0x10
add r11d, edi
or r14d, ecx
movzx ecx, byte [rax + 0x39]
shl ecx, 8
or r14d, ecx
movzx ecx, byte [rax + 0x3a]
or r14d, ecx
mov ecx, r11d
rol ecx, 5
add ecx, r15d
mov dword [rsp + 0xb8], r14d
add edx, ecx
movzx ecx, byte [rax + 0x3c]
lea r9d, [rsi + 0x5a827999]
movzx esi, byte [rax + 0x3b]
add r9d, edx
shl ecx, 0x10
mov edx, ebx
shl esi, 0x18
mov r13d, r15d
xor r13d, dword [rsp + 0x20]
or esi, ecx
movzx ecx, byte [rax + 0x3d]
xor r13d, dword [rsp + 0x48]
xor r13d, dword [rsp + 0x44]
shl ecx, 8
or esi, ecx
ror r10d, 2
movzx ecx, byte [rax + 0x3e]
xor edx, r10d
or esi, ecx
rol r13d, 1
and edx, r11d
mov dword [rsp + 0xc8], esi
xor edx, ebx
ror r11d, 2
mov edi, r11d
mov dword [rsp + 0x2c], r13d
xor edi, r10d
mov ecx, r9d
rol ecx, 5
and edi, r9d
add ecx, 0x5a827999
ror r9d, 2
add ecx, r14d
xor edi, r10d
xor r14d, dword [rsp + 4]
add edx, ecx
xor r14d, dword [rsp + 0xc]
add r8d, edx
xor r14d, dword [rsp + 0x40]
mov edx, r11d
xor edx, r9d
rol r14d, 1
and edx, r8d
mov dword [rsp + 0x1c], r14d
xor edx, r11d
mov ecx, r8d
rol ecx, 5
add edx, 0x5a827999
add ecx, 0x5a827999
ror r8d, 2
add ecx, esi
add rax, 0x3f
xor esi, dword [rsp + 0x14]
add edi, ecx
xor esi, dword [rsp + 0x18]
add edi, ebx
xor esi, dword [rsp + 0x48]
mov ecx, edi
rol ecx, 5
mov ebx, r8d
add r10d, ecx
rol esi, 1
add r10d, edx
mov dword [rsp + 0x10], esi
add r10d, r13d
mov edx, r9d
xor edx, r8d
mov ecx, r10d
and edx, edi
rol ecx, 5
add r11d, ecx
ror edi, 2
xor edx, r9d
xor ebx, edi
add edx, 0x5a827999
and ebx, r10d
add r11d, edx
add r11d, r14d
mov ecx, r11d
rol ecx, 5
xor ebx, r8d
xor r12d, dword [rsp]
add r9d, 0x5a827999
xor ebp, dword [rsp + 8]
add ecx, r9d
xor r12d, dword [rsp + 0xc]
add ebx, ecx
xor ebp, dword [rsp + 0x18]
add ebx, esi
ror r10d, 2
mov edx, edi
xor edx, r10d
xor ebp, r14d
mov r14d, dword [rsp + 0xb8]
and edx, r11d
xor r14d, dword [rsp + 0x20]
xor edx, edi
xor r14d, dword [rsp + 8]
add edx, 0x5a827999
add edi, 0x6ed9eba1
ror r11d, 2
mov ecx, ebx
rol ebp, 1
rol ecx, 5
mov r9d, ebx
add r8d, ecx
ror ebx, 2
add r8d, edx
xor r9d, r10d
xor r9d, r11d
mov edx, ebx
xor r12d, r13d
rol r12d, 1
add r8d, r12d
xor r14d, r12d
xor edx, r8d
rol r14d, 1
xor edx, r11d
mov ecx, r8d
add edx, 0x6ed9eba1
rol ecx, 5
add ecx, edi
ror r8d, 2
add r9d, ecx
mov edi, r15d
xor edi, dword [rsp + 0x24]
add r9d, ebp
xor edi, dword [rsp]
mov ecx, r9d
mov r15d, dword [rsp + 0xc8]
xor edi, esi
xor r15d, dword [rsp + 4]
xor r15d, dword [rsp + 0x24]
mov esi, dword [rsp + 0x14]
xor r15d, ebp
rol ecx, 5
add r10d, ecx
rol edi, 1
add r10d, edx
rol r15d, 1
add r10d, edi
mov edx, ebx
xor edx, r8d
mov ecx, r10d
xor edx, r9d
rol ecx, 5
add edx, 0x6ed9eba1
ror r9d, 2
add r11d, ecx
add r11d, edx
mov edx, r8d
xor edx, r9d
add r11d, r14d
xor edx, r10d
mov ecx, r11d
rol ecx, 5
add edx, 0x6ed9eba1
add ebx, ecx
ror r10d, 2
add ebx, edx
add ebx, r15d
xor esi, dword [rsp + 0x20]
mov edx, r9d
mov ecx, ebx
rol ecx, 5
xor edx, r10d
add r8d, ecx
xor edx, r11d
add edx, 0x6ed9eba1
ror r11d, 2
add r8d, edx
xor esi, edi
xor esi, r13d
mov edx, r10d
mov r13d, dword [rsp + 0x30]
xor edx, r11d
xor r13d, dword [rsp + 4]
xor edx, ebx
add edx, 0x6ed9eba1
ror ebx, 2
rol esi, 1
xor r13d, r14d
xor r13d, dword [rsp + 0x1c]
add r8d, esi
rol r13d, 1
mov ecx, r8d
rol ecx, 5
add r9d, ecx
mov ecx, dword [rsp + 0x28]
xor ecx, dword [rsp + 0x14]
add r9d, edx
xor ecx, r15d
add r9d, r13d
xor ecx, dword [rsp + 0x10]
mov edx, r8d
rol ecx, 1
xor edx, r11d
mov dword [rsp], ecx
xor edx, ebx
ror r8d, 2
mov ecx, r9d
rol ecx, 5
add r10d, ecx
mov ecx, dword [rsp]
add ecx, 0x6ed9eba1
add r10d, edx
add r10d, ecx
mov edx, r8d
mov ecx, dword [rsp + 0x38]
xor edx, r9d
xor ecx, dword [rsp + 0x30]
xor edx, ebx
xor ecx, esi
ror r9d, 2
xor ecx, r12d
rol ecx, 1
mov dword [rsp + 8], ecx
mov ecx, r10d
rol ecx, 5
add r11d, ecx
mov ecx, dword [rsp + 8]
add ecx, 0x6ed9eba1
add r11d, edx
add r11d, ecx
mov edx, r8d
mov ecx, dword [rsp + 0xb8]
xor edx, r9d
xor ecx, dword [rsp + 0x28]
xor edx, r10d
xor ecx, r13d
ror r10d, 2
xor ecx, ebp
rol ecx, 1
mov dword [rsp + 0x20], ecx
mov ecx, r11d
rol ecx, 5
add ebx, ecx
mov ecx, dword [rsp + 0x20]
add ecx, 0x6ed9eba1
add ebx, edx
add ebx, ecx
mov ecx, dword [rsp + 0xc8]
xor ecx, dword [rsp + 0x38]
xor ecx, dword [rsp]
mov edx, r9d
xor ecx, edi
xor edx, r10d
rol ecx, 1
xor edx, r11d
mov dword [rsp + 0x18], ecx
mov ecx, ebx
rol ecx, 5
add r8d, ecx
ror r11d, 2
mov ecx, dword [rsp + 0x18]
add r8d, edx
add ecx, 0x6ed9eba1
mov edx, r10d
add r8d, ecx
xor edx, r11d
mov ecx, dword [rsp + 0xb8]
xor edx, ebx
xor ecx, dword [rsp + 8]
xor ecx, r14d
ror ebx, 2
xor ecx, dword [rsp + 0x2c]
rol ecx, 1
mov dword [rsp + 0xb8], ecx
mov ecx, r8d
rol ecx, 5
add r9d, ecx
mov ecx, dword [rsp + 0xb8]
add ecx, 0x6ed9eba1
add r9d, edx
add r9d, ecx
mov edx, r11d
mov ecx, dword [rsp + 0xc8]
xor edx, ebx
xor ecx, dword [rsp + 0x20]
xor edx, r8d
xor ecx, r15d
ror r8d, 2
xor ecx, dword [rsp + 0x1c]
rol ecx, 1
mov dword [rsp + 0xc8], ecx
mov ecx, r9d
rol ecx, 5
add r10d, ecx
mov ecx, dword [rsp + 0xc8]
add ecx, 0x6ed9eba1
add r10d, edx
add r10d, ecx
mov edx, r9d
mov ecx, dword [rsp + 0x18]
xor edx, ebx
xor ecx, esi
ror r9d, 2
xor ecx, dword [rsp + 0x10]
xor edx, r8d
xor ecx, dword [rsp + 0x2c]
rol ecx, 1
mov dword [rsp + 4], ecx
mov ecx, r10d
rol ecx, 5
add r11d, ecx
mov ecx, dword [rsp + 4]
add ecx, 0x6ed9eba1
add r11d, edx
add r11d, ecx
mov edx, r9d
mov ecx, dword [rsp + 0xb8]
xor edx, r10d
xor ecx, r13d
xor edx, r8d
xor ecx, r12d
xor ecx, dword [rsp + 0x1c]
rol ecx, 1
mov dword [rsp + 0x24], ecx
mov ecx, r11d
rol ecx, 5
add ebx, ecx
mov ecx, dword [rsp + 0x24]
add ebx, edx
add ecx, 0x6ed9eba1
add ebx, ecx
ror r10d, 2
mov ecx, dword [rsp + 0xc8]
mov edx, r9d
xor ecx, dword [rsp]
xor edx, r10d
xor ecx, ebp
xor edx, r11d
xor ecx, dword [rsp + 0x10]
rol ecx, 1
mov dword [rsp + 0xc], ecx
mov ecx, ebx
rol ecx, 5
add r8d, ecx
ror r11d, 2
mov ecx, dword [rsp + 0xc]
add r8d, edx
add ecx, 0x6ed9eba1
mov edx, r10d
add r8d, ecx
xor edx, r11d
mov ecx, dword [rsp + 8]
xor edx, ebx
xor ecx, edi
ror ebx, 2
xor ecx, r12d
mov r12d, dword [rsp + 0x20]
xor ecx, dword [rsp + 4]
rol ecx, 1
mov dword [rsp + 0x10], ecx
mov ecx, r8d
rol ecx, 5
add r9d, ecx
mov ecx, dword [rsp + 0x10]
add ecx, 0x6ed9eba1
add r9d, edx
add r9d, ecx
mov edx, r11d
xor edx, ebx
mov ecx, r12d
xor ecx, r14d
xor edx, r8d
xor ecx, ebp
ror r8d, 2
xor ecx, dword [rsp + 0x24]
add edx, 0x6ed9eba1
rol ecx, 1
mov dword [rsp + 0x2c], ecx
mov ecx, r9d
rol ecx, 5
add r10d, ecx
mov ecx, dword [rsp + 0x18]
xor ecx, r15d
add r10d, edx
add r10d, dword [rsp + 0x2c]
xor ecx, edi
xor ecx, dword [rsp + 0xc]
mov edx, ebx
mov edi, dword [rsp + 0xb8]
xor edx, r8d
rol ecx, 1
xor edx, r9d
mov dword [rsp + 0x28], ecx
xor edi, esi
xor edi, r14d
ror r9d, 2
xor edi, dword [rsp + 0x10]
mov ecx, r10d
rol ecx, 5
add r11d, ecx
rol edi, 1
mov ecx, dword [rsp + 0x28]
add r11d, edx
add ecx, 0x6ed9eba1
mov dword [rsp + 0x1c], edi
add r11d, ecx
mov edx, r10d
mov ecx, r11d
xor edx, r8d
rol ecx, 5
xor edx, r9d
mov r14d, dword [rsp + 4]
add ebx, ecx
add ebx, edx
ror r10d, 2
add edi, 0x6ed9eba1
add r8d, 0x6ed9eba1
add ebx, edi
mov edx, r10d
mov edi, dword [rsp + 0xc8]
xor edx, r11d
xor edx, r9d
ror r11d, 2
xor edi, r13d
mov ecx, ebx
rol ecx, 5
xor edi, r15d
xor edi, dword [rsp + 0x2c]
add ecx, r8d
add edx, ecx
mov r15d, dword [rsp]
xor r15d, esi
rol edi, 1
xor r15d, dword [rsp + 0x28]
mov ecx, r11d
and ecx, ebx
mov dword [rsp + 0x14], edi
add edi, edx
xor r15d, r14d
rol r15d, 1
mov edx, r11d
or edx, ebx
mov dword [rsp + 4], r15d
and edx, r10d
ror ebx, 2
or edx, ecx
mov r8d, edi
mov ecx, dword [rsp + 8]
add edx, r9d
add edx, r15d
rol r8d, 5
mov r15d, dword [rsp + 0x24]
xor ecx, r13d
xor ecx, dword [rsp + 0x1c]
mov r13d, dword [rsp + 0xc]
xor ecx, r15d
rol ecx, 1
lea r9d, [r8 - 0x70e44324]
add r9d, edx
mov dword [rsp + 0x30], ecx
mov r8d, r9d
mov edx, ebx
or edx, edi
rol r8d, 5
and edx, r11d
mov ecx, ebx
and ecx, edi
ror edi, 2
or edx, ecx
mov ecx, r12d
xor ecx, dword [rsp]
add edx, r10d
add edx, dword [rsp + 0x30]
lea r10d, [r8 - 0x70e44324]
xor ecx, dword [rsp + 0x14]
add r10d, edx
xor ecx, r13d
mov edx, edi
or edx, r9d
rol ecx, 1
and edx, ebx
mov dword [rsp + 0x24], ecx
mov ecx, edi
mov r8d, r10d
and ecx, r9d
rol r8d, 5
or edx, ecx
add edx, r11d
add edx, dword [rsp + 0x24]
lea r11d, [r8 - 0x70e44324]
add r11d, edx
ror r9d, 2
mov ecx, dword [rsp + 0x18]
mov edx, r9d
xor ecx, dword [rsp + 8]
or edx, r10d
xor ecx, dword [rsp + 4]
and edx, edi
xor ecx, dword [rsp + 0x10]
mov r8d, r11d
rol ecx, 1
mov dword [rsp + 8], ecx
mov ecx, r9d
and ecx, r10d
rol r8d, 5
or edx, ecx
ror r10d, 2
mov ecx, dword [rsp + 0xb8]
add edx, ebx
add edx, dword [rsp + 8]
xor ecx, r12d
xor ecx, dword [rsp + 0x30]
lea ebx, [r8 - 0x70e44324]
mov r12d, dword [rsp + 0x2c]
add ebx, edx
xor ecx, r12d
mov edx, r11d
rol ecx, 1
or edx, r10d
mov dword [rsp], ecx
and edx, r9d
mov ecx, r11d
mov r8d, ebx
and ecx, r10d
rol r8d, 5
or edx, ecx
ror r11d, 2
mov ecx, dword [rsp + 0xc8]
add edx, edi
xor ecx, dword [rsp + 0x18]
xor ecx, dword [rsp + 0x24]
lea edi, [r8 - 0x70e44324]
add edx, dword [rsp]
xor ecx, dword [rsp + 0x28]
add edi, edx
rol ecx, 1
mov r8d, edi
mov dword [rsp + 0x18], ecx
mov edx, r11d
mov ebp, dword [rsp + 0x18]
or edx, ebx
and edx, r10d
rol r8d, 5
mov ecx, r11d
and ecx, ebx
ror ebx, 2
or edx, ecx
mov ecx, dword [rsp + 0xb8]
xor ecx, dword [rsp + 8]
add edx, r9d
xor ecx, dword [rsp + 0x1c]
lea r9d, [r8 - 0x70e44324]
add edx, ebp
xor ecx, r14d
add r9d, edx
rol ecx, 1
mov dword [rsp + 0xb8], ecx
mov edx, ebx
or edx, edi
mov ecx, ebx
and ecx, edi
and edx, r11d
or edx, ecx
ror edi, 2
mov ecx, dword [rsp + 0xc8]
add edx, r10d
add edx, dword [rsp + 0xb8]
mov r8d, r9d
xor ecx, dword [rsp]
rol r8d, 5
lea r10d, [r8 - 0x70e44324]
add r10d, edx
xor ecx, dword [rsp + 0x14]
xor ebp, dword [rsp + 4]
xor ecx, r15d
mov esi, dword [rsp + 8]
xor ebp, r13d
xor esi, dword [rsp + 0x28]
xor ebp, r14d
xor esi, dword [rsp + 0x10]
mov edx, edi
mov r14d, dword [rsp + 0xb8]
or edx, r9d
xor r14d, dword [rsp + 0x30]
and edx, ebx
xor r14d, dword [rsp + 0x10]
mov r8d, r10d
rol ecx, 1
xor r14d, r15d
mov dword [rsp + 0xc8], ecx
mov ecx, edi
and ecx, r9d
rol r8d, 5
or edx, ecx
rol ebp, 1
add edx, r11d
ror r9d, 2
add edx, dword [rsp + 0xc8]
mov ecx, r9d
lea r11d, [r8 - 0x70e44324]
mov dword [rsp + 0x2c], ebp
xor esi, dword [rsp + 0x2c]
add r11d, edx
and ecx, r10d
rol r14d, 1
mov edx, r9d
rol esi, 1
or edx, r10d
mov dword [rsp + 0x38], r14d
and edx, edi
ror r10d, 2
or edx, ecx
mov dword [rsp + 0xc], esi
add edx, ebx
mov r8d, r11d
add edx, ebp
rol r8d, 5
mov ebp, dword [rsp + 0xc8]
mov ecx, r10d
xor ebp, dword [rsp + 0x24]
and ecx, r11d
xor ebp, r12d
lea ebx, [r8 - 0x70e44324]
xor ebp, r13d
add ebx, edx
rol ebp, 1
mov r8d, ebx
mov dword [rsp + 0x34], ebp
rol r8d, 5
mov edx, r10d
or edx, r11d
ror r11d, 2
and edx, r9d
or edx, ecx
mov ecx, ebx
add edx, edi
and ecx, r11d
add edx, r14d
lea edi, [r8 - 0x70e44324]
add edi, edx
mov edx, ebx
or edx, r11d
ror ebx, 2
and edx, r10d
mov r8d, edi
or edx, ecx
rol r8d, 5
add edx, r9d
add edx, ebp
lea r9d, [r8 - 0x70e44324]
add r9d, edx
mov edx, ebx
mov r8d, r9d
rol r8d, 5
mov r15d, dword [rsp]
or edx, edi
xor r15d, dword [rsp + 0x1c]
and edx, r11d
xor r15d, r12d
mov ecx, ebx
mov r12d, dword [rsp + 0xc8]
and ecx, edi
xor r12d, dword [rsp + 0x30]
or edx, ecx
xor r12d, dword [rsp + 0x14]
add edx, r10d
add edx, esi
ror edi, 2
xor r15d, r14d
lea r10d, [r8 - 0x70e44324]
mov r14d, dword [rsp + 0x18]
add r10d, edx
xor r14d, dword [rsp + 0x14]
mov edx, edi
xor r14d, dword [rsp + 0x28]
or edx, r9d
and edx, ebx
rol r15d, 1
xor r14d, ebp
mov dword [rsp + 0x20], r15d
mov ebp, dword [rsp + 0xb8]
mov ecx, edi
xor ebp, dword [rsp + 4]
and ecx, r9d
xor ebp, dword [rsp + 0x1c]
or edx, ecx
add edx, r11d
ror r9d, 2
add edx, r15d
rol r14d, 1
xor ebp, esi
mov dword [rsp + 0x10], r14d
rol ebp, 1
mov r8d, r10d
rol r8d, 5
xor r12d, r15d
rol r12d, 1
mov ecx, r9d
and ecx, r10d
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x3c], r12d
lea r11d, [r8 - 0x70e44324]
add r11d, edx
mov edx, r9d
or edx, r10d
mov r8d, r11d
and edx, edi
ror r10d, 2
or edx, ecx
rol r8d, 5
add edx, 0x8f1bbcdc
add edi, 0x8f1bbcdc
add ebx, edx
mov ecx, r10d
and ecx, r11d
add ebx, r14d
add ebx, r8d
mov edx, r10d
or edx, r11d
mov esi, ebx
and edx, r9d
ror r11d, 2
or edx, ecx
rol esi, 5
add edx, edi
mov ecx, r11d
add edx, ebp
and ecx, ebx
add esi, edx
mov edx, r11d
or edx, ebx
mov edi, esi
and edx, r10d
rol edi, 5
or edx, ecx
mov r15d, dword [rsp + 8]
add r9d, 0x8f1bbcdc
xor r15d, dword [rsp + 0x30]
add edx, r9d
mov r9d, dword [rsp + 0x24]
add edx, r12d
xor r9d, dword [rsp + 4]
add edi, edx
mov r13d, dword [rsp + 0x18]
xor r9d, r14d
xor r9d, dword [rsp + 0x2c]
xor r15d, ebp
xor r13d, dword [rsp + 8]
mov edx, esi
xor r15d, dword [rsp + 0x38]
mov ecx, esi
mov r14d, dword [rsp]
mov r8d, edi
xor r14d, dword [rsp + 0x24]
ror ebx, 2
xor r14d, r12d
xor r14d, dword [rsp + 0x34]
or edx, ebx
and edx, r11d
rol r9d, 1
and ecx, ebx
rol r8d, 5
or edx, ecx
ror esi, 2
add edx, r10d
rol r15d, 1
add edx, r9d
rol r14d, 1
lea r10d, [r8 - 0x70e44324]
mov dword [rsp + 4], r9d
add r10d, edx
mov dword [rsp + 0x14], r15d
xor r13d, r9d
mov dword [rsp + 0x1c], r14d
xor r13d, dword [rsp + 0xc]
mov r8d, r10d
rol r8d, 5
mov edx, esi
or edx, edi
rol r13d, 1
and edx, ebx
mov dword [rsp + 0x48], r13d
mov ecx, esi
and ecx, edi
ror edi, 2
or edx, ecx
mov ecx, edi
add edx, r11d
and ecx, r10d
add edx, r15d
lea r11d, [r8 - 0x70e44324]
add r11d, edx
mov edx, edi
or edx, r10d
mov r8d, r11d
and edx, esi
ror r10d, 2
or edx, ecx
rol r8d, 5
add edx, ebx
mov ecx, r10d
add edx, r14d
and ecx, r11d
lea ebx, [r8 - 0x70e44324]
add ebx, edx
mov edx, r10d
or edx, r11d
mov r9d, ebx
and edx, edi
rol r9d, 5
or edx, ecx
add edx, 0x8f1bbcdc
add edx, esi
add edx, r13d
add r9d, edx
ror r11d, 2
mov ebp, dword [rsp + 0xb8]
mov ecx, r10d
xor ebp, dword [rsp]
xor ecx, r11d
xor ecx, ebx
xor ebp, r15d
xor ebp, dword [rsp + 0x20]
add ecx, 0xca62c1d6
ror ebx, 2
mov r8d, r9d
rol r8d, 5
add r8d, edi
rol ebp, 1
mov edi, dword [rsp + 0xc8]
add ecx, ebp
add r8d, ecx
mov dword [rsp], ebp
mov r15d, edi
mov ecx, r11d
xor r15d, dword [rsp + 0x18]
xor ecx, ebx
xor ecx, r9d
xor r15d, r14d
xor r15d, dword [rsp + 0x10]
add ecx, 0xca62c1d6
mov r14d, dword [rsp + 0xb8]
xor edi, ebp
xor edi, r12d
ror r9d, 2
xor edi, dword [rsp + 0x38]
xor r14d, r13d
xor r14d, dword [rsp + 0x28]
mov edx, r8d
xor r14d, dword [rsp + 0x2c]
rol edx, 5
add r10d, edx
rol r15d, 1
add ecx, r15d
rol edi, 1
add r10d, ecx
rol r14d, 1
mov ecx, r8d
mov dword [rsp + 0xc8], edi
xor ecx, ebx
ror r8d, 2
xor ecx, r9d
mov dword [rsp + 0x18], r15d
add ecx, 0xca62c1d6
mov dword [rsp + 0xb8], r14d
add ecx, r14d
add edi, 0xca62c1d6
mov edx, r10d
mov r12d, r15d
xor r12d, dword [rsp + 4]
rol edx, 5
add r11d, edx
add r11d, ecx
mov ecx, r8d
xor ecx, r10d
mov edx, r11d
xor ecx, r9d
rol edx, 5
add ecx, edi
ror r10d, 2
mov edi, dword [rsp + 0x34]
add ebx, edx
add ebx, ecx
xor r12d, edi
xor r12d, dword [rsp + 0x2c]
mov ecx, r8d
xor ecx, r10d
rol r12d, 1
xor ecx, r11d
mov dword [rsp + 0x2c], r12d
add ecx, 0xca62c1d6
mov edx, ebx
rol edx, 5
add ecx, r12d
add r9d, edx
add r9d, ecx
ror r11d, 2
xor ebp, dword [rsp + 0x28]
mov esi, r14d
xor esi, dword [rsp + 0x14]
mov edx, r9d
xor esi, dword [rsp + 0xc]
mov ecx, r10d
xor esi, dword [rsp + 0x38]
xor ecx, r11d
xor r15d, dword [rsp + 0x3c]
xor ecx, ebx
xor ebp, dword [rsp + 0x20]
add ecx, r8d
xor r15d, dword [rsp + 0x10]
add ecx, 0xca62c1d6
mov r14d, dword [rsp + 0xc8]
xor r14d, dword [rsp + 0x1c]
xor r14d, dword [rsp + 0x20]
rol edx, 5
xor r14d, edi
rol esi, 1
mov edi, r13d
xor edi, dword [rsp + 0x10]
xor ebp, esi
xor edi, dword [rsp + 0xc]
ror ebx, 2
xor edi, r12d
lea r8d, [rsi + rdx]
mov dword [rsp + 0x34], esi
mov esi, dword [rsp + 0xb8]
add r8d, ecx
xor esi, dword [rsp + 4]
mov ecx, r11d
xor esi, dword [rsp + 0x28]
xor ecx, ebx
xor ecx, r9d
rol r14d, 1
add ecx, 0xca62c1d6
ror r9d, 2
add ecx, r14d
rol edi, 1
rol ebp, 1
mov edx, r8d
rol edx, 5
xor r15d, r14d
add r10d, edx
rol r15d, 1
add r10d, ecx
mov dword [rsp + 0x44], edi
mov ecx, ebx
mov dword [rsp + 0x40], ebp
xor ecx, r9d
mov dword [rsp + 0x50], r15d
xor ecx, r8d
mov edx, r10d
add ecx, 0xca62c1d6
rol edx, 5
add ecx, edi
ror r8d, 2
add r11d, edx
add r11d, ecx
mov ecx, r10d
xor ecx, r9d
ror r10d, 2
xor ecx, r8d
mov edx, r11d
add ecx, 0xca62c1d6
rol edx, 5
add ecx, ebp
add ebx, edx
add ebx, ecx
mov ecx, r10d
xor ecx, r11d
mov edx, ebx
xor ecx, r8d
rol edx, 5
add ecx, 0xca62c1d6
ror r11d, 2
add ecx, r15d
add r9d, edx
add r9d, ecx
xor esi, edi
mov r13d, dword [rsp + 0xc8]
mov edi, r9d
xor r13d, dword [rsp + 0x14]
mov ecx, r10d
xor r13d, dword [rsp + 0x3c]
xor ecx, r11d
xor ecx, ebx
rol esi, 1
add ecx, 0xca62c1d6
ror ebx, 2
add ecx, esi
rol edi, 5
add edi, r8d
mov dword [rsp + 0x4c], esi
mov r8d, dword [rsp + 0x1c]
add edi, ecx
xor r8d, dword [rsp + 4]
xor r13d, ebp
xor r8d, r15d
rol r13d, 1
xor r8d, r12d
mov ebp, edi
rol ebp, 5
mov ecx, r11d
xor ecx, ebx
rol r8d, 1
xor ecx, r9d
add ebp, r10d
mov r10d, dword [rsp + 0x48]
add ecx, 0xca62c1d6
xor r10d, dword [rsp + 0x14]
add ecx, r13d
add ebp, ecx
ror r9d, 2
mov ecx, ebx
xor r10d, esi
xor r10d, dword [rsp + 0x34]
xor ecx, r9d
xor ecx, edi
rol r10d, 1
add ecx, 0xca62c1d6
ror edi, 2
add ecx, r8d
mov r12d, ebp
rol r12d, 5
add r12d, r11d
add r12d, ecx
mov ecx, r9d
xor ecx, edi
mov r15d, r12d
xor ecx, ebp
rol r15d, 5
add ecx, 0xca62c1d6
ror ebp, 2
add ecx, r10d
add r15d, ebx
mov ebx, dword [rsp]
add r15d, ecx
xor ebx, dword [rsp + 0x1c]
mov ecx, r12d
xor ecx, edi
ror r12d, 2
xor ecx, ebp
xor ebx, r13d
xor ebx, r14d
add ecx, 0xca62c1d6
rol ebx, 1
mov r14d, r15d
rol r14d, 5
add ecx, ebx
add r14d, r9d
mov r9d, dword [rsp + 0x18]
xor r9d, dword [rsp + 0x48]
add r14d, ecx
xor r9d, r8d
mov esi, r14d
xor r9d, dword [rsp + 0x44]
mov ecx, r12d
rol r9d, 1
rol esi, 5
xor ecx, r15d
mov r11d, dword [rsp + 0xb8]
xor ecx, ebp
xor r11d, dword [rsp]
add ecx, 0xca62c1d6
add ecx, r9d
ror r15d, 2
xor r11d, r10d
add esi, edi
xor r11d, dword [rsp + 0x40]
add esi, ecx
mov edx, r15d
rol r11d, 1
mov edi, esi
mov ecx, r12d
xor ecx, r15d
rol edi, 5
xor ecx, r14d
add edi, ebp
mov ebp, dword [rsp + 0xc8]
add ecx, 0xca62c1d6
add ecx, r11d
ror r14d, 2
add edi, ecx
xor edx, r14d
xor edx, esi
mov ecx, ebp
xor ecx, dword [rsp + 0x18]
add edx, 0xca62c1d6
xor ecx, ebx
ror esi, 2
xor ecx, dword [rsp + 0x50]
xor ebp, r11d
mov r11, qword [rsp + 0xb0]
xor ebp, r13d
xor ebp, dword [rsp + 0x34]
mov r10d, edi
rol ecx, 1
add ecx, r12d
rol r10d, 5
mov ebx, dword [r11 + 0xc]
add r10d, ecx
mov ecx, dword [rsp + 0xb8]
add r10d, edx
xor ecx, r9d
rol ebp, 1
xor ecx, dword [rsp + 0x4c]
mov edx, r14d
xor ecx, dword [rsp + 0x2c]
xor edx, esi
xor edx, edi
rol ecx, 1
add ecx, r15d
ror edi, 2
add edx, 0xca62c1d6
mov r9d, r10d
rol r9d, 5
add r9d, ecx
lea ecx, [r14 + rbp]
mov ebp, dword [r11 + 4]
add r9d, edx
mov r14d, dword [r11 + 8]
add ebp, r9d
mov r15d, r9d
mov dword [r11 + 4], ebp
rol r15d, 5
mov edx, esi
xor edx, edi
add r15d, 0xca62c1d6
xor edx, r10d
add r15d, ecx
add edx, dword [r11]
add r15d, edx
ror r10d, 2
add r14d, r10d
mov dword [rsp + 0x4c], r15d
add ebx, edi
mov dword [r11], r15d
mov dword [rsp + 0x44], ebx
mov dword [r11 + 0xc], ebx
mov dword [rsp + 0x40], r14d
mov dword [r11 + 8], r14d
mov r9d, dword [r11 + 0x10]
add r9d, esi
sub qword [rsp + 0xc0], 1
mov dword [rsp + 0x48], r9d
mov dword [r11 + 0x10], r9d
je 0x1800ada08
mov dword [rsp + 0x50], ebp
nop dword [rax]
movzx r8d, byte [rax]
mov edx, r14d
movzx ecx, byte [rax + 1]
xor edx, ebx
movzx r10d, byte [rax + 4]
and edx, ebp
movzx r11d, byte [rax + 8]
xor edx, ebx
shl ecx, 0x10
movzx esi, byte [rax + 0x10]
shl r8d, 0x18
or r8d, ecx
shl r10d, 0x18
movzx ecx, byte [rax + 2]
shl ecx, 8
or r8d, ecx
shl r11d, 0x18
movzx ecx, byte [rax + 3]
or r8d, ecx
ror ebp, 2
movzx ecx, byte [rax + 5]
shl ecx, 0x10
or r10d, ecx
mov dword [rsp + 0x10], r8d
movzx ecx, byte [rax + 6]
shl ecx, 8
or r10d, ecx
movzx ecx, byte [rax + 7]
or r10d, ecx
mov ecx, r15d
rol ecx, 5
add ecx, r9d
mov dword [rsp + 0x30], r10d
add edx, ecx
lea r9d, [r8 + 0x5a827999]
movzx ecx, byte [rax + 9]
add r9d, edx
shl ecx, 0x10
mov edx, r14d
or r11d, ecx
xor edx, ebp
movzx ecx, byte [rax + 0xa]
and edx, r15d
shl ecx, 8
xor edx, r14d
or r11d, ecx
mov r8d, r15d
movzx ecx, byte [rax + 0xb]
or r11d, ecx
ror r8d, 2
mov ecx, r9d
mov dword [rsp + 0x20], r11d
rol ecx, 5
add ecx, 0x5a827999
add ecx, ebx
movzx ebx, byte [rax + 0xc]
add edx, ecx
shl ebx, 0x18
movzx ecx, byte [rax + 0xd]
add r10d, edx
shl ecx, 0x10
mov edx, ebp
or ebx, ecx
xor edx, r8d
movzx ecx, byte [rax + 0xe]
and edx, r9d
shl ecx, 8
xor edx, ebp
or ebx, ecx
ror r9d, 2
movzx ecx, byte [rax + 0xf]
or ebx, ecx
mov ecx, r10d
rol ecx, 5
add ecx, 0x5a827999
mov dword [rsp + 0x3c], ebx
add ecx, r14d
add edx, ecx
movzx ecx, byte [rax + 0x11]
add r11d, edx
shl esi, 0x18
movzx edi, byte [rax + 0x14]
mov edx, r9d
shl ecx, 0x10
xor edx, r8d
or esi, ecx
shl edi, 0x18
movzx ecx, byte [rax + 0x12]
and edx, r10d
shl ecx, 8
xor edx, r8d
or esi, ecx
ror r10d, 2
movzx ecx, byte [rax + 0x13]
add edx, 0x5a827999
or esi, ecx
mov ecx, r11d
rol ecx, 5
add ebx, ecx
mov dword [rsp + 0x34], esi
movzx ecx, byte [rax + 0x15]
add ebx, edx
shl ecx, 0x10
add esi, 0x5a827999
or edi, ecx
add ebx, ebp
movzx ecx, byte [rax + 0x16]
mov edx, r9d
shl ecx, 8
xor edx, r10d
or edi, ecx
and edx, r11d
movzx ecx, byte [rax + 0x17]
xor edx, r9d
or edi, ecx
ror r11d, 2
mov dword [rsp + 0x2c], edi
mov ecx, ebx
rol ecx, 5
add edi, 0x5a827999
add ecx, esi
movzx esi, byte [rax + 0x18]
add edx, ecx
shl esi, 0x18
movzx ecx, byte [rax + 0x19]
add r8d, edx
shl ecx, 0x10
mov edx, r10d
or esi, ecx
xor edx, r11d
movzx ecx, byte [rax + 0x1a]
and edx, ebx
shl ecx, 8
xor edx, r10d
or esi, ecx
ror ebx, 2
movzx ecx, byte [rax + 0x1b]
or esi, ecx
mov ecx, r8d
rol ecx, 5
add ecx, edi
mov dword [rsp + 0x38], esi
movzx edi, byte [rax + 0x1c]
add edx, ecx
movzx ecx, byte [rax + 0x1d]
add r9d, edx
shl ecx, 0x10
mov edx, r11d
shl edi, 0x18
xor edx, ebx
or edi, ecx
and edx, r8d
movzx ecx, byte [rax + 0x1e]
xor edx, r11d
shl ecx, 8
or edi, ecx
movzx ecx, byte [rax + 0x1f]
or edi, ecx
mov ecx, r9d
rol ecx, 5
add esi, 0x5a827999
mov dword [rsp + 4], edi
add ecx, esi
movzx r14d, byte [rax + 0x20]
add edx, ecx
movzx esi, byte [rax + 0x24]
movzx ecx, byte [rax + 0x21]
add r10d, edx
movzx r12d, byte [rax + 0x2c]
mov edx, ebx
shl ecx, 0x10
add edi, 0x5a827999
ror r8d, 2
xor edx, r8d
shl r14d, 0x18
or r14d, ecx
shl esi, 0x18
movzx ecx, byte [rax + 0x22]
and edx, r9d
shl ecx, 8
xor edx, ebx
or r14d, ecx
ror r9d, 2
movzx ecx, byte [rax + 0x23]
or r14d, ecx
shl r12d, 0x18
mov ecx, r10d
mov dword [rsp + 0x14], r14d
rol ecx, 5
add ecx, edi
lea edi, [rbx + 0x5a827999]
add edx, ecx
movzx ebx, byte [rax + 0x28]
movzx ecx, byte [rax + 0x25]
add r11d, edx
shl ecx, 0x10
mov edx, r8d
or esi, ecx
shl ebx, 0x18
movzx ecx, byte [rax + 0x26]
xor edx, r9d
shl ecx, 8
and edx, r10d
or esi, ecx
ror r10d, 2
movzx ecx, byte [rax + 0x27]
xor edx, r8d
or esi, ecx
mov ecx, r11d
rol ecx, 5
add ecx, r14d
mov dword [rsp + 0x1c], esi
add edx, ecx
movzx ecx, byte [rax + 0x29]
shl ecx, 0x10
add edi, edx
or ebx, ecx
mov edx, r10d
movzx ecx, byte [rax + 0x2a]
xor edx, r9d
shl ecx, 8
and edx, r11d
or ebx, ecx
ror r11d, 2
movzx ecx, byte [rax + 0x2b]
xor edx, r9d
or ebx, ecx
mov ecx, edi
rol ecx, 5
add ecx, 0x5a827999
mov dword [rsp + 0xc], ebx
add ecx, esi
add edx, ecx
movzx ecx, byte [rax + 0x2d]
shl ecx, 0x10
add r8d, edx
or r12d, ecx
movzx ecx, byte [rax + 0x2e]
shl ecx, 8
or r12d, ecx
movzx ecx, byte [rax + 0x2f]
or r12d, ecx
mov dword [rsp + 0x18], r12d
movzx ebp, byte [rax + 0x30]
mov edx, r10d
movzx r15d, byte [rax + 0x34]
xor edx, r11d
movzx r13d, byte [rax + 0x38]
and edx, edi
xor edx, r10d
ror edi, 2
add edx, 0x5a827999
shl ebp, 0x18
shl r15d, 0x18
mov ecx, r8d
rol ecx, 5
add ebx, ecx
shl r13d, 0x18
movzx ecx, byte [rax + 0x31]
add ebx, edx
shl ecx, 0x10
add ebx, r9d
or ebp, ecx
lea r9d, [rdi + 0x5a827999]
movzx ecx, byte [rax + 0x32]
mov edx, r11d
shl ecx, 8
xor edx, edi
or ebp, ecx
and edx, r8d
movzx ecx, byte [rax + 0x33]
xor edx, r11d
or ebp, ecx
ror r8d, 2
mov ecx, ebx
mov dword [rsp], ebp
rol ecx, 5
add ecx, 0x5a827999
add ecx, r12d
add edx, ecx
movzx ecx, byte [rax + 0x35]
shl ecx, 0x10
add r10d, edx
or r15d, ecx
mov edx, edi
movzx ecx, byte [rax + 0x36]
xor edx, r8d
shl ecx, 8
and edx, ebx
or r15d, ecx
ror ebx, 2
movzx ecx, byte [rax + 0x37]
xor edx, edi
movzx edi, byte [rax + 0x3c]
or r15d, ecx
mov ecx, r10d
shl edi, 0x18
rol ecx, 5
add ecx, 0x5a827999
mov dword [rsp + 8], r15d
add ecx, ebp
add edx, ecx
movzx ecx, byte [rax + 0x39]
shl ecx, 0x10
add r11d, edx
or r13d, ecx
mov edx, r8d
movzx ecx, byte [rax + 0x3a]
xor edx, ebx
shl ecx, 8
and edx, r10d
or r13d, ecx
ror r10d, 2
movzx ecx, byte [rax + 0x3b]
xor edx, r8d
or r13d, ecx
mov ecx, r11d
rol ecx, 5
add ecx, r15d
mov dword [rsp + 0xc8], r13d
add edx, ecx
movzx ecx, byte [rax + 0x3d]
add r9d, edx
shl ecx, 0x10
or edi, ecx
movzx ecx, byte [rax + 0x3e]
shl ecx, 8
lea rax, [rax + 0x40]
or edi, ecx
mov edx, ebx
movzx ecx, byte [rax - 1]
xor edx, r10d
and edx, r11d
or edi, ecx
xor edx, ebx
ror r11d, 2
add r13d, 0x5a827999
mov dword [rsp + 0xb8], edi
mov ecx, r9d
rol ecx, 5
add ecx, r13d
mov r13d, r15d
add edx, ecx
xor r13d, r14d
mov r14d, dword [rsp + 0xc8]
add r8d, edx
xor r14d, esi
mov edx, r11d
xor r14d, dword [rsp + 0x3c]
xor edx, r10d
xor r14d, dword [rsp + 0x30]
and edx, r9d
mov esi, dword [rsp + 0xb8]
xor edx, r10d
xor esi, dword [rsp + 0xc]
mov ecx, r8d
xor esi, dword [rsp + 0x34]
rol ecx, 5
add ecx, edi
ror r9d, 2
add edx, ecx
rol r14d, 1
lea edi, [rbx + 0x5a827999]
mov ebx, dword [rsp + 0x20]
add edi, edx
mov dword [rsp + 0x20], r14d
xor r13d, ebx
xor esi, ebx
xor r13d, dword [rsp + 0x10]
mov edx, r11d
xor edx, r9d
rol r13d, 1
and edx, r8d
rol esi, 1
xor edx, r11d
ror r8d, 2
add edx, 0x5a827999
mov dword [rsp + 0x24], r13d
mov ecx, edi
mov dword [rsp + 0x10], esi
rol ecx, 5
mov ebx, r8d
add r10d, ecx
add r10d, edx
mov edx, r9d
xor edx, r8d
add r10d, r13d
and edx, edi
mov ecx, r10d
rol ecx, 5
xor edx, r9d
add r11d, ecx
ror edi, 2
xor ebx, edi
add edx, 0x5a827999
and ebx, r10d
add r11d, edx
add r11d, r14d
add r9d, 0x5a827999
xor ebx, r8d
mov ecx, r11d
rol ecx, 5
add ecx, r9d
add ebx, ecx
add ebx, esi
xor r12d, dword [rsp + 0x2c]
mov edx, edi
xor ebp, dword [rsp + 0x38]
mov ecx, ebx
xor r12d, dword [rsp + 0x3c]
mov r9d, ebx
xor ebp, dword [rsp + 0x34]
xor r12d, r13d
rol ecx, 5
xor ebp, r14d
mov r14d, dword [rsp + 0xc8]
add r8d, ecx
xor r14d, dword [rsp + 0x14]
xor r14d, dword [rsp + 0x38]
ror r10d, 2
xor edx, r10d
ror ebx, 2
and edx, r11d
rol r12d, 1
xor edx, edi
ror r11d, 2
add edx, 0x5a827999
rol ebp, 1
add r8d, edx
xor r9d, r10d
add edi, 0x6ed9eba1
xor r9d, r11d
add r8d, r12d
mov edx, ebx
xor edx, r8d
mov ecx, r8d
xor edx, r11d
rol ecx, 5
add ecx, edi
ror r8d, 2
add r9d, ecx
add edx, 0x6ed9eba1
mov edi, r15d
add r9d, ebp
xor edi, dword [rsp + 4]
mov ecx, r9d
xor edi, dword [rsp + 0x2c]
xor r14d, r12d
mov r15d, dword [rsp + 0xb8]
xor edi, esi
xor r15d, dword [rsp + 0x1c]
xor r15d, dword [rsp + 4]
mov esi, dword [rsp + 0xc]
xor r15d, ebp
xor esi, dword [rsp + 0x14]
rol ecx, 5
add r10d, ecx
rol edi, 1
add r10d, edx
rol r14d, 1
add r10d, edi
rol r15d, 1
mov edx, ebx
mov ecx, r10d
xor edx, r8d
rol ecx, 5
xor edx, r9d
add r11d, ecx
add edx, 0x6ed9eba1
ror r9d, 2
add r11d, edx
xor esi, edi
add r11d, r14d
mov edx, r8d
xor edx, r9d
mov ecx, r11d
rol ecx, 5
xor edx, r10d
add ebx, ecx
ror r10d, 2
add edx, 0x6ed9eba1
xor esi, r13d
add ebx, edx
add ebx, r15d
rol esi, 1
mov ecx, ebx
rol ecx, 5
mov edx, r9d
add r8d, ecx
mov r13d, dword [rsp + 0x18]
xor r13d, dword [rsp + 0x1c]
xor edx, r10d
xor edx, r11d
xor r13d, r14d
xor r13d, dword [rsp + 0x20]
add edx, 0x6ed9eba1
add r8d, edx
ror r11d, 2
mov edx, r10d
rol r13d, 1
xor edx, r11d
add r8d, esi
xor edx, ebx
mov ecx, r8d
rol ecx, 5
add edx, 0x6ed9eba1
add r9d, ecx
ror ebx, 2
mov ecx, dword [rsp]
add r9d, edx
xor ecx, dword [rsp + 0xc]
add r9d, r13d
xor ecx, r15d
mov edx, r8d
xor ecx, dword [rsp + 0x10]
xor edx, r11d
rol ecx, 1
xor edx, ebx
mov dword [rsp + 4], ecx
mov ecx, r9d
rol ecx, 5
add r10d, ecx
ror r8d, 2
mov ecx, dword [rsp + 4]
add r10d, edx
add ecx, 0x6ed9eba1
mov edx, r8d
add r10d, ecx
xor edx, r9d
mov ecx, dword [rsp + 8]
xor edx, ebx
xor ecx, dword [rsp + 0x18]
xor ecx, esi
ror r9d, 2
xor ecx, r12d
rol ecx, 1
mov dword [rsp + 0x14], ecx
mov ecx, r10d
rol ecx, 5
add r11d, ecx
mov ecx, dword [rsp + 0x14]
add ecx, 0x6ed9eba1
add r11d, edx
add r11d, ecx
mov edx, r8d
mov ecx, dword [rsp + 0xc8]
xor edx, r9d
xor ecx, dword [rsp]
xor edx, r10d
xor ecx, r13d
ror r10d, 2
xor ecx, ebp
rol ecx, 1
mov dword [rsp + 0xc], ecx
mov ecx, r11d
rol ecx, 5
add ebx, ecx
mov ecx, dword [rsp + 0xc]
add ecx, 0x6ed9eba1
add ebx, edx
add ebx, ecx
mov ecx, dword [rsp + 0xb8]
xor ecx, dword [rsp + 8]
xor ecx, dword [rsp + 4]
xor ecx, edi
rol ecx, 1
mov dword [rsp + 0x1c], ecx
mov ecx, ebx
mov edx, r9d
rol ecx, 5
xor edx, r10d
add r8d, ecx
xor edx, r11d
mov ecx, dword [rsp + 0x1c]
add r8d, edx
add ecx, 0x6ed9eba1
ror r11d, 2
add r8d, ecx
mov edx, r10d
mov ecx, dword [rsp + 0xc8]
xor edx, r11d
xor ecx, dword [rsp + 0x14]
xor edx, ebx
xor ecx, r14d
ror ebx, 2
xor ecx, dword [rsp + 0x24]
rol ecx, 1
mov dword [rsp + 0xc8], ecx
mov ecx, r8d
rol ecx, 5
add r9d, ecx
mov ecx, dword [rsp + 0xc8]
add ecx, 0x6ed9eba1
add r9d, edx
add r9d, ecx
mov edx, r11d
mov ecx, dword [rsp + 0xb8]
xor edx, ebx
xor ecx, dword [rsp + 0xc]
xor edx, r8d
xor ecx, r15d
ror r8d, 2
xor ecx, dword [rsp + 0x20]
rol ecx, 1
mov dword [rsp + 0xb8], ecx
mov ecx, r9d
rol ecx, 5
add r10d, ecx
mov ecx, dword [rsp + 0xb8]
add ecx, 0x6ed9eba1
add r10d, edx
add r10d, ecx
mov edx, r9d
mov ecx, dword [rsp + 0x1c]
xor edx, ebx
xor ecx, esi
ror r9d, 2
xor ecx, dword [rsp + 0x10]
xor edx, r8d
xor ecx, dword [rsp + 0x24]
rol ecx, 1
mov dword [rsp], ecx
mov ecx, r10d
rol ecx, 5
add r11d, ecx
mov ecx, dword [rsp]
add ecx, 0x6ed9eba1
add r11d, edx
add r11d, ecx
mov edx, r9d
mov ecx, dword [rsp + 0xc8]
xor edx, r10d
xor ecx, r13d
ror r10d, 2
xor ecx, r12d
xor edx, r8d
xor ecx, dword [rsp + 0x20]
rol ecx, 1
mov dword [rsp + 8], ecx
mov ecx, r11d
rol ecx, 5
add ebx, ecx
mov ecx, dword [rsp + 8]
add ecx, 0x6ed9eba1
add ebx, edx
add ebx, ecx
mov ecx, dword [rsp + 0xb8]
xor ecx, dword [rsp + 4]
xor ecx, ebp
mov edx, r9d
xor ecx, dword [rsp + 0x10]
xor edx, r10d
rol ecx, 1
xor edx, r11d
mov dword [rsp + 0x24], ecx
mov ecx, ebx
rol ecx, 5
add r8d, ecx
ror r11d, 2
mov ecx, dword [rsp + 0x24]
add r8d, edx
add ecx, 0x6ed9eba1
mov edx, r10d
add r8d, ecx
xor edx, r11d
mov ecx, dword [rsp + 0x14]
xor edx, ebx
xor ecx, edi
ror ebx, 2
xor ecx, r12d
mov r12d, dword [rsp + 0xc]
xor ecx, dword [rsp]
rol ecx, 1
mov dword [rsp + 0x18], ecx
mov ecx, r8d
rol ecx, 5
add r9d, ecx
mov ecx, dword [rsp + 0x18]
add ecx, 0x6ed9eba1
add r9d, edx
add r9d, ecx
mov edx, r11d
xor edx, ebx
mov ecx, r12d
xor ecx, r14d
xor edx, r8d
xor ecx, ebp
ror r8d, 2
xor ecx, dword [rsp + 8]
add edx, 0x6ed9eba1
rol ecx, 1
mov dword [rsp + 0xc], ecx
mov ecx, r9d
rol ecx, 5
add r10d, ecx
mov ecx, dword [rsp + 0x1c]
xor ecx, r15d
add r10d, edx
add r10d, dword [rsp + 0xc]
xor ecx, edi
xor ecx, dword [rsp + 0x24]
mov edx, ebx
mov edi, dword [rsp + 0xc8]
xor edx, r8d
rol ecx, 1
xor edx, r9d
mov dword [rsp + 0x10], ecx
xor edi, esi
xor edi, r14d
ror r9d, 2
xor edi, dword [rsp + 0x18]
mov ecx, r10d
rol ecx, 5
add r11d, ecx
rol edi, 1
mov ecx, dword [rsp + 0x10]
add r11d, edx
add ecx, 0x6ed9eba1
mov dword [rsp + 0x28], edi
add r11d, ecx
mov edx, r10d
xor edx, r8d
mov ecx, r11d
rol ecx, 5
xor edx, r9d
add ebx, ecx
add edi, 0x6ed9eba1
add ebx, edx
add ebx, edi
mov ebp, dword [rsp + 4]
add r8d, 0x6ed9eba1
mov r14d, dword [rsp]
mov ecx, ebx
mov edi, dword [rsp + 0xb8]
rol ecx, 5
xor edi, r13d
add ecx, r8d
ror r10d, 2
xor edi, r15d
mov edx, r10d
xor edi, dword [rsp + 0xc]
xor edx, r11d
xor edx, r9d
ror r11d, 2
add edx, ecx
rol edi, 1
mov dword [rsp + 0x20], edi
mov ecx, r11d
add edi, edx
and ecx, ebx
mov edx, r11d
mov r8d, edi
or edx, ebx
rol r8d, 5
and edx, r10d
ror ebx, 2
or edx, ecx
mov r15d, ebp
mov ecx, dword [rsp + 0x14]
add edx, r9d
xor ecx, r13d
lea r9d, [r8 - 0x70e44324]
xor ecx, dword [rsp + 0x28]
xor r15d, esi
xor r15d, dword [rsp + 0x10]
mov r13d, dword [rsp + 0x24]
xor r15d, r14d
rol r15d, 1
add edx, r15d
mov dword [rsp + 4], r15d
mov r15d, dword [rsp + 8]
add r9d, edx
xor ecx, r15d
mov r8d, r9d
rol ecx, 1
mov edx, ebx
mov dword [rsp], ecx
or edx, edi
and edx, r11d
rol r8d, 5
mov ecx, ebx
and ecx, edi
ror edi, 2
or edx, ecx
mov ecx, r12d
add edx, r10d
xor ecx, ebp
add edx, dword [rsp]
lea r10d, [r8 - 0x70e44324]
xor ecx, dword [rsp + 0x20]
add r10d, edx
xor ecx, r13d
mov edx, edi
rol ecx, 1
or edx, r9d
mov dword [rsp + 8], ecx
and edx, ebx
mov ecx, edi
mov r8d, r10d
and ecx, r9d
rol r8d, 5
or edx, ecx
ror r9d, 2
mov ecx, dword [rsp + 0x1c]
add edx, r11d
add edx, dword [rsp + 8]
xor ecx, dword [rsp + 0x14]
lea r11d, [r8 - 0x70e44324]
add r11d, edx
xor ecx, dword [rsp + 4]
xor ecx, dword [rsp + 0x18]
mov edx, r9d
mov ebp, dword [rsp + 0xc8]
or edx, r10d
and edx, edi
rol ecx, 1
mov dword [rsp + 0x24], ecx
mov r8d, r11d
xor ebp, dword [rsp + 0x24]
mov ecx, r9d
xor ebp, dword [rsp + 0x28]
and ecx, r10d
or edx, ecx
rol r8d, 5
mov ecx, dword [rsp + 0xc8]
add edx, ebx
add edx, dword [rsp + 0x24]
xor ecx, r12d
xor ecx, dword [rsp]
xor ebp, r14d
xor ecx, dword [rsp + 0xc]
lea ebx, [r8 - 0x70e44324]
mov r12d, dword [rsp + 0xb8]
add ebx, edx
xor r12d, dword [rsp + 0x1c]
mov edx, r11d
xor r12d, dword [rsp + 8]
mov r8d, ebx
xor r12d, dword [rsp + 0x10]
rol ecx, 1
mov dword [rsp + 0x30], ecx
mov ecx, r11d
ror r10d, 2
or edx, r10d
rol r8d, 5
and edx, r9d
ror r11d, 2
and ecx, r10d
rol r12d, 1
or edx, ecx
rol ebp, 1
add edx, edi
mov dword [rsp + 0x14], r12d
add edx, dword [rsp + 0x30]
lea edi, [r8 - 0x70e44324]
add edi, edx
mov dword [rsp + 0xc8], ebp
mov r8d, edi
mov edx, r11d
or edx, ebx
rol r8d, 5
and edx, r10d
mov ecx, r11d
and ecx, ebx
ror ebx, 2
or edx, ecx
mov ecx, ebx
add edx, r9d
and ecx, edi
add edx, r12d
lea r9d, [r8 - 0x70e44324]
add r9d, edx
mov edx, ebx
or edx, edi
mov r8d, r9d
and edx, r11d
rol r8d, 5
or edx, ecx
ror edi, 2
mov ecx, dword [rsp + 0xb8]
add edx, r10d
xor ecx, dword [rsp + 0x30]
add edx, ebp
xor ecx, dword [rsp + 0x20]
lea r10d, [r8 - 0x70e44324]
xor ecx, r15d
add r10d, edx
rol ecx, 1
mov r8d, r10d
mov dword [rsp + 0xb8], ecx
rol r8d, 5
xor r12d, dword [rsp + 4]
mov edx, edi
mov esi, dword [rsp + 0x24]
or edx, r9d
xor esi, dword [rsp + 0x10]
and edx, ebx
xor esi, dword [rsp + 0x18]
mov ecx, edi
and ecx, r9d
xor r12d, r13d
or edx, ecx
ror r9d, 2
add edx, r11d
xor r12d, r14d
add edx, dword [rsp + 0xb8]
lea r11d, [r8 - 0x70e44324]
add r11d, edx
rol r12d, 1
mov r14d, ebp
mov dword [rsp + 0x3c], r12d
xor r14d, dword [rsp]
mov edx, r9d
xor r14d, dword [rsp + 0x18]
or edx, r10d
mov ebp, dword [rsp + 0xb8]
and edx, edi
xor ebp, dword [rsp + 8]
mov ecx, r9d
and ecx, r10d
xor r14d, r15d
mov r15d, dword [rsp + 0xc]
or edx, ecx
add edx, ebx
ror r10d, 2
add edx, r12d
rol r14d, 1
xor ebp, r15d
mov dword [rsp + 0x34], r14d
mov r8d, r11d
xor ebp, r13d
rol r8d, 5
xor esi, r12d
rol ebp, 1
mov ecx, r10d
and ecx, r11d
rol esi, 1
mov dword [rsp + 0x2c], ebp
lea ebx, [r8 - 0x70e44324]
mov dword [rsp + 0xc], esi
add ebx, edx
mov edx, r10d
or edx, r11d
mov r8d, ebx
and edx, r9d
rol r8d, 5
or edx, ecx
ror r11d, 2
add edx, edi
mov ecx, ebx
add edx, r14d
and ecx, r11d
lea edi, [r8 - 0x70e44324]
add edi, edx
mov edx, ebx
or edx, r11d
ror ebx, 2
and edx, r10d
mov r8d, edi
or edx, ecx
rol r8d, 5
add edx, r9d
mov ecx, ebx
add edx, ebp
lea r9d, [r8 - 0x70e44324]
add r9d, edx
mov edx, ebx
or edx, edi
mov r8d, r9d
and edx, r11d
rol r8d, 5
and ecx, edi
or edx, ecx
mov r12d, dword [rsp + 0x30]
xor r12d, dword [rsp + 0x28]
add edx, r10d
add edx, esi
ror edi, 2
xor r12d, r15d
lea r10d, [r8 - 0x70e44324]
mov r15d, dword [rsp + 0xb8]
add r10d, edx
xor r15d, dword [rsp]
xor r12d, r14d
xor r15d, dword [rsp + 0x20]
mov edx, edi
mov r14d, dword [rsp + 0x14]
or edx, r9d
xor r14d, dword [rsp + 0x20]
and edx, ebx
xor r14d, dword [rsp + 0x10]
mov ecx, edi
and ecx, r9d
rol r12d, 1
or edx, ecx
ror r9d, 2
add edx, r11d
mov dword [rsp + 0x18], r12d
add edx, r12d
xor r14d, ebp
mov ebp, dword [rsp + 0xc8]
mov r8d, r10d
xor ebp, dword [rsp + 4]
mov ecx, r9d
xor ebp, dword [rsp + 0x28]
and ecx, r10d
xor ebp, esi
rol r8d, 5
rol r14d, 1
xor r15d, r12d
rol ebp, 1
rol r15d, 1
lea r11d, [r8 - 0x70e44324]
mov dword [rsp + 0x1c], r14d
add r11d, edx
mov dword [rsp + 0x38], ebp
mov edx, r9d
mov dword [rsp + 0x28], r15d
or edx, r10d
mov r8d, r11d
and edx, edi
ror r10d, 2
or edx, ecx
rol r8d, 5
add edx, 0x8f1bbcdc
add edi, 0x8f1bbcdc
add ebx, edx
mov ecx, r10d
and ecx, r11d
add ebx, r14d
add ebx, r8d
mov edx, r10d
or edx, r11d
mov esi, ebx
and edx, r9d
ror r11d, 2
or edx, ecx
rol esi, 5
add edx, edi
add r9d, 0x8f1bbcdc
add edx, ebp
mov ecx, r11d
add esi, edx
and ecx, ebx
mov edx, r11d
mov edi, esi
or edx, ebx
rol edi, 5
and edx, r10d
or edx, ecx
add edx, r9d
add edx, r15d
add edi, edx
mov r9d, dword [rsp + 8]
mov edx, esi
xor r9d, dword [rsp + 4]
mov ecx, esi
mov r13d, dword [rsp + 0x14]
xor r9d, r14d
xor r9d, dword [rsp + 0x3c]
mov r8d, edi
xor r13d, dword [rsp + 0x24]
mov r14d, dword [rsp + 0x24]
xor r14d, dword [rsp]
xor r14d, ebp
ror ebx, 2
xor r14d, dword [rsp + 0x34]
or edx, ebx
mov ebp, dword [rsp + 0x30]
and edx, r11d
xor ebp, dword [rsp + 8]
and ecx, ebx
or edx, ecx
rol r9d, 1
add edx, r10d
rol r8d, 5
add edx, r9d
ror esi, 2
xor ebp, r15d
rol r14d, 1
xor ebp, dword [rsp + 0x2c]
xor r13d, r9d
xor r13d, dword [rsp + 0xc]
lea r10d, [r8 - 0x70e44324]
mov r15d, dword [rsp + 0xc8]
add r10d, edx
xor r15d, dword [rsp + 0x30]
mov r8d, r10d
rol r8d, 5
mov edx, esi
or edx, edi
rol ebp, 1
and edx, ebx
mov dword [rsp + 0x20], r9d
rol r13d, 1
mov ecx, esi
and ecx, edi
mov dword [rsp + 4], r14d
or edx, ecx
ror edi, 2
add edx, r11d
mov dword [rsp + 0x10], ebp
add edx, r14d
mov dword [rsp + 8], r13d
lea r11d, [r8 - 0x70e44324]
mov ecx, edi
add r11d, edx
and ecx, r10d
mov r8d, r11d
mov edx, edi
or edx, r10d
rol r8d, 5
and edx, esi
ror r10d, 2
or edx, ecx
xor r15d, r14d
add edx, ebx
mov ecx, r10d
add edx, ebp
lea ebx, [r8 - 0x70e44324]
add ebx, edx
and ecx, r11d
mov edx, r10d
mov r9d, ebx
or edx, r11d
rol r9d, 5
and edx, edi
ror r11d, 2
or edx, ecx
add edx, 0x8f1bbcdc
add edx, esi
add edx, r13d
add r9d, edx
xor r15d, r12d
mov r14d, dword [rsp + 0xb8]
mov ecx, r10d
xor ecx, r11d
rol r15d, 1
xor ecx, ebx
mov dword [rsp], r15d
add ecx, 0xca62c1d6
ror ebx, 2
add ecx, r15d
mov r12d, r14d
xor r12d, dword [rsp + 0x14]
xor r14d, r15d
xor r14d, dword [rsp + 0x28]
mov r8d, r9d
xor r14d, dword [rsp + 0x34]
xor r12d, ebp
xor r12d, dword [rsp + 0x1c]
rol r14d, 1
mov dword [rsp + 0xb8], r14d
add r14d, 0xca62c1d6
rol r8d, 5
add r8d, edi
rol r12d, 1
mov edi, dword [rsp + 0xc8]
add r8d, ecx
mov ecx, r11d
mov dword [rsp + 0x14], r12d
xor ecx, ebx
xor edi, r13d
xor edi, dword [rsp + 0x38]
xor ecx, r9d
xor edi, dword [rsp + 0x3c]
add ecx, 0xca62c1d6
add ecx, r12d
ror r9d, 2
rol edi, 1
mov edx, r8d
rol edx, 5
mov esi, edi
xor esi, dword [rsp + 4]
add r10d, edx
xor esi, dword [rsp + 0xc]
add r10d, ecx
xor esi, dword [rsp + 0x34]
mov ecx, r8d
xor ecx, ebx
ror r8d, 2
xor ecx, r9d
mov dword [rsp + 0xc8], edi
add ecx, 0xca62c1d6
mov edx, r10d
add ecx, edi
rol edx, 5
add r11d, edx
add r11d, ecx
mov ecx, r8d
xor ecx, r10d
mov edx, r11d
xor ecx, r9d
rol edx, 5
add ecx, r14d
ror r10d, 2
add ebx, edx
mov r14d, r12d
xor r14d, dword [rsp + 0x20]
add ebx, ecx
xor r14d, dword [rsp + 0x2c]
mov ecx, r8d
xor r14d, dword [rsp + 0x3c]
xor ecx, r10d
xor ecx, r11d
rol r14d, 1
add ecx, 0xca62c1d6
ror r11d, 2
add ecx, r14d
mov dword [rsp + 0x3c], r14d
mov edx, ebx
rol edx, 5
add r9d, edx
add r9d, ecx
rol esi, 1
mov ebp, dword [rsp + 0xb8]
mov edx, r9d
xor ebp, dword [rsp + 0x10]
mov ecx, r10d
xor ebp, dword [rsp + 0x18]
xor ecx, r11d
xor ebp, dword [rsp + 0x2c]
xor ecx, ebx
add ecx, r8d
rol edx, 5
add ecx, 0xca62c1d6
ror ebx, 2
mov dword [rsp + 0x34], esi
mov edi, r13d
xor edi, dword [rsp + 0x1c]
xor edi, dword [rsp + 0xc]
lea r8d, [rsi + rdx]
mov r13d, dword [rsp + 0x38]
add r8d, ecx
xor edi, r14d
rol ebp, 1
mov r14d, r15d
rol edi, 1
mov ecx, r11d
mov dword [rsp + 0x2c], edi
xor ecx, ebx
xor r14d, r13d
xor r14d, dword [rsp + 0x18]
xor ecx, r9d
add ecx, 0xca62c1d6
ror r9d, 2
add ecx, ebp
xor r14d, esi
mov esi, dword [rsp + 0xc8]
mov edx, r8d
xor esi, dword [rsp + 0x20]
mov r15d, r12d
xor r15d, dword [rsp + 0x28]
xor esi, r13d
xor r15d, dword [rsp + 0x1c]
xor esi, edi
rol edx, 5
xor r15d, ebp
add r10d, edx
rol r14d, 1
add r10d, ecx
rol r15d, 1
mov ecx, ebx
mov dword [rsp + 0x38], r14d
xor ecx, r9d
mov dword [rsp + 0xc], r15d
xor ecx, r8d
mov edx, r10d
add ecx, 0xca62c1d6
rol edx, 5
add ecx, edi
ror r8d, 2
add r11d, edx
add r11d, ecx
mov ecx, r10d
xor ecx, r9d
ror r10d, 2
xor ecx, r8d
mov edx, r11d
add ecx, 0xca62c1d6
rol edx, 5
add ecx, r14d
add ebx, edx
add ebx, ecx
mov ecx, r10d
xor ecx, r11d
mov edx, ebx
xor ecx, r8d
rol edx, 5
add ecx, 0xca62c1d6
ror r11d, 2
add ecx, r15d
add r9d, edx
add r9d, ecx
rol esi, 1
mov dword [rsp + 0x1c], esi
mov r13d, dword [rsp + 0xb8]
mov edi, r9d
xor r13d, dword [rsp + 4]
mov ecx, r10d
xor r13d, dword [rsp + 0x28]
xor ecx, r11d
xor ecx, ebx
rol edi, 5
add ecx, 0xca62c1d6
ror ebx, 2
add ecx, esi
add edi, r8d
mov r8d, dword [rsp + 0x10]
add edi, ecx
xor r8d, dword [rsp + 0x20]
xor r13d, r14d
xor r8d, r15d
rol r13d, 1
xor r8d, dword [rsp + 0x3c]
mov r12d, edi
rol r12d, 5
mov ecx, r11d
xor ecx, ebx
rol r8d, 1
xor ecx, r9d
add r12d, r10d
mov r10d, dword [rsp + 8]
add ecx, 0xca62c1d6
xor r10d, dword [rsp + 4]
add ecx, r13d
add r12d, ecx
ror r9d, 2
mov ecx, ebx
xor r10d, esi
xor r10d, dword [rsp + 0x34]
xor ecx, r9d
xor ecx, edi
rol r10d, 1
add ecx, 0xca62c1d6
ror edi, 2
add ecx, r8d
mov r15d, r12d
rol r15d, 5
add r15d, r11d
add r15d, ecx
mov ecx, r9d
xor ecx, edi
mov r14d, r15d
xor ecx, r12d
rol r14d, 5
add ecx, 0xca62c1d6
ror r12d, 2
add ecx, r10d
add r14d, ebx
mov ebx, dword [rsp]
add r14d, ecx
xor ebx, dword [rsp + 0x10]
mov ecx, r15d
xor ecx, edi
ror r15d, 2
xor ecx, r12d
xor ebx, r13d
xor ebx, ebp
add ecx, 0xca62c1d6
rol ebx, 1
mov ebp, r14d
add ecx, ebx
rol ebp, 5
add ebp, r9d
mov r9d, dword [rsp + 0x14]
xor r9d, dword [rsp + 8]
add ebp, ecx
xor r9d, r8d
mov ecx, r15d
xor r9d, dword [rsp + 0x2c]
xor ecx, r14d
mov esi, ebp
rol r9d, 1
xor ecx, r12d
rol esi, 5
add ecx, 0xca62c1d6
mov r11d, dword [rsp + 0xc8]
add ecx, r9d
xor r11d, dword [rsp]
add esi, edi
add esi, ecx
ror r14d, 2
xor r11d, r10d
mov ecx, r15d
xor r11d, dword [rsp + 0x38]
xor ecx, r14d
xor ecx, ebp
rol r11d, 1
add ecx, 0xca62c1d6
ror ebp, 2
add ecx, r11d
mov edx, r14d
xor edx, ebp
mov edi, esi
xor edx, esi
rol edi, 5
add edi, r12d
ror esi, 2
mov r12d, dword [rsp + 0xb8]
add edi, ecx
add edx, 0xca62c1d6
mov ecx, r12d
xor ecx, dword [rsp + 0x14]
xor r12d, r11d
xor ecx, ebx
xor r12d, r13d
xor ecx, dword [rsp + 0xc]
mov r10d, edi
xor r12d, dword [rsp + 0x34]
mov ebx, dword [rsp + 0x44]
rol ecx, 1
add ecx, r15d
rol r10d, 5
add r10d, ecx
rol r12d, 1
mov ecx, dword [rsp + 0xc8]
add r10d, edx
xor ecx, r9d
mov edx, ebp
xor ecx, dword [rsp + 0x1c]
xor edx, esi
xor ecx, dword [rsp + 0x3c]
xor edx, edi
rol ecx, 1
add edx, 0xca62c1d6
add ecx, r14d
ror edi, 2
mov r14d, dword [rsp + 0x40]
add ebp, 0xca62c1d6
mov r9d, r10d
rol r9d, 5
add r9d, ecx
mov ecx, esi
xor ecx, edi
add r9d, edx
mov rdx, qword [rsp + 0xb0]
xor ecx, r10d
add ecx, ebp
ror r10d, 2
add ecx, dword [rsp + 0x4c]
add r14d, r10d
mov r15d, r9d
mov dword [rsp + 0x40], r14d
rol r15d, 5
add r15d, r12d
mov dword [rdx + 8], r14d
add r15d, ecx
mov ecx, dword [rsp + 0x50]
add ecx, r9d
mov dword [rsp + 0x4c], r15d
add ebx, edi
mov dword [rdx], r15d
mov dword [rsp + 0x44], ebx
mov ebp, ecx
mov dword [rdx + 0xc], ebx
mov dword [rsp + 0x50], ecx
mov dword [rdx + 4], ecx
mov r9d, dword [rsp + 0x48]
add r9d, esi
sub qword [rsp + 0xc0], 1
mov dword [rsp + 0x48], r9d
mov dword [rdx + 0x10], r9d
jne 0x1800ac680
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret