Function at 0x1400a7680
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov ebx, dword [rcx + 0xa8]
and ebx, 0x7f
mov qword [rsp + 0x88], rdx
mov r14, rcx
test r8, r8
je 0x1400a9579
mov qword [rsp + 0x90], r8
mov eax, pe_nt_image_headers64
sub eax, ebx
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x90], rax
jb 0x1400a9590
mov rdx, qword [rsp + 0x88]
mov ecx, ebx
mov r8, rax
mov rdi, rax
add rcx, r14
call sub.msvcrt.dll_memcpy
add qword [rsp + 0x88], rdi
sub qword [rsp + 0x90], rdi
mov eax, dword [r14 + 0x94]
mov ecx, dword [r14 + 0x88]
and eax, dword [r14 + 0x98]
and ecx, dword [r14 + 0x90]
xor eax, ecx
mov edx, dword [r14 + 0x9c]
xor eax, dword [r14 + 0x80]
mov ecx, dword [r14 + 0x80]
xor ecx, dword [r14 + 0x84]
and ecx, dword [r14 + 0x8c]
mov r11d, dword [r14 + 0x90]
ror edx, 0xb
xor eax, ecx
and r11d, dword [r14 + 0x94]
mov ecx, dword [r14 + 0x84]
and ecx, dword [r14 + 0x8c]
add edx, dword [r14]
ror eax, 7
xor r11d, ecx
mov ecx, dword [r14 + 0x80]
add eax, edx
mov edx, dword [r14 + 0x98]
xor r11d, eax
mov r10d, dword [r14 + 0x8c]
and r10d, dword [r14 + 0x90]
mov r8d, eax
xor ecx, eax
and ecx, dword [r14 + 0x88]
ror edx, 0xb
add edx, dword [r14 + 4]
xor r11d, ecx
mov ecx, dword [r14 + 0x80]
and ecx, dword [r14 + 0x88]
ror r11d, 7
xor r10d, ecx
mov ecx, eax
mov ebx, dword [r14 + 0x88]
add r11d, edx
mov edx, dword [r14 + 0x94]
xor r10d, r11d
xor ecx, r11d
and ecx, dword [r14 + 0x84]
mov esi, r11d
xor r10d, ecx
mov ecx, dword [r14 + 0x84]
ror edx, 0xb
add edx, dword [r14 + 8]
ror r10d, 7
add r10d, edx
and ecx, eax
and ebx, dword [r14 + 0x8c]
mov edx, dword [r14 + 0x90]
xor ebx, ecx
mov ecx, r11d
and r8d, r10d
mov edi, r10d
xor ebx, r10d
xor ecx, r10d
and ecx, dword [r14 + 0x80]
ror edx, 0xb
xor ebx, ecx
add edx, dword [r14 + 0xc]
ror ebx, 7
add ebx, edx
mov edx, dword [r14 + 0x8c]
ror edx, 0xb
add edx, dword [r14 + 0x10]
mov ecx, dword [r14 + 0x80]
mov r9d, dword [r14 + 0x84]
and r9d, dword [r14 + 0x88]
and ecx, r11d
xor r9d, ecx
mov ecx, r10d
xor ecx, ebx
xor r9d, ebx
and ecx, eax
xor r9d, ecx
mov ecx, dword [r14 + 0x80]
and ecx, dword [r14 + 0x84]
ror r9d, 7
xor ecx, r8d
mov r8d, ebx
add r9d, edx
mov edx, dword [r14 + 0x88]
xor r8d, r9d
xor ecx, r9d
and r8d, r11d
ror edx, 0xb
add edx, dword [r14 + 0x14]
xor ecx, r8d
mov r8d, dword [r14 + 0x84]
ror ecx, 7
and esi, ebx
and edi, r9d
add ecx, edx
mov edx, dword [r14 + 0x80]
ror r8d, 0xb
add r8d, dword [r14 + 0x18]
and edx, eax
xor edx, esi
mov esi, r9d
xor esi, ecx
xor edx, ecx
and esi, r10d
xor edx, esi
mov esi, dword [r14 + 0x80]
ror edx, 7
add edx, r8d
mov r8d, eax
ror esi, 0xb
add esi, dword [r14 + 0x1c]
and r8d, r11d
ror eax, 0xb
add eax, dword [r14 + 0x20]
xor r8d, edi
mov edi, ecx
xor edi, edx
xor r8d, edx
and edi, ebx
xor r8d, edi
mov edi, ebx
ror r8d, 7
and edi, ecx
add r8d, esi
mov esi, eax
mov eax, r11d
and eax, r10d
xor eax, edi
mov edi, edx
xor edi, r8d
xor eax, r8d
and edi, r9d
xor eax, edi
ror r11d, 0xb
mov edi, r9d
ror eax, 7
and edi, edx
add eax, esi
mov esi, dword [r14 + 0x24]
add esi, r11d
mov r11d, r10d
ror r10d, 0xb
and r11d, ebx
xor r11d, edi
mov edi, r8d
xor edi, eax
xor r11d, eax
and edi, ecx
xor r11d, edi
mov edi, ecx
ror r11d, 7
and edi, r8d
add r11d, esi
mov esi, dword [r14 + 0x28]
add esi, r10d
mov r10d, ebx
ror ebx, 0xb
add ebx, dword [r14 + 0x2c]
and r10d, r9d
xor r10d, edi
mov edi, eax
xor edi, r11d
xor r10d, r11d
and edi, edx
xor r10d, edi
mov edi, edx
ror r10d, 7
and edi, eax
add r10d, esi
mov esi, ebx
mov ebx, r9d
and ebx, ecx
xor ebx, edi
mov edi, r11d
xor edi, r10d
xor ebx, r10d
and edi, r8d
ror r9d, 0xb
xor ebx, edi
mov edi, r8d
ror ebx, 7
and edi, r11d
add ebx, esi
mov esi, dword [r14 + 0x30]
add esi, r9d
mov r9d, ecx
ror ecx, 0xb
and r9d, edx
xor r9d, edi
mov edi, r10d
xor edi, ebx
xor r9d, ebx
and edi, eax
xor r9d, edi
mov edi, eax
ror r9d, 7
and edi, r10d
add r9d, esi
mov esi, dword [r14 + 0x34]
add esi, ecx
mov ecx, edx
ror edx, 0xb
add edx, dword [r14 + 0x38]
and ecx, r8d
xor ecx, edi
mov edi, ebx
xor edi, r9d
xor ecx, r9d
and edi, r11d
xor ecx, edi
mov edi, r11d
ror ecx, 7
and edi, ebx
add ecx, esi
mov esi, edx
mov edx, r8d
and edx, eax
xor edx, edi
mov edi, r9d
xor edx, ecx
xor edi, ecx
ror r8d, 0xb
and edi, r10d
xor edx, edi
mov edi, r10d
ror edx, 7
and edi, r9d
add edx, esi
mov esi, dword [r14 + 0x3c]
add esi, r8d
mov r8d, eax
ror eax, 0xb
add eax, dword [r14 + 0x40]
and r8d, r11d
xor r8d, edi
mov edi, ecx
xor edi, edx
xor r8d, edx
and edi, ebx
xor r8d, edi
mov edi, ebx
ror r8d, 7
and edi, ecx
add r8d, esi
mov esi, eax
mov eax, r11d
ror r11d, 0xb
and eax, r10d
xor eax, edi
mov edi, edx
xor edi, r8d
xor eax, r8d
and edi, r9d
xor eax, edi
mov edi, r9d
ror eax, 7
and edi, edx
add eax, esi
mov esi, dword [r14 + 0x44]
add esi, r11d
mov r11d, r10d
and r11d, ebx
xor r11d, edi
mov edi, r8d
xor r11d, eax
xor edi, eax
ror r10d, 0xb
and edi, ecx
xor r11d, edi
mov edi, ecx
ror r11d, 7
and edi, r8d
add r11d, esi
mov esi, dword [r14 + 0x48]
add esi, r10d
mov r10d, ebx
ror ebx, 0xb
add ebx, dword [r14 + 0x4c]
and r10d, r9d
xor r10d, edi
mov edi, eax
xor edi, r11d
xor r10d, r11d
and edi, edx
xor r10d, edi
mov edi, edx
ror r10d, 7
and edi, eax
add r10d, esi
mov esi, ebx
mov ebx, r9d
ror r9d, 0xb
and ebx, ecx
xor ebx, edi
mov edi, r11d
xor edi, r10d
xor ebx, r10d
and edi, r8d
xor ebx, edi
mov edi, r8d
ror ebx, 7
and edi, r11d
add ebx, esi
mov esi, dword [r14 + 0x50]
add esi, r9d
mov r9d, ecx
and r9d, edx
xor r9d, edi
mov edi, r10d
ror ecx, 0xb
xor edi, ebx
xor r9d, ebx
and edi, eax
xor r9d, edi
mov edi, eax
ror r9d, 7
and edi, r10d
add r9d, esi
mov esi, dword [r14 + 0x54]
add esi, ecx
mov ecx, edx
ror edx, 0xb
add edx, dword [r14 + 0x58]
and ecx, r8d
xor ecx, edi
mov edi, ebx
xor edi, r9d
xor ecx, r9d
and edi, r11d
xor ecx, edi
mov edi, r11d
ror ecx, 7
and edi, ebx
add ecx, esi
mov esi, edx
mov edx, r8d
ror r8d, 0xb
and edx, eax
xor edx, edi
mov edi, r9d
xor edi, ecx
xor edx, ecx
and edi, r10d
xor edx, edi
mov edi, r10d
ror edx, 7
add edx, esi
mov esi, dword [r14 + 0x5c]
add esi, r8d
mov r8d, eax
and r8d, r11d
and edi, r9d
ror eax, 0xb
add eax, dword [r14 + 0x60]
xor r8d, edi
mov edi, ecx
xor edi, edx
xor r8d, edx
and edi, ebx
xor r8d, edi
mov edi, ebx
ror r8d, 7
and edi, ecx
add r8d, esi
mov esi, eax
mov eax, r11d
ror r11d, 0xb
and eax, r10d
add r11d, dword [r14 + 0x64]
xor eax, edi
mov edi, edx
xor edi, r8d
xor eax, r8d
and edi, r9d
xor eax, edi
mov edi, r9d
ror eax, 7
and edi, edx
add eax, esi
mov esi, r10d
ror r10d, 0xb
add r10d, dword [r14 + 0x68]
and esi, ebx
xor esi, edi
mov edi, r8d
xor edi, eax
xor esi, eax
and edi, ecx
xor esi, edi
mov edi, ecx
ror esi, 7
add esi, r11d
mov r11d, ebx
and r11d, r9d
and edi, r8d
mov r13d, esi
ror ebx, 0xb
xor r11d, edi
mov edi, eax
add ebx, dword [r14 + 0x6c]
xor edi, esi
xor r11d, esi
and edi, edx
xor r11d, edi
mov edi, edx
ror r11d, 7
and edi, eax
add r11d, r10d
mov r10d, r9d
ror r9d, 0xb
add r9d, dword [r14 + 0x70]
xor r13d, r11d
and r10d, ecx
mov r15d, r11d
xor r10d, edi
mov edi, r13d
and edi, r8d
xor r10d, r11d
xor r10d, edi
mov edi, r8d
ror r10d, 7
and edi, esi
add r10d, ebx
mov ebx, ecx
xor r15d, r10d
and ebx, edx
mov r12d, r10d
xor ebx, edi
mov edi, r15d
mov dword [rsp + 0x2c], r15d
mov r15d, r11d
and edi, eax
xor ebx, r10d
xor ebx, edi
mov edi, eax
ror ebx, 7
add ebx, r9d
mov r9d, edx
xor r12d, ebx
ror ecx, 0xb
and edi, r11d
and r9d, r8d
xor r9d, edi
mov edi, r12d
add ecx, dword [r14 + 0x74]
mov ebp, ebx
and edi, esi
xor r9d, ebx
ror edx, 0xb
add edx, dword [r14 + 0x78]
xor r9d, edi
mov edi, esi
and r15d, ebx
ror r9d, 7
and edi, r10d
add r9d, ecx
mov ecx, r8d
ror r8d, 0xb
add r8d, dword [r14 + 0x7c]
xor ebp, r9d
and ecx, eax
xor ecx, edi
mov edi, ebp
and edi, r11d
xor ecx, r9d
xor ecx, edi
ror ecx, 7
add ecx, edx
mov edx, r9d
xor edx, ecx
mov edi, edx
mov edx, eax
and edx, esi
xor edx, r15d
mov r15d, edi
and r15d, r10d
xor edx, ecx
xor edx, r15d
mov r15d, r11d
ror edx, 7
add edx, r8d
mov r8d, dword [r14 + 0x14]
ror eax, 0xb
and r15d, r9d
xor r15d, r12d
and r13d, r9d
lea r8d, [r8 + rax + 0x452821e6]
mov eax, edx
xor r13d, r10d
not eax
and eax, esi
ror esi, 0xb
xor eax, r15d
mov r15d, r11d
and r15d, edx
and eax, ecx
xor r13d, r15d
mov r15d, r10d
xor eax, r13d
mov r13d, r10d
ror eax, 7
and r13d, ecx
add eax, r8d
mov r8d, dword [r14 + 0x38]
xor r13d, ebp
and r15d, eax
lea esi, [r8 + rsi + 0x38d01377]
mov r8d, eax
not r8d
and r8d, r11d
ror r11d, 0xb
xor r8d, r13d
mov r13d, dword [rsp + 0x2c]
and r8d, edx
and r13d, ecx
xor r13d, ebx
xor r13d, r15d
mov r15d, dword [r14 + 0x48]
xor r8d, r13d
mov r13d, ebx
ror r8d, 7
and r13d, edx
add r8d, esi
mov esi, dword [r14 + 0x68]
xor r13d, edi
lea r11d, [rsi + r11 - 0x41ab9931]
mov esi, r8d
not esi
and esi, r10d
xor esi, r13d
mov r13d, ebx
and esi, eax
and r12d, edx
and r13d, r8d
ror r10d, 0xb
xor r12d, r9d
and ebp, eax
and edi, r8d
xor r12d, r13d
mov r13d, r9d
xor ebp, ecx
xor edi, edx
xor esi, r12d
mov r12d, ecx
and r13d, eax
ror esi, 7
xor r12d, edx
add esi, r11d
lea r11d, [r15 + r10 + 0x34e90c6c]
xor r13d, r12d
mov r15d, dword [r14 + 0x2c]
mov r10d, esi
not r10d
and r10d, ebx
ror ebx, 0xb
xor r10d, r13d
mov r13d, r9d
and r13d, esi
and r10d, r8d
xor ebp, r13d
mov r13d, ecx
xor r10d, ebp
mov ebp, edx
and r13d, r8d
ror r10d, 7
xor ebp, eax
add r10d, r11d
lea r11d, [r15 + rbx - 0x3f53d649]
xor r13d, ebp
mov r15d, dword [r14 + 0x58]
mov ebx, r10d
not ebx
and ebx, r9d
xor ebx, r13d
mov r13d, ecx
and r13d, r10d
and ebx, esi
xor edi, r13d
mov r13d, eax
xor ebx, edi
mov edi, dword [r14 + 0x70]
ror r9d, 0xb
xor r13d, r8d
ror ebx, 7
and r12d, esi
and ebp, r10d
add ebx, r11d
lea r9d, [rdi + r9 - 0x3683af23]
mov edi, edx
xor r12d, eax
mov r11d, ebx
and edi, esi
xor ebp, r8d
not r11d
xor edi, r13d
and r11d, ecx
ror ecx, 0xb
xor r11d, edi
mov edi, edx
and edi, ebx
and r11d, r10d
xor r12d, edi
mov edi, dword [r14 + 0x1c]
xor r11d, r12d
mov r12d, eax
ror r11d, 7
lea ecx, [rdi + rcx + 0x3f84d5b5]
and r12d, r10d
add r11d, r9d
mov r9d, r8d
mov edi, r11d
xor r9d, esi
not edi
xor r12d, r9d
and edi, edx
xor edi, r12d
mov r12d, eax
and r12d, r11d
and edi, ebx
xor ebp, r12d
mov r12d, esi
xor edi, ebp
xor r12d, r10d
ror edi, 7
add edi, ecx
mov ecx, dword [r14 + 0x40]
ror edx, 0xb
and r13d, ebx
mov ebp, edi
xor r13d, esi
and r9d, r11d
lea edx, [rcx + rdx - 0x4ab8f6e9]
mov ecx, r8d
not ebp
xor r9d, r10d
and ecx, ebx
and ebp, eax
ror eax, 0xb
xor ecx, r12d
xor ebp, ecx
mov ecx, r8d
and ecx, edi
and ebp, r11d
xor r13d, ecx
xor ebp, r13d
mov r13d, r10d
ror ebp, 7
xor r13d, ebx
add ebp, edx
mov edx, dword [r14]
mov ecx, ebp
lea eax, [rdx + rax - 0x6de92a27]
mov edx, esi
not ecx
and edx, r11d
and ecx, r8d
ror r8d, 0xb
xor edx, r13d
xor ecx, edx
mov edx, esi
and edx, ebp
and ecx, edi
xor r9d, edx
xor ecx, r9d
mov r9d, ebx
ror ecx, 7
xor r9d, r11d
add ecx, eax
mov eax, dword [r14 + 0x5c]
mov edx, ecx
lea eax, [rax + r8 - 0x768604e5]
mov r8d, r10d
not edx
and r8d, edi
and edx, esi
xor r8d, r9d
xor edx, r8d
and r12d, edi
mov r8d, r10d
ror esi, 0xb
and r8d, ecx
xor r12d, ebx
and edx, ebp
and r13d, ebp
xor r12d, r8d
mov r8d, r11d
xor r13d, r11d
and r9d, ecx
xor edx, r12d
mov r12d, ebx
xor r8d, edi
xor r9d, edi
ror edx, 7
and r12d, ebp
add edx, eax
mov eax, dword [r14 + 0x50]
xor r12d, r8d
lea esi, [rax + rsi - 0x2ecef45a]
mov eax, edx
not eax
and eax, r10d
ror r10d, 0xb
xor eax, r12d
mov r12d, ebx
and r12d, edx
and eax, ecx
xor r13d, r12d
lea r12d, [r15 + r10 - 0x67204a54]
mov r15d, dword [r14 + 4]
xor eax, r13d
mov r13d, r11d
ror eax, 7
and r13d, ecx
add eax, esi
mov esi, edi
mov r10d, eax
xor esi, ebp
not r10d
xor r13d, esi
and r10d, ebx
xor r10d, r13d
mov r13d, r11d
and r10d, edx
and r13d, eax
and r8d, edx
ror ebx, 0xb
xor r9d, r13d
mov r13d, edi
xor r8d, ebp
and esi, eax
xor r10d, r9d
and r13d, edx
lea ebx, [r15 + rbx + 0x2ffd72db]
xor esi, ecx
ror r10d, 7
mov r15d, dword [r14 + 0x20]
add r10d, r12d
mov r12d, ebp
mov r9d, r10d
xor r12d, ecx
not r9d
xor r13d, r12d
and r9d, r11d
ror r11d, 0xb
xor r9d, r13d
mov r13d, edi
and r13d, r10d
and r9d, eax
xor r8d, r13d
mov r13d, ecx
xor r9d, r8d
xor r13d, edx
ror r9d, 7
add r9d, ebx
mov ebx, dword [r14 + 0x28]
lea r8d, [rbx + r11 - 0x2fe52049]
mov r11d, r9d
mov ebx, ebp
and ebx, eax
not r11d
xor ebx, r13d
and r11d, edi
xor r11d, ebx
mov ebx, ebp
and ebx, r9d
and r11d, r10d
xor esi, ebx
mov ebx, dword [r14 + 0x10]
xor r11d, esi
mov esi, edx
ror r11d, 7
add r11d, r8d
ror edi, 0xb
xor esi, eax
and r12d, r10d
lea r8d, [rbx + rdi - 0x471e5013]
mov ebx, r11d
mov edi, ecx
xor r12d, edx
and edi, r10d
not ebx
and r13d, r9d
xor edi, esi
and ebx, ebp
xor r13d, eax
ror ebp, 0xb
xor ebx, edi
mov edi, ecx
lea ebp, [r15 + rbp + 0x6a267e96]
mov r15d, dword [r14 + 0x78]
and edi, r11d
and ebx, r9d
xor r12d, edi
mov edi, eax
xor ebx, r12d
mov r12d, edx
xor edi, r10d
ror ebx, 7
and r12d, r9d
add ebx, r8d
xor r12d, edi
mov r8d, ebx
not r8d
and r8d, ecx
ror ecx, 0xb
xor r8d, r12d
mov r12d, edx
and r12d, ebx
and r8d, r11d
xor r13d, r12d
lea r12d, [r15 + rcx - 0x45836fbb]
mov r15d, dword [r14 + 0xc]
xor r8d, r13d
mov r13d, eax
ror r8d, 7
add r8d, ebp
mov ebp, r10d
mov ecx, r8d
xor ebp, r9d
not ecx
and ecx, edx
and r13d, r11d
and esi, r11d
ror edx, 0xb
xor r13d, ebp
xor esi, r10d
and edi, ebx
xor ecx, r13d
mov r13d, eax
xor edi, r9d
and r13d, r8d
and ecx, ebx
xor esi, r13d
mov r13d, r10d
xor ecx, esi
mov esi, r9d
and r13d, ebx
ror ecx, 7
xor esi, r11d
add ecx, r12d
lea r12d, [r15 + rdx - 0xed38067]
xor r13d, esi
mov r15d, dword [r14 + 0x54]
mov edx, ecx
not edx
and edx, eax
ror eax, 0xb
xor edx, r13d
mov r13d, r10d
and r13d, ecx
and edx, r8d
xor edi, r13d
mov r13d, r9d
xor edx, edi
mov edi, r11d
and r13d, r8d
ror edx, 7
xor edi, ebx
add edx, r12d
lea r12d, [r15 + rax + 0x24a19947]
xor r13d, edi
mov r15d, dword [r14 + 0x24]
mov eax, edx
not eax
and eax, r10d
xor eax, r13d
mov r13d, r9d
and eax, ecx
and ebp, r8d
and r13d, edx
ror r10d, 0xb
xor ebp, r11d
and esi, ecx
and edi, edx
xor ebp, r13d
mov r13d, r11d
xor esi, ebx
xor edi, r8d
xor eax, ebp
mov ebp, ebx
and r13d, ecx
ror eax, 7
xor ebp, r8d
add eax, r12d
lea r12d, [r15 + r10 - 0x4c6e9309]
xor r13d, ebp
mov r15d, dword [r14 + 0x60]
mov r10d, eax
not r10d
and r10d, r9d
ror r9d, 0xb
xor r10d, r13d
mov r13d, r11d
and r13d, eax
and r10d, edx
xor esi, r13d
mov r13d, ebx
xor r10d, esi
mov esi, dword [r14 + 0x44]
and r13d, edx
ror r10d, 7
add r10d, r12d
lea r9d, [rsi + r9 + 0x801f2e2]
mov r12d, r8d
mov esi, r10d
xor r12d, ecx
not esi
xor r13d, r12d
and esi, r11d
xor esi, r13d
mov r13d, ebx
and r13d, r10d
and esi, eax
xor edi, r13d
mov r13d, r8d
xor esi, edi
ror r11d, 0xb
mov edi, ecx
and r13d, eax
ror esi, 7
xor edi, edx
and ebp, eax
and r12d, r10d
add esi, r9d
lea r9d, [r15 + r11 - 0x7a7103ea]
xor r13d, edi
xor ebp, ecx
mov r11d, esi
xor r12d, edx
mov r15d, dword [r14 + 0x74]
not r11d
and r11d, ebx
ror ebx, 0xb
xor r11d, r13d
mov r13d, r8d
lea ebx, [r15 + rbx + 0x636920d8]
mov r15d, dword [r14 + 0x18]
and r13d, esi
and r11d, r10d
xor ebp, r13d
mov r13d, ecx
xor r11d, ebp
mov ebp, edx
and r13d, r10d
ror r11d, 7
xor ebp, eax
add r11d, r9d
xor r13d, ebp
mov r9d, r11d
not r9d
and r9d, r8d
xor r9d, r13d
mov r13d, ecx
and r13d, r11d
and r9d, esi
xor r12d, r13d
mov r13d, edx
xor r9d, r12d
ror r9d, 7
add r9d, ebx
mov ebx, eax
xor ebx, r10d
ror r8d, 0xb
and r13d, esi
and edi, esi
lea r12d, [r15 + r8 + 0x71574e69]
mov r8d, r9d
xor r13d, ebx
xor edi, eax
not r8d
mov r15d, dword [r14 + 0x4c]
and ebp, r11d
and r8d, ecx
ror ecx, 0xb
xor ebp, r10d
xor r8d, r13d
mov r13d, edx
and r13d, r9d
and r8d, r11d
xor edi, r13d
mov r13d, eax
xor r8d, edi
mov edi, r10d
and r13d, r11d
ror r8d, 7
xor edi, esi
add r8d, r12d
lea r12d, [r15 + rcx - 0x5ba7015d]
xor r13d, edi
mov r15d, dword [r14 + 0x30]
mov ecx, r8d
not ecx
and ecx, edx
ror edx, 0xb
xor ecx, r13d
mov r13d, eax
and r13d, r8d
and ecx, r9d
xor ebp, r13d
mov r13d, r10d
xor ecx, ebp
mov ebp, esi
and r13d, r9d
ror ecx, 7
xor ebp, r11d
add ecx, r12d
lea r12d, [r15 + rdx - 0xb6cc282]
xor r13d, ebp
mov r15d, dword [r14 + 8]
mov edx, ecx
not edx
and edx, eax
xor edx, r13d
and ebx, r9d
mov r13d, r10d
ror eax, 0xb
and r13d, ecx
xor ebx, esi
and edx, r8d
and edi, r8d
xor ebx, r13d
mov r13d, esi
xor edi, r11d
and ebp, ecx
xor edx, ebx
mov ebx, dword [r14 + 0x3c]
and r13d, r8d
xor ebp, r9d
ror edx, 7
add edx, r12d
lea ebx, [rbx + rax + 0xd95748f]
mov r12d, r11d
mov eax, edx
xor r12d, r9d
not eax
xor r13d, r12d
and eax, r10d
ror r10d, 0xb
xor eax, r13d
mov r13d, esi
and r13d, edx
and eax, ecx
xor edi, r13d
mov r13d, r11d
xor eax, edi
mov edi, dword [r14 + 0x34]
and r13d, ecx
ror eax, 7
add eax, ebx
lea r10d, [rdi + r10 + 0x728eb658]
mov ebx, r9d
mov edi, eax
xor ebx, r8d
not edi
xor r13d, ebx
and edi, esi
xor edi, r13d
mov r13d, r11d
and edi, edx
and r13d, eax
ror esi, 0xb
and r12d, edx
xor ebp, r13d
mov r13d, r9d
xor r12d, r8d
and ebx, eax
xor edi, ebp
mov ebp, r8d
and r13d, edx
xor ebx, ecx
ror edi, 7
xor ebp, ecx
add edi, r10d
lea r10d, [r15 + rsi + 0x718bcd58]
xor r13d, ebp
mov r15d, dword [r14 + 0x64]
mov esi, edi
not esi
and esi, r11d
ror r11d, 0xb
xor esi, r13d
mov r13d, r9d
lea r11d, [r15 + r11 - 0x7deab512]
mov r15d, dword [r14 + 0x74]
and r13d, edi
and esi, eax
xor r12d, r13d
mov r13d, r8d
xor esi, r12d
mov r12d, ecx
and r13d, eax
ror esi, 7
xor r12d, edx
add esi, r10d
xor r13d, r12d
mov r10d, esi
not r10d
and r10d, r9d
xor r10d, r13d
mov r13d, r8d
and r13d, esi
and r10d, edi
xor ebx, r13d
xor r10d, ebx
mov ebx, dword [r14 + 0x7c]
ror r10d, 7
add r10d, r11d
ror r9d, 0xb
and ebp, edi
and r12d, esi
lea r11d, [rbx + r9 + 0x7b54a41d]
mov r9d, ecx
mov ebx, edx
xor ebp, edx
xor ebx, eax
and r9d, edi
xor r12d, eax
xor r9d, ebx
mov ebx, r10d
not ebx
and ebx, r8d
ror r8d, 0xb
xor r9d, ebx
mov ebx, ecx
and ebx, r10d
and r9d, esi
xor ebp, ebx
mov ebx, dword [r14 + 0x6c]
xor r9d, ebp
mov ebp, edi
ror r9d, 7
add r9d, r11d
lea r11d, [rbx + r8 - 0x3da5a64b]
mov r8d, edx
mov ebx, eax
xor ebx, edi
and r8d, esi
xor r8d, ebx
mov ebx, r9d
not ebx
and ebx, ecx
ror ecx, 0xb
xor r8d, ebx
mov ebx, edx
and ebx, r9d
and r8d, r10d
xor r12d, ebx
mov ebx, dword [r14 + 0x4c]
xor r8d, r12d
ror r8d, 7
add r8d, r11d
lea r11d, [rbx + rcx - 0x63cf2ac7]
mov ebx, r10d
mov ecx, eax
xor ecx, r9d
and ebx, r8d
xor ebx, ecx
mov ecx, esi
and ebp, r8d
and ecx, r10d
and ebx, edx
ror edx, 0xb
xor ecx, eax
xor ecx, ebp
mov ebp, esi
xor ebx, ecx
mov ecx, dword [r14 + 0x24]
ror ebx, 7
add ebx, r11d
lea ecx, [rcx + rdx + 0x2af26013]
mov r11d, r9d
mov edx, edi
xor edx, r8d
and r11d, ebx
and ebp, ebx
xor r11d, edx
mov edx, r10d
and edx, r9d
and r11d, eax
ror eax, 0xb
xor edx, edi
xor edx, ebp
mov ebp, r10d
xor r11d, edx
mov edx, dword [r14 + 0x10]
ror r11d, 7
add r11d, ecx
lea edx, [rdx + rax - 0x3a2e4fdd]
mov ecx, r8d
mov eax, esi
xor eax, ebx
and ecx, r11d
and ebp, r11d
xor ecx, eax
mov eax, r9d
and eax, r8d
and ecx, edi
xor eax, esi
xor eax, ebp
mov ebp, r9d
xor ecx, eax
mov eax, dword [r14 + 0x50]
ror ecx, 7
add ecx, edx
ror edi, 0xb
lea edx, [rax + rdi + 0x286085f0]
mov edi, ebx
mov eax, r10d
and ebp, ecx
xor eax, r11d
and edi, ecx
xor edi, eax
mov eax, r8d
and eax, ebx
and edi, esi
ror esi, 0xb
xor eax, r10d
xor eax, ebp
mov ebp, r8d
xor edi, eax
mov eax, dword [r14 + 0x70]
ror edi, 7
add edi, edx
lea esi, [rax + rsi - 0x35be86e8]
mov edx, r11d
mov eax, r9d
xor eax, ecx
and edx, edi
and ebp, edi
xor edx, eax
mov eax, ebx
and eax, r11d
and edx, r10d
ror r10d, 0xb
xor eax, r9d
xor eax, ebp
mov ebp, ebx
xor edx, eax
mov eax, dword [r14 + 0x44]
ror edx, 7
add edx, esi
lea esi, [rax + r10 - 0x4724c711]
mov eax, ecx
mov r10d, r8d
xor r10d, edi
and eax, edx
xor eax, r10d
mov r10d, r11d
and r10d, ecx
and eax, r9d
xor r10d, r8d
and ebp, edx
ror r9d, 0xb
xor r10d, ebp
mov ebp, r11d
xor eax, r10d
mov r10d, edi
ror eax, 7
add eax, esi
mov esi, dword [r14 + 0x20]
and r10d, eax
and ebp, eax
lea esi, [rsi + r9 - 0x71862350]
mov r9d, ebx
xor r9d, edx
xor r10d, r9d
mov r9d, ecx
and r9d, edi
and r10d, r8d
ror r8d, 0xb
xor r9d, ebx
xor r9d, ebp
mov ebp, ecx
xor r10d, r9d
ror r10d, 7
add r10d, esi
mov esi, dword [r14 + 0x58]
and ebp, r10d
lea r9d, [rsi + r8 + 0x603a180e]
mov esi, edx
mov r8d, r11d
xor r8d, eax
and esi, r10d
xor esi, r8d
mov r8d, edi
and r8d, edx
and esi, ebx
ror ebx, 0xb
xor r8d, r11d
lea ebx, [r15 + rbx + 0x6c9e0e8b]
xor r8d, ebp
mov ebp, edi
xor esi, r8d
mov r8d, eax
ror esi, 7
add esi, r9d
mov r9d, ecx
xor r9d, r10d
and r8d, esi
xor r8d, r9d
mov r9d, edx
and ebp, esi
and r9d, eax
and r8d, r11d
ror r11d, 0xb
xor r9d, ecx
xor r9d, ebp
mov ebp, edx
xor r8d, r9d
mov r9d, r10d
ror r8d, 7
add r8d, ebx
mov ebx, dword [r14 + 0x38]
and r9d, r8d
and ebp, r8d
lea ebx, [rbx + r11 - 0x4fe175c2]
mov r11d, edi
xor r11d, esi
xor r9d, r11d
mov r11d, eax
and r11d, r10d
and r9d, ecx
ror ecx, 0xb
xor r11d, edi
xor r11d, ebp
mov ebp, eax
xor r9d, r11d
mov r11d, esi
ror r9d, 7
add r9d, ebx
mov ebx, dword [r14 + 0x64]
and r11d, r9d
and ebp, r9d
lea ebx, [rbx + rcx - 0x28ea883f]
mov ecx, edx
xor ecx, r8d
xor r11d, ecx
mov ecx, r10d
and ecx, esi
and r11d, edi
xor ecx, edx
xor ecx, ebp
mov ebp, r10d
xor r11d, ecx
mov ecx, r8d
ror r11d, 7
add r11d, ebx
mov ebx, dword [r14 + 0x30]
ror edi, 0xb
and ecx, r11d
and ebp, r11d
lea edi, [rbx + rdi - 0x42ceb4d9]
mov ebx, eax
xor ebx, r9d
xor ecx, ebx
mov ebx, esi
and ebx, r8d
and ecx, edx
ror edx, 0xb
xor ebx, eax
xor ebx, ebp
mov ebp, esi
xor ecx, ebx
mov ebx, dword [r14 + 0x60]
ror ecx, 7
add ecx, edi
lea edi, [rbx + rdx + 0x78af2fda]
mov edx, r9d
mov ebx, r10d
xor ebx, r11d
and edx, ecx
and ebp, ecx
xor edx, ebx
mov ebx, r8d
and ebx, r9d
and edx, eax
ror eax, 0xb
xor ebx, r10d
xor ebx, ebp
mov ebp, r8d
xor edx, ebx
mov ebx, dword [r14 + 0x78]
ror edx, 7
add edx, edi
lea edi, [rbx + rax + 0x55605c60]
mov ebx, r11d
mov eax, esi
xor eax, ecx
and ebx, edx
xor ebx, eax
mov eax, r9d
and eax, r11d
and ebx, r10d
xor eax, esi
and ebp, edx
ror r10d, 0xb
xor eax, ebp
mov ebp, r9d
xor ebx, eax
mov eax, dword [r14 + 0x40]
ror ebx, 7
add ebx, edi
lea edi, [rax + r10 - 0x19aada0d]
mov r10d, ecx
mov eax, r8d
xor eax, edx
and r10d, ebx
and ebp, ebx
xor r10d, eax
mov eax, r11d
and eax, ecx
and r10d, esi
ror esi, 0xb
xor eax, r8d
xor eax, ebp
mov ebp, r11d
xor r10d, eax
mov eax, dword [r14 + 0x68]
ror r10d, 7
add r10d, edi
lea edi, [rax + rsi - 0x55aa546c]
mov eax, edx
mov esi, r9d
xor esi, ebx
and eax, r10d
and ebp, r10d
xor eax, esi
mov esi, ecx
and esi, edx
and eax, r8d
ror r8d, 0xb
xor esi, r9d
xor esi, ebp
mov ebp, ecx
xor eax, esi
mov esi, r11d
ror eax, 7
xor esi, r10d
add eax, edi
mov edi, dword [r14 + 0x7c]
lea edi, [rdi + r8 + 0x57489862]
mov r8d, ebx
and r8d, eax
xor r8d, esi
mov esi, edx
and ebp, eax
and esi, ebx
and r8d, r9d
ror r9d, 0xb
xor esi, r11d
xor esi, ebp
mov ebp, edx
xor r8d, esi
mov esi, r10d
ror r8d, 7
add r8d, edi
mov edi, dword [r14 + 0x3c]
and esi, r8d
and ebp, r8d
lea edi, [rdi + r9 + 0x63e81440]
mov r9d, ecx
xor r9d, eax
xor esi, r9d
mov r9d, ebx
and r9d, r10d
and esi, r11d
ror r11d, 0xb
xor r9d, ecx
xor r9d, ebp
mov ebp, ebx
xor esi, r9d
mov r9d, eax
ror esi, 7
add esi, edi
mov edi, dword [r14 + 0x1c]
and r9d, esi
and ebp, esi
lea edi, [rdi + r11 + 0x55ca396a]
mov r11d, edx
xor r11d, r8d
xor r9d, r11d
mov r11d, r10d
and r11d, eax
and r9d, ecx
xor r11d, edx
xor r11d, ebp
mov ebp, r10d
xor r9d, r11d
mov r11d, ebx
ror r9d, 7
add r9d, edi
mov edi, dword [r14 + 0xc]
ror ecx, 0xb
xor r11d, esi
and ebp, r9d
lea edi, [rdi + rcx + 0x2aab10b6]
mov ecx, r8d
and ecx, r9d
xor ecx, r11d
mov r11d, eax
and r11d, r8d
and ecx, edx
ror edx, 0xb
xor r11d, ebx
xor r11d, ebp
mov ebp, eax
xor ecx, r11d
mov r11d, esi
ror ecx, 7
add ecx, edi
mov edi, dword [r14 + 4]
and r11d, ecx
and ebp, ecx
lea edi, [rdi + rdx - 0x4b33a3cc]
mov edx, r10d
xor edx, r9d
xor r11d, edx
mov edx, r8d
and edx, esi
and r11d, ebx
ror ebx, 0xb
xor edx, r10d
xor edx, ebp
mov ebp, r8d
xor r11d, edx
mov edx, dword [r14]
ror r11d, 7
add r11d, edi
lea edi, [rdx + rbx + 0x1141e8ce]
mov ebx, r9d
mov edx, eax
xor edx, ecx
and ebx, r11d
xor ebx, edx
mov edx, esi
and edx, r9d
and ebx, r10d
xor edx, eax
and ebp, r11d
ror r10d, 0xb
xor edx, ebp
mov ebp, esi
xor ebx, edx
mov edx, dword [r14 + 0x48]
ror ebx, 7
add ebx, edi
lea edi, [rdx + r10 - 0x5eab7951]
mov edx, ecx
mov r10d, r8d
xor r10d, r11d
and edx, ebx
and ebp, ebx
xor edx, r10d
mov r10d, r9d
and r10d, ecx
and edx, eax
ror eax, 0xb
xor r10d, r8d
xor r10d, ebp
mov ebp, r9d
xor edx, r10d
mov r10d, esi
ror edx, 7
xor r10d, ebx
add edx, edi
mov edi, dword [r14 + 0x6c]
and ebp, edx
lea edi, [rdi + rax + 0x7c72e993]
mov eax, r11d
and eax, edx
xor eax, r10d
mov r10d, ecx
and r10d, r11d
and eax, r8d
ror r8d, 0xb
xor r10d, esi
xor r10d, ebp
mov ebp, ecx
xor eax, r10d
mov r10d, ebx
ror eax, 7
add eax, edi
mov edi, dword [r14 + 0x34]
and r10d, eax
lea edi, [rdi + r8 - 0x4c11ebef]
mov r8d, r9d
xor r8d, edx
xor r10d, r8d
mov r8d, r11d
and ebp, eax
and r8d, ebx
and r10d, esi
ror esi, 0xb
xor r8d, r9d
xor r8d, ebp
mov ebp, r11d
xor r10d, r8d
mov r8d, edx
ror r10d, 7
add r10d, edi
mov edi, dword [r14 + 0x18]
mov r15d, dword [r14 + 8]
and r8d, r10d
and ebp, r10d
lea edi, [rdi + rsi + 0x636fbc2a]
mov esi, ecx
xor esi, eax
xor r8d, esi
mov esi, ebx
and esi, edx
and r8d, r9d
ror r9d, 0xb
xor esi, ecx
xor esi, ebp
mov ebp, ebx
xor r8d, esi
mov esi, r11d
ror r8d, 7
xor esi, r10d
add r8d, edi
mov edi, dword [r14 + 0x54]
and ebp, r8d
lea edi, [rdi + r9 + 0x2ba9c55d]
mov r9d, eax
and r9d, r8d
xor r9d, esi
mov esi, edx
and esi, eax
and r9d, ecx
xor esi, r11d
xor esi, ebp
mov ebp, edx
xor r9d, esi
mov esi, r10d
ror r9d, 7
add r9d, edi
mov edi, dword [r14 + 0x28]
ror ecx, 0xb
and esi, r9d
and ebp, r9d
lea edi, [rdi + rcx + 0x741831f6]
mov ecx, ebx
xor ecx, r8d
xor esi, ecx
mov ecx, eax
and ecx, r10d
and esi, r11d
ror r11d, 0xb
xor ecx, ebx
xor ecx, ebp
mov ebp, eax
xor esi, ecx
mov ecx, edx
ror esi, 7
xor ecx, r9d
add esi, edi
mov edi, dword [r14 + 0x5c]
and ebp, esi
lea edi, [rdi + r11 - 0x31a3c1ea]
mov r11d, r8d
and r11d, esi
xor r11d, ecx
mov ecx, r10d
and ecx, r8d
and r11d, ebx
ror ebx, 0xb
xor ecx, edx
xor ecx, ebp
mov ebp, r10d
xor r11d, ecx
mov ecx, r9d
ror r11d, 7
add r11d, edi
mov edi, dword [r14 + 0x2c]
and ecx, r11d
lea edi, [rdi + rbx - 0x64786ce2]
mov ebx, eax
xor ebx, esi
xor ecx, ebx
mov ebx, r8d
and ebx, r9d
and ecx, edx
xor ebx, eax
and ebp, r11d
ror edx, 0xb
xor ebx, ebp
xor ecx, ebx
mov ebx, dword [r14 + 0x14]
ror ecx, 7
add ecx, edi
lea ebp, [rbx + rdx - 0x502945cd]
mov edx, esi
mov ebx, r10d
xor ebx, r11d
and edx, ecx
mov edi, r8d
xor edx, ebx
mov ebx, r9d
and edi, ecx
and ebx, esi
and edx, eax
ror eax, 0xb
xor ebx, r10d
lea r12d, [r15 + rax + 0x6c24cf5c]
mov eax, r8d
xor ebx, edi
xor eax, ecx
xor edx, ebx
mov ebx, r9d
ror edx, 7
add edx, ebp
mov ebp, r11d
and ebp, edx
and ebx, edx
xor ebp, eax
mov eax, esi
and eax, r11d
and ebp, r10d
ror r10d, 0xb
xor eax, r8d
xor eax, ebx
xor ebp, eax
mov eax, dword [r14 + 0x60]
ror ebp, 7
lea r10d, [rax + r10 + 0x7a325381]
mov eax, ecx
add ebp, r12d
mov r12d, r8d
not eax
xor r12d, r11d
and eax, esi
xor eax, r12d
xor edi, r11d
mov r12d, r8d
ror r8d, 0xb
xor eax, edx
or r12d, ebp
xor ebx, ecx
and eax, ebp
xor eax, edi
mov edi, ecx
and edi, edx
xor edi, esi
xor edi, r12d
and edi, r9d
xor eax, edi
mov edi, dword [r14 + 0x10]
ror eax, 7
add eax, r10d
lea r10d, [rdi + r8 + 0x28958677]
mov r8d, edx
mov edi, r9d
not r8d
xor edi, ecx
and r8d, r11d
xor r8d, edi
mov edi, r9d
ror r9d, 0xb
xor r8d, ebp
or edi, eax
and r8d, eax
xor ebx, r8d
mov r8d, edx
and r8d, ebp
xor r8d, r11d
xor r8d, edi
mov edi, dword [r14]
and r8d, esi
xor ebx, r8d
mov r8d, esi
lea r9d, [rdi + r9 + 0x3b8f4898]
mov edi, esi
ror ebx, 7
xor r8d, edx
add ebx, r10d
mov r10d, ebp
not r10d
and r10d, ecx
xor r10d, r8d
mov r8d, esi
or edi, ebx
ror esi, 0xb
xor r10d, eax
and r8d, ebp
xor r8d, edx
and r10d, ebx
xor r10d, r8d
mov r8d, ebp
and r8d, eax
xor r8d, ecx
xor r8d, edi
mov edi, dword [r14 + 0x38]
and r8d, r11d
xor r10d, r8d
mov r8d, r11d
ror r10d, 7
xor r8d, ebp
add r10d, r9d
lea r9d, [rdi + rsi + 0x6b4bb9af]
mov esi, eax
mov edi, r11d
not esi
or edi, r10d
and esi, edx
xor esi, r8d
mov r8d, r11d
ror r11d, 0xb
xor esi, ebx
and r8d, eax
xor r8d, ebp
and esi, r10d
xor esi, r8d
mov r8d, eax
and r8d, ebx
xor r8d, edx
xor r8d, edi
mov edi, ecx
and r8d, ecx
xor esi, r8d
mov r8d, ecx
ror esi, 7
add esi, r9d
lea r9d, [r15 + r11 - 0x3b4017e5]
mov r11d, ebx
not r11d
and r11d, ebp
xor r8d, eax
or edi, esi
xor r11d, r8d
mov r8d, ecx
ror ecx, 0xb
xor r11d, r10d
and r8d, ebx
xor r8d, eax
and r11d, esi
xor r11d, r8d
mov r8d, ebx
and r8d, r10d
xor r8d, ebp
xor r8d, edi
mov edi, dword [r14 + 0x1c]
and r8d, edx
xor r11d, r8d
lea r8d, [rdi + rcx + 0x66282193]
mov edi, r10d
mov ecx, edx
not edi
xor ecx, ebx
ror r11d, 7
and edi, eax
add r11d, r9d
mov r9d, edx
xor edi, ecx
mov ecx, edx
or r9d, r11d
xor edi, esi
and ecx, r10d
xor ecx, ebx
and edi, r11d
xor edi, ecx
mov ecx, r10d
and ecx, esi
xor ecx, eax
xor ecx, r9d
mov r9d, ebp
and ecx, ebp
xor edi, ecx
mov ecx, dword [r14 + 0x70]
ror edi, 7
add edi, r8d
ror edx, 0xb
lea r8d, [rcx + rdx + 0x61d809cc]
mov edx, esi
mov ecx, ebp
or r9d, edi
not edx
xor ecx, r10d
and edx, ebx
xor edx, ecx
mov ecx, ebp
ror ebp, 0xb
xor edx, r11d
and ecx, esi
xor ecx, r10d
and edx, edi
xor edx, ecx
mov ecx, esi
and ecx, r11d
xor ecx, ebx
xor ecx, r9d
mov r9d, r11d
and ecx, eax
not r9d
xor edx, ecx
mov ecx, dword [r14 + 0x5c]
and r9d, r10d
ror edx, 7
add edx, r8d
lea r8d, [rcx + rbp - 0x4de566f]
mov ecx, eax
mov ebp, eax
xor ecx, esi
or ebp, edx
xor r9d, ecx
mov ecx, eax
xor r9d, edi
and ecx, r11d
xor ecx, esi
and r9d, edx
xor r9d, ecx
mov ecx, r11d
and ecx, edi
xor ecx, r10d
xor ecx, ebp
mov ebp, ebx
and ecx, ebx
xor r9d, ecx
mov ecx, dword [r14 + 0x68]
ror eax, 0xb
ror r9d, 7
add r9d, r8d
mov r8d, edi
lea ecx, [rcx + rax + 0x487cac60]
mov eax, ebx
not r8d
xor eax, r11d
or ebp, r9d
and r8d, esi
xor r8d, eax
mov eax, ebx
ror ebx, 0xb
xor r8d, edx
and eax, edi
xor eax, r11d
and r8d, r9d
xor r8d, eax
mov eax, edi
and eax, edx
xor eax, esi
xor eax, ebp
mov ebp, r10d
and eax, r10d
xor r8d, eax
mov eax, dword [r14 + 0x18]
ror r8d, 7
add r8d, ecx
mov ecx, edx
lea ebx, [rax + rbx + 0x5dec8032]
mov eax, r10d
not ecx
xor eax, edi
or ebp, r8d
and ecx, r11d
xor ecx, eax
mov eax, r10d
xor ecx, r9d
and eax, edx
xor eax, edi
and ecx, r8d
xor ecx, eax
mov eax, edx
and eax, r9d
xor eax, r11d
xor eax, ebp
ror r10d, 0xb
mov ebp, esi
and eax, esi
xor ecx, eax
mov eax, dword [r14 + 0x78]
ror ecx, 7
add ecx, ebx
lea ebx, [rax + r10 - 0x107ba2a3]
mov r10d, r9d
mov eax, esi
not r10d
xor eax, edx
or ebp, ecx
and r10d, edi
xor r10d, eax
mov eax, esi
ror esi, 0xb
xor r10d, r8d
and eax, r9d
xor eax, edx
and r10d, ecx
xor r10d, eax
mov eax, r9d
and eax, r8d
xor eax, edi
xor eax, ebp
mov ebp, r11d
and eax, r11d
xor r10d, eax
mov eax, dword [r14 + 0x50]
ror r10d, 7
add r10d, ebx
mov ebx, r8d
lea esi, [rax + rsi - 0x167a8a4f]
mov eax, r11d
not ebx
xor eax, r9d
and ebx, edx
xor ebx, eax
mov eax, r11d
xor ebx, ecx
and eax, r8d
xor eax, r9d
and ebx, r10d
xor ebx, eax
mov eax, r8d
and eax, ecx
xor eax, edx
or ebp, r10d
ror r11d, 0xb
xor eax, ebp
mov ebp, edi
and eax, edi
xor ebx, eax
mov eax, dword [r14 + 0x48]
ror ebx, 7
add ebx, esi
lea esi, [rax + r11 - 0x23d9dcfe]
mov r11d, ecx
mov eax, edi
not r11d
xor eax, r8d
or ebp, ebx
and r11d, r9d
xor r11d, eax
mov eax, edi
ror edi, 0xb
xor r11d, r10d
and eax, ecx
xor eax, r8d
and r11d, ebx
xor r11d, eax
mov eax, ecx
and eax, r10d
xor eax, r9d
xor eax, ebp
mov ebp, edx
and eax, edx
xor r11d, eax
mov eax, dword [r14 + 0x64]
ror r11d, 7
add r11d, esi
mov esi, r10d
lea edi, [rax + rdi - 0x149ae478]
mov eax, edx
not esi
xor eax, ecx
and esi, r8d
xor esi, eax
mov eax, edx
xor esi, ebx
and eax, r10d
xor eax, ecx
and esi, r11d
xor esi, eax
mov eax, r10d
or ebp, r11d
ror edx, 0xb
and eax, ebx
xor eax, r8d
xor eax, ebp
mov ebp, r9d
and eax, r9d
xor esi, eax
mov eax, dword [r14 + 0x4c]
ror esi, 7
add esi, edi
lea edi, [rax + rdx + 0x23893e81]
mov edx, ebx
mov eax, r9d
not edx
xor eax, r10d
or ebp, esi
and edx, ecx
xor edx, eax
mov eax, r9d
ror r9d, 0xb
xor edx, r11d
and eax, ebx
xor eax, r10d
and edx, esi
xor edx, eax
mov eax, ebx
and eax, r11d
xor eax, ecx
xor eax, ebp
mov ebp, r8d
and eax, r8d
xor edx, eax
mov eax, dword [r14 + 0xc]
ror edx, 7
add edx, edi
lea edi, [rax + r9 - 0x2c69533b]
mov eax, r11d
mov r9d, r8d
not eax
xor r9d, ebx
and eax, r10d
xor eax, r9d
mov r9d, r8d
xor eax, esi
and eax, edx
and r9d, r11d
or ebp, edx
ror r8d, 0xb
xor r9d, ebx
xor eax, r9d
mov r9d, r11d
and r9d, esi
xor r9d, r10d
xor r9d, ebp
mov ebp, ecx
and r9d, ecx
xor eax, r9d
mov r9d, ecx
ror eax, 7
xor r9d, r11d
add eax, edi
mov edi, dword [r14 + 0x58]
or ebp, eax
lea edi, [rdi + r8 + 0xf6d6ff3]
mov r8d, esi
not r8d
and r8d, ebx
xor r8d, r9d
mov r9d, ecx
ror ecx, 0xb
xor r8d, edx
and r9d, esi
xor r9d, r11d
and r8d, eax
xor r8d, r9d
mov r9d, esi
and r9d, edx
xor r9d, ebx
xor r9d, ebp
mov ebp, r10d
and r9d, r10d
xor r8d, r9d
mov r9d, edx
ror r8d, 7
not r9d
add r8d, edi
mov edi, dword [r14 + 0x2c]
and r9d, r11d
lea edi, [rdi + rcx - 0x7c0bbdc7]
mov ecx, r10d
xor ecx, esi
xor r9d, ecx
mov ecx, r10d
xor r9d, eax
and ecx, edx
or ebp, r8d
ror r10d, 0xb
xor ecx, esi
and r9d, r8d
xor r9d, ecx
mov ecx, edx
and ecx, eax
xor ecx, r11d
xor ecx, ebp
mov ebp, ebx
and ecx, ebx
xor r9d, ecx
mov ecx, ebx
ror r9d, 7
xor ecx, edx
add r9d, edi
mov edi, dword [r14 + 0x7c]
or ebp, r9d
lea edi, [rdi + r10 + 0x2e0b4482]
mov r10d, eax
not r10d
and r10d, esi
xor r10d, ecx
mov ecx, ebx
ror ebx, 0xb
xor r10d, r8d
and ecx, eax
xor ecx, edx
and r10d, r9d
xor r10d, ecx
mov ecx, eax
and ecx, r8d
xor ecx, esi
xor ecx, ebp
mov ebp, r11d
and ecx, r11d
xor r10d, ecx
mov ecx, r11d
ror r10d, 7
add r10d, edi
mov edi, dword [r14 + 0x54]
lea edi, [rdi + rbx - 0x5b7bdffc]
mov ebx, r8d
not ebx
and ebx, edx
xor ecx, eax
or ebp, r10d
xor ebx, ecx
mov ecx, r11d
ror r11d, 0xb
xor ebx, r9d
and ecx, r8d
xor ecx, eax
and ebx, r10d
xor ebx, ecx
mov ecx, r8d
and ecx, r9d
xor ecx, edx
xor ecx, ebp
mov ebp, esi
and ecx, esi
xor ebx, ecx
mov ecx, esi
ror ebx, 7
xor ecx, r8d
add ebx, edi
mov edi, dword [r14 + 0x20]
or ebp, ebx
lea edi, [rdi + r11 + 0x69c8f04a]
mov r11d, r9d
not r11d
and r11d, eax
xor r11d, ecx
mov ecx, esi
xor r11d, r10d
and ecx, r9d
xor ecx, r8d
and r11d, ebx
xor r11d, ecx
mov ecx, r9d
and ecx, r10d
xor ecx, eax
xor ecx, ebp
mov ebp, edx
and ecx, edx
xor r11d, ecx
mov ecx, r10d
ror r11d, 7
not ecx
add r11d, edi
mov edi, dword [r14 + 0x6c]
ror esi, 0xb
and ecx, r8d
or ebp, r11d
lea edi, [rdi + rsi - 0x61e064a2]
mov esi, edx
xor esi, r9d
xor ecx, esi
mov esi, edx
ror edx, 0xb
xor ecx, ebx
and esi, r10d
xor esi, r9d
and ecx, r11d
xor ecx, esi
mov esi, r10d
and esi, ebx
xor esi, r8d
xor esi, ebp
mov ebp, eax
and esi, eax
xor ecx, esi
mov esi, eax
ror ecx, 7
xor esi, r10d
add ecx, edi
mov edi, dword [r14 + 0x30]
or ebp, ecx
lea edi, [rdi + rdx + 0x21c66842]
mov edx, ebx
not edx
and edx, r9d
xor edx, esi
mov esi, eax
xor edx, r11d
and esi, ebx
xor esi, r10d
and edx, ecx
xor edx, esi
mov esi, ebx
and esi, r11d
xor esi, r9d
xor esi, ebp
mov ebp, r8d
and esi, r8d
xor edx, esi
mov esi, r8d
ror edx, 7
ror eax, 0xb
xor esi, ebx
add edx, edi
mov edi, dword [r14 + 0x24]
or ebp, edx
lea edi, [rdi + rax - 0x9169366]
mov eax, r11d
not eax
and eax, r10d
xor eax, esi
mov esi, r8d
ror r8d, 0xb
xor eax, ecx
and esi, r11d
xor esi, ebx
and eax, edx
xor eax, esi
mov esi, r11d
and esi, ecx
xor esi, r10d
xor esi, ebp
mov ebp, r9d
and esi, r9d
xor eax, esi
mov esi, r9d
ror eax, 7
xor esi, r11d
add eax, edi
mov edi, dword [r14 + 4]
or ebp, eax
lea edi, [rdi + r8 + 0x670c9c61]
mov r8d, ecx
not r8d
and r8d, ebx
xor r8d, esi
mov esi, r9d
xor r8d, edx
and esi, ecx
xor esi, r11d
and r8d, eax
xor r8d, esi
mov esi, ecx
and esi, edx
xor esi, ebx
xor esi, ebp
mov ebp, r10d
and esi, r10d
ror r9d, 0xb
xor r8d, esi
mov esi, r10d
ror r8d, 7
xor esi, ecx
add r8d, edi
mov edi, dword [r14 + 0x74]
or ebp, r8d
lea edi, [rdi + r9 - 0x542c7710]
mov r9d, edx
not r9d
and r9d, r11d
xor r9d, esi
mov esi, r10d
ror r10d, 0xb
xor r9d, eax
and esi, edx
xor esi, ecx
and r9d, r8d
xor r9d, esi
mov esi, edx
and esi, eax
xor esi, r11d
xor esi, ebp
mov ebp, ebx
and esi, ebx
xor r9d, esi
mov esi, ebx
ror r9d, 7
xor esi, edx
add r9d, edi
mov edi, dword [r14 + 0x14]
lea edi, [rdi + r10 + 0x6a51a0d2]
mov r10d, eax
not r10d
and r10d, ecx
xor r10d, esi
mov esi, ebx
and esi, eax
xor r10d, r8d
xor esi, edx
and r10d, r9d
xor r10d, esi
mov esi, eax
and esi, r8d
xor esi, ecx
or ebp, r9d
ror ebx, 0xb
xor esi, ebp
mov ebp, r11d
and esi, r11d
xor r10d, esi
mov esi, r11d
ror r10d, 7
xor esi, eax
add r10d, edi
mov edi, dword [r14 + 0x3c]
or ebp, r10d
lea edi, [rdi + rbx - 0x27abd098]
mov ebx, r8d
not ebx
and ebx, edx
xor ebx, esi
mov esi, r11d
ror r11d, 0xb
xor ebx, r9d
and esi, r8d
xor esi, eax
and ebx, r10d
xor ebx, esi
mov esi, r8d
and esi, r9d
xor esi, edx
xor esi, ebp
mov ebp, ecx
and esi, ecx
xor ebx, esi
mov esi, ecx
ror ebx, 7
xor esi, r8d
add ebx, edi
mov edi, dword [r14 + 0x44]
lea edi, [rdi + r11 - 0x69f058d8]
mov r11d, r9d
not r11d
and r11d, eax
xor r11d, esi
mov esi, ecx
xor r11d, r10d
and esi, r9d
and r11d, ebx
xor esi, r8d
xor r11d, esi
mov esi, r9d
and esi, r10d
or ebp, ebx
ror ecx, 0xb
xor esi, eax
xor esi, ebp
mov ebp, edx
and esi, edx
xor r11d, esi
mov esi, edx
ror r11d, 7
xor esi, r9d
add r11d, edi
mov edi, dword [r14 + 0x28]
or ebp, r11d
lea edi, [rdi + rcx - 0x54aecc5d]
mov ecx, r10d
not ecx
and ecx, r8d
xor ecx, esi
mov esi, edx
ror edx, 0xb
xor ecx, ebx
and esi, r10d
xor esi, r9d
and ecx, r11d
xor ecx, esi
mov esi, r10d
and esi, ebx
xor esi, r8d
xor esi, ebp
mov ebp, eax
and esi, eax
xor ecx, esi
mov esi, eax
ror ecx, 7
xor esi, r10d
add ecx, edi
mov edi, dword [r14 + 0x40]
lea edi, [rdi + rdx + 0x6eef0b6c]
mov edx, ebx
not edx
and edx, r9d
xor edx, esi
mov esi, eax
xor edx, r11d
and esi, ebx
and edx, ecx
xor esi, r10d
or ebp, ecx
ror eax, 0xb
xor edx, esi
mov esi, ebx
and esi, r11d
xor esi, r9d
xor esi, ebp
mov ebp, r8d
and esi, r8d
xor edx, esi
mov esi, dword [r14 + 0x34]
ror edx, 7
add edx, edi
mov edi, dword [r14 + 0x80]
or ebp, edx
lea esi, [rdi + rsi + 0x137a3be4]
mov edi, r11d
add eax, esi
not edi
mov esi, r8d
xor esi, ebx
and edi, r10d
xor edi, esi
mov esi, r8d
xor edi, ecx
and esi, r11d
xor esi, ebx
and edi, edx
xor edi, esi
mov esi, r11d
and esi, ecx
xor esi, r10d
xor esi, ebp
and esi, r9d
xor edi, esi
ror edi, 7
add edi, eax
mov eax, dword [r14 + 0x84]
mov dword [r14 + 0x80], edi
add eax, edx
mov dword [r14 + 0x84], eax
mov eax, dword [r14 + 0x88]
add eax, ecx
mov dword [r14 + 0x88], eax
mov eax, dword [r14 + 0x8c]
add eax, r11d
mov dword [r14 + 0x8c], eax
mov eax, dword [r14 + 0x90]
add eax, ebx
mov dword [r14 + 0x90], eax
mov eax, dword [r14 + 0x94]
add eax, r10d
xor ebx, ebx
mov dword [r14 + 0x94], eax
mov eax, dword [r14 + 0x98]
add eax, r9d
mov dword [r14 + 0x98], eax
mov eax, dword [r14 + 0x9c]
add eax, r8d
mov dword [r14 + 0x9c], eax
mov rax, qword [rsp + 0x20]
add qword [r14 + 0xa8], rax
cmp qword [rsp + 0x90], 0
jne 0x1400a76b5
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, ebx
mov r8, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
add rcx, r14
call sub.msvcrt.dll_memcpy
add ebx, dword [rsp + 0x90]
cmp ebx, 0x80
je 0x1400a95ca
mov rdi, qword [rsp + 0x90]
add qword [r14 + 0xa8], rdi
jmp 0x1400a9579
mov rax, qword [rsp + 0x90]
add qword [rsp + 0x88], rax
mov qword [rsp + 0x20], rax
xor eax, eax
mov qword [rsp + 0x90], rax
jmp 0x1400a76f7