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