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

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf8
mov rdi, qword [rcx + 0x40]
mov eax, 0x40
sub rax, rdi
mov rsi, r8
mov r14, rdx
mov rbp, rcx
cmp r8, rax
jae 0x7ff7ed6ab41a
add rcx, rdi
call fcn.7ff7ed6b67f0
add rdi, rsi
jmp 0x7ff7ed6ac9c8
mov eax, dword [rcx + 0x48]
mov r9d, dword [rbp + 0x90]
mov edx, dword [rbp + 0x84]
mov r13d, dword [rcx + 0x78]
mov r8d, dword [rbp + 0x8c]
mov dword [rsp + 0x88], r9d
mov r9d, dword [rbp + 0x94]
mov dword [rsp + 0x5c], r9d
mov r9d, dword [rbp + 0x98]
mov dword [rsp + 0x58], r9d
mov r9d, dword [rbp + 0x9c]
mov dword [rsp + 0x7c], r9d
mov r9d, dword [rbp + 0xa0]
mov dword [rsp + 0x54], r9d
mov r9d, dword [rbp + 0xa4]
mov dword [rsp + 0x20], r9d
mov r9d, dword [rbp + 0xa8]
mov dword [rsp + 0x24], r9d
mov r9d, dword [rbp + 0xac]
mov dword [rsp + 0x28], r9d
mov r9d, dword [rbp + 0xb0]
mov dword [rsp + 0x2c], r9d
mov r9d, dword [rbp + 0xb4]
mov dword [rsp + 0x30], r9d
mov r9d, dword [rbp + 0xb8]
mov dword [rsp + 0x70], eax
mov eax, dword [rcx + 0x4c]
mov dword [rsp + 0xc4], r9d
mov r9d, dword [rbp + 0xbc]
mov dword [rsp + 0x74], eax
mov eax, dword [rcx + 0x50]
mov dword [rsp + 0xb0], r9d
mov r9d, dword [rbp + 0xc0]
mov dword [rsp + 0x68], eax
mov eax, dword [rcx + 0x54]
mov dword [rsp + 0xac], r9d
mov r9d, dword [rbp + 0xc4]
mov dword [rsp + 0x78], eax
mov eax, dword [rcx + 0x58]
mov dword [rsp + 0x158], r9d
mov r9d, dword [rbp + 0xc8]
mov dword [rsp + 0xcc], eax
mov eax, dword [rcx + 0x5c]
mov dword [rsp + 0x90], r9d
mov r9d, dword [rbp + 0xcc]
mov dword [rsp + 0x84], eax
mov eax, dword [rcx + 0x60]
mov dword [rsp + 0x94], r9d
mov r9d, dword [rbp + 0xd0]
mov dword [rsp + 0x50], eax
mov eax, dword [rcx + 0x64]
mov dword [rsp + 0x8c], r9d
mov r9d, dword [rbp + 0xd4]
mov dword [rsp + 0xbc], eax
mov eax, dword [rcx + 0x68]
mov dword [rsp + 0xa8], r9d
mov r9d, dword [rbp + 0xd8]
mov dword [rsp + 0x6c], eax
mov eax, dword [rcx + 0x6c]
mov dword [rsp + 0xb4], r9d
mov r9d, dword [rbp + 0xdc]
mov dword [rsp + 0x64], eax
mov eax, dword [rcx + 0x70]
mov dword [rsp + 0xc8], r9d
mov r9d, dword [rbp + 0xe0]
mov dword [rsp + 0x80], eax
mov eax, dword [rcx + 0x74]
mov dword [rsp + 0xa4], r9d
mov r9d, dword [rbp + 0xe4]
mov dword [rsp + 0x48], eax
mov eax, dword [rcx + 0x7c]
mov ecx, dword [rcx + 0x80]
mov dword [rsp + 0x4c], edx
mov edx, dword [rbp + 0x88]
mov dword [rsp + 0xa0], r9d
mov r9d, dword [rbp + 0xe8]
mov dword [rsp + 0x34], r13d
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], ecx
mov dword [rsp + 0x40], edx
mov dword [rsp + 0x44], r8d
mov r12d, dword [rbp + 0xfc]
mov r15d, dword [rbp + 0xf8]
mov dword [rsp + 0x9c], r9d
mov r9d, dword [rbp + 0xec]
mov dword [rsp + 0x98], r9d
mov r9d, dword [rbp + 0xf0]
mov dword [rsp + 0xb8], r9d
mov r9d, dword [rbp + 0xf4]
mov dword [rsp + 0xc0], r9d
mov dword [rsp + 0xd8], r12d
mov dword [rsp + 0xdc], r15d
test rsi, rsi
je 0x7ff7ed6ac7e9
mov eax, 0x40
lea rcx, [rdi + rbp]
sub rax, rdi
mov rbx, rsi
cmp rax, rsi
mov rdx, r14
cmovbe rbx, rax
mov r8, rbx
call fcn.7ff7ed6b67f0
add r14, rbx
sub rsi, rbx
add rdi, rbx
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], rsi
cmp rdi, 0x40
jne 0x7ff7ed6ac7ca
mov eax, dword [rsp + 0x38]
add eax, dword [rbp + 4]
mov edx, dword [rsp + 0x28]
add edx, dword [rbp + 0x34]
mov ecx, dword [rsp + 0x5c]
add ecx, dword [rbp + 0x1c]
mov r9d, dword [rsp + 0x58]
add r9d, dword [rbp + 0x20]
mov r15d, dword [rsp + 0x24]
mov r8d, r9d
add r15d, dword [rbp + 0x30]
mov r14d, dword [rsp + 0x20]
mov r12d, r15d
add r14d, dword [rbp + 0x2c]
mov r10d, dword [rsp + 0x34]
add r10d, dword [rbp]
mov r11d, dword [rsp + 0x7c]
add r11d, dword [rbp + 0x24]
mov ebx, dword [rsp + 0x54]
mov edi, r11d
add ebx, dword [rbp + 0x28]
mov dword [rsp + 0x38], eax
mov esi, ebx
mov eax, dword [rsp + 0x3c]
add eax, dword [rbp + 8]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x4c]
add eax, dword [rbp + 0xc]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x40]
add eax, dword [rbp + 0x10]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x44]
add eax, dword [rbp + 0x14]
mov dword [rsp + 0x28], edx
mov edx, dword [rsp + 0x2c]
add edx, dword [rbp + 0x38]
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x88]
add eax, dword [rbp + 0x18]
mov dword [rsp + 0x2c], edx
mov r13d, eax
mov edx, dword [rsp + 0x30]
add edx, dword [rbp + 0x3c]
mov ebp, r14d
shl eax, 0x11
shl r14d, 0x11
mov dword [rsp + 0x30], edx
mov edx, ecx
shl r11d, 0x11
shr r13d, 0xf
or r13d, eax
shr ebp, 0xf
mov eax, dword [rsp + 0x28]
or ebp, r14d
mov r14d, eax
shr edi, 0xf
shl eax, 0x11
or edi, r11d
shr r14d, 0xf
or r14d, eax
shr edx, 0xf
mov eax, dword [rsp + 0x2c]
mov r11d, eax
shl ecx, 0x11
shr r8d, 0xf
or edx, ecx
shl r9d, 0x11
shr esi, 0xf
or r8d, r9d
shl ebx, 0x11
shr r12d, 0xf
or esi, ebx
shl r15d, 0x11
or r12d, r15d
mov dword [rsp + 0x5c], edi
shr r11d, 0xf
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x88], r12d
mov dword [rsp + 0x24], r14d
mov r15, qword [rsp + 0x140]
shl eax, 0x11
or r11d, eax
ror r10d, 0xf
mov eax, dword [rsp + 0x30]
mov ebx, eax
shl eax, 0x11
ror r10d, 0x1f
shr ebx, 0xf
or ebx, eax
mov dword [rsp + 0x20], r11d
mov eax, dword [rsp + 0x48]
ror eax, 0x11
mov dword [rsp + 0x54], ebx
lea ecx, [rax + rax*4]
mov eax, r13d
xor ecx, dword [rsp + 0xd8]
not eax
xor ecx, dword [rsp + 0xb4]
and eax, edi
xor ecx, dword [rsp + 0x70]
lea r9d, [rcx + rcx*2]
xor r9d, eax
xor r9d, dword [r15]
xor r9d, r14d
xor r10d, r9d
mov eax, r10d
mov dword [rsp + 0x34], r10d
not eax
mov dword [rsp + 0x30], eax
mov eax, r9d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, edx
xor ecx, dword [rsp + 0xdc]
not eax
xor ecx, dword [rsp + 0xa8]
and eax, esi
xor ecx, dword [rsp + 0x74]
lea r10d, [rcx + rcx*2]
xor r10d, eax
mov eax, dword [rsp + 0x38]
xor r10d, dword [r15 + 4]
ror eax, 0xf
xor r10d, r11d
ror eax, 0x1f
xor eax, r10d
mov dword [rsp + 0x38], eax
not eax
mov dword [rsp + 0x2c], eax
mov eax, r10d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, r8d
xor ecx, dword [rsp + 0x8c]
not eax
xor ecx, dword [rsp + 0x68]
and eax, ebp
lea r11d, [rcx + rcx*2]
xor r11d, eax
mov eax, dword [rsp + 0x3c]
xor r11d, dword [r15 + 8]
ror eax, 0xf
xor r11d, ebx
ror eax, 0x1f
xor eax, r11d
mov r15d, eax
mov dword [rsp + 0x3c], eax
mov eax, r11d
not r15d
ror eax, 0x11
mov dword [rsp + 0x7c], r15d
lea ecx, [rax + rax*4]
mov eax, edi
xor ecx, dword [rsp + 0x94]
not eax
xor ecx, dword [rsp + 0x78]
and eax, r12d
lea ebx, [rcx + rcx*2]
mov rcx, qword [rsp + 0x140]
xor ebx, eax
xor ebx, dword [rcx + 0xc]
mov eax, dword [rsp + 0x4c]
ror eax, 0xf
ror eax, 0x1f
xor ebx, dword [rsp + 0x30]
xor eax, ebx
ror r13d, 0x1f
mov dword [rsp + 0x4c], eax
not eax
mov dword [rsp + 0x28], eax
mov eax, ebx
ror eax, 0x11
ror edx, 0x1f
lea ecx, [rax + rax*4]
mov eax, esi
xor ecx, dword [rsp + 0x90]
not eax
xor ecx, dword [rsp + 0xcc]
and eax, r14d
lea edi, [rcx + rcx*2]
xor edi, eax
mov rax, qword [rsp + 0x140]
xor edi, dword [rax + 0x10]
xor edi, dword [rsp + 0x2c]
mov eax, dword [rsp + 0x40]
ror eax, 0xf
ror eax, 0x1f
xor eax, edi
mov dword [rsp + 0x40], eax
not eax
mov dword [rsp + 0x78], eax
mov eax, edi
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, ebp
xor ecx, dword [rsp + 0x158]
not eax
and eax, dword [rsp + 0x20]
xor ecx, dword [rsp + 0x84]
mov rbp, qword [rsp + 0x140]
lea r14d, [rcx + rcx*2]
xor r14d, eax
mov eax, dword [rsp + 0x44]
xor r14d, dword [rbp + 0x14]
ror eax, 0xf
xor r14d, r15d
ror eax, 0x1f
xor eax, r14d
mov esi, eax
mov dword [rsp + 0x44], eax
mov eax, r14d
not esi
ror eax, 0x11
mov dword [rsp + 0x84], esi
lea ecx, [rax + rax*4]
mov eax, r12d
xor ecx, dword [rsp + 0xac]
not eax
and eax, dword [rsp + 0x54]
xor ecx, dword [rsp + 0x50]
lea r15d, [rcx + rcx*2]
xor r15d, eax
xor r15d, dword [rbp + 0x18]
xor r15d, dword [rsp + 0x28]
xor r13d, r15d
mov eax, r13d
not eax
mov dword [rsp + 0x50], eax
mov eax, r15d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x24]
xor ecx, dword [rsp + 0xb0]
not eax
xor ecx, dword [rsp + 0xbc]
and eax, dword [rsp + 0x30]
lea r12d, [rcx + rcx*2]
xor r12d, eax
xor r12d, dword [rbp + 0x1c]
xor r12d, dword [rsp + 0x78]
xor edx, r12d
mov eax, edx
ror r8d, 0x1f
not eax
mov dword [rsp + 0xd0], edx
mov dword [rsp + 0x68], eax
mov eax, r12d
ror eax, 0x11
mov rdx, qword [rsp + 0x140]
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x20]
xor ecx, dword [rsp + 0xc4]
not eax
and eax, dword [rsp + 0x2c]
xor ecx, dword [rsp + 0x6c]
lea ebp, [rcx + rcx*2]
xor ebp, eax
xor ebp, dword [rdx + 0x20]
xor ebp, esi
xor r8d, ebp
mov eax, r8d
mov dword [rsp + 0xd4], r8d
not eax
mov dword [rsp + 0x74], eax
mov eax, ebp
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x54]
xor ecx, dword [rsp + 0xc0]
not eax
and eax, dword [rsp + 0x7c]
xor ecx, dword [rsp + 0x64]
lea esi, [rcx + rcx*2]
xor esi, eax
mov eax, dword [rsp + 0x5c]
xor esi, dword [rdx + 0x24]
xor esi, dword [rsp + 0x50]
ror eax, 0x1f
xor eax, esi
mov dword [rsp + 0x5c], eax
not eax
mov dword [rsp + 0x70], eax
mov eax, esi
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x34]
and eax, dword [rsp + 0x28]
xor ecx, dword [rsp + 0xb8]
xor ecx, dword [rsp + 0x80]
lea edx, [rcx + rcx*2]
xor edx, eax
mov rax, qword [rsp + 0x140]
xor edx, dword [rax + 0x28]
mov eax, dword [rsp + 0x58]
xor edx, dword [rsp + 0x68]
ror eax, 0x1f
xor eax, edx
mov dword [rsp + 0x58], eax
not eax
mov dword [rsp + 0x34], eax
mov eax, edx
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x38]
and eax, dword [rsp + 0x78]
xor ecx, dword [rsp + 0x98]
xor ecx, dword [rsp + 0x48]
lea r8d, [rcx + rcx*2]
xor r8d, eax
mov rax, qword [rsp + 0x140]
xor r8d, dword [rax + 0x2c]
xor r8d, dword [rsp + 0x74]
mov eax, dword [rsp + 0x60]
ror eax, 0x1f
xor eax, r8d
mov dword [rsp + 0x60], eax
not eax
mov dword [rsp + 0x48], eax
mov eax, r8d
ror eax, 0x11
lea ecx, [rax + rax*4]
xor ecx, dword [rsp + 0x9c]
mov rax, qword [rsp + 0x140]
xor ecx, r9d
and r13d, dword [rsp + 0x70]
lea r9d, [rcx + rcx*2]
mov ecx, dword [rsp + 0x3c]
and ecx, dword [rsp + 0x84]
xor r9d, ecx
xor r9d, dword [rax + 0x30]
mov eax, dword [rsp + 0x88]
xor r9d, dword [rsp + 0x70]
ror eax, 0x1f
xor eax, r9d
mov dword [rsp + 0x88], eax
not eax
mov dword [rsp + 0x3c], eax
mov eax, r9d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x50]
and eax, dword [rsp + 0x4c]
xor ecx, dword [rsp + 0xa0]
xor ecx, r10d
lea r10d, [rcx + rcx*2]
xor r10d, eax
mov rax, qword [rsp + 0x140]
xor r10d, dword [rax + 0x34]
mov eax, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x34]
ror eax, 0x1f
xor eax, r10d
mov dword [rsp + 0x24], eax
not eax
mov dword [rsp + 0x4c], eax
mov eax, r10d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x40]
and eax, dword [rsp + 0x68]
xor ecx, dword [rsp + 0xa4]
xor ecx, r11d
lea r11d, [rcx + rcx*2]
xor r11d, eax
mov rax, qword [rsp + 0x140]
xor r11d, dword [rax + 0x38]
mov eax, dword [rsp + 0x20]
xor r11d, dword [rsp + 0x48]
ror eax, 0x1f
xor eax, r11d
mov dword [rsp + 0x20], eax
not eax
mov dword [rsp + 0x40], eax
mov eax, r11d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x44]
and eax, dword [rsp + 0x74]
xor ecx, dword [rsp + 0xc8]
xor ecx, ebx
lea ebx, [rcx + rcx*2]
xor ebx, eax
mov rax, qword [rsp + 0x140]
xor ebx, dword [rax + 0x3c]
mov eax, dword [rsp + 0x54]
xor ebx, dword [rsp + 0x3c]
ror eax, 0x1f
xor eax, ebx
mov dword [rsp + 0x54], eax
not eax
mov dword [rsp + 0x44], eax
mov eax, ebx
ror eax, 0x11
lea ecx, [rax + rax*4]
mov rax, qword [rsp + 0x140]
xor ecx, dword [rsp + 0xb4]
xor ecx, edi
lea edi, [rcx + rcx*2]
xor edi, r13d
xor edi, dword [rax]
xor edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x30]
ror eax, 0x1f
xor eax, edi
mov r13d, eax
mov dword [rsp + 0x30], eax
not r13d
mov eax, edi
ror eax, 0x11
mov dword [rsp + 0x80], r13d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0xd0]
and eax, dword [rsp + 0x34]
xor ecx, dword [rsp + 0xa8]
xor ecx, r14d
lea r14d, [rcx + rcx*2]
xor r14d, eax
mov rax, qword [rsp + 0x140]
xor r14d, dword [rax + 4]
mov eax, dword [rsp + 0x2c]
xor r14d, dword [rsp + 0x40]
ror eax, 0x1f
xor eax, r14d
mov dword [rsp + 0x2c], eax
not eax
mov dword [rsp + 0x38], eax
mov eax, r14d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0xd4]
and eax, dword [rsp + 0x48]
xor ecx, dword [rsp + 0x8c]
xor ecx, r15d
lea r15d, [rcx + rcx*2]
xor r15d, eax
mov rax, qword [rsp + 0x140]
xor r15d, dword [rax + 8]
mov eax, dword [rsp + 0x7c]
xor r15d, dword [rsp + 0x44]
ror eax, 0x1f
xor eax, r15d
mov dword [rsp + 0x7c], eax
not eax
mov dword [rsp + 0x6c], eax
mov eax, r15d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x5c]
and eax, dword [rsp + 0x3c]
xor ecx, dword [rsp + 0x94]
xor ecx, r12d
lea r12d, [rcx + rcx*2]
xor r12d, eax
mov rax, qword [rsp + 0x140]
xor r12d, dword [rax + 0xc]
mov eax, dword [rsp + 0x28]
xor r12d, r13d
ror eax, 0x1f
xor eax, r12d
mov dword [rsp + 0x28], eax
not eax
mov dword [rsp + 0x64], eax
mov eax, r12d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x58]
and eax, dword [rsp + 0x4c]
xor ecx, dword [rsp + 0x90]
xor ecx, ebp
lea r13d, [rcx + rcx*2]
xor r13d, eax
mov rax, qword [rsp + 0x140]
xor r13d, dword [rax + 0x10]
xor r13d, dword [rsp + 0x38]
mov eax, dword [rsp + 0x78]
ror eax, 0x1f
xor eax, r13d
mov ebp, eax
mov dword [rsp + 0x78], eax
mov eax, r13d
not ebp
ror eax, 0x11
mov dword [rsp + 0x58], ebp
lea ecx, [rax + rax*4]
xor ecx, dword [rsp + 0x158]
xor ecx, esi
lea eax, [rcx + rcx*2]
mov ecx, dword [rsp + 0x60]
and ecx, dword [rsp + 0x40]
xor eax, ecx
mov rcx, qword [rsp + 0x140]
xor eax, dword [rcx + 0x14]
xor eax, dword [rsp + 0x6c]
mov ecx, dword [rsp + 0x84]
ror ecx, 0x1f
xor ecx, eax
mov dword [rsp + 0xd0], eax
mov esi, ecx
mov dword [rsp + 0x84], ecx
ror eax, 0x11
not esi
mov dword [rsp + 0x5c], esi
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x88]
xor ecx, dword [rsp + 0xac]
and eax, dword [rsp + 0x44]
xor ecx, edx
lea edx, [rcx + rcx*2]
xor edx, eax
mov rax, qword [rsp + 0x140]
xor edx, dword [rax + 0x18]
xor edx, dword [rsp + 0x64]
mov eax, dword [rsp + 0x50]
ror eax, 0x1f
xor eax, edx
mov dword [rsp + 0x50], eax
not eax
mov dword [rsp + 0x60], eax
mov eax, edx
ror eax, 0x11
lea ecx, [rax + rax*4]
xor ecx, dword [rsp + 0xb0]
xor ecx, r8d
mov r8d, dword [rsp + 0x24]
and r8d, dword [rsp + 0x80]
lea eax, [rcx + rcx*2]
mov ecx, dword [rsp + 0x68]
ror ecx, 0x1f
xor eax, r8d
mov r8, qword [rsp + 0x140]
xor eax, dword [r8 + 0x1c]
xor eax, ebp
xor ecx, eax
mov dword [rsp + 0xbc], eax
mov ebp, ecx
mov dword [rsp + 0x68], ecx
ror eax, 0x11
not ebp
mov dword [rsp + 0x24], ebp
lea ecx, [rax + rax*4]
xor ecx, dword [rsp + 0xc4]
xor ecx, r9d
lea eax, [rcx + rcx*2]
mov ecx, dword [rsp + 0x20]
and ecx, dword [rsp + 0x38]
xor eax, ecx
mov ecx, dword [rsp + 0x74]
xor eax, dword [r8 + 0x20]
ror ecx, 0x1f
xor eax, esi
xor ecx, eax
mov dword [rsp + 0xe0], eax
mov r8d, ecx
mov dword [rsp + 0x74], ecx
ror eax, 0x11
not r8d
mov dword [rsp + 0x20], r8d
lea ecx, [rax + rax*4]
xor ecx, dword [rsp + 0xc0]
xor ecx, r10d
lea eax, [rcx + rcx*2]
mov ecx, dword [rsp + 0x54]
and ecx, dword [rsp + 0x6c]
xor eax, ecx
mov rcx, qword [rsp + 0x140]
xor eax, dword [rcx + 0x24]
xor eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x70]
ror ecx, 0x1f
xor ecx, eax
mov dword [rsp + 0xe4], eax
mov r10d, ecx
ror eax, 0x11
mov dword [rsp + 0x70], ecx
not r10d
mov dword [rsp + 0xcc], r10d
lea ecx, [rax + rax*4]
xor ecx, dword [rsp + 0xb8]
xor ecx, r11d
mov r11, qword [rsp + 0x140]
lea eax, [rcx + rcx*2]
mov ecx, dword [rsp + 0x30]
and ecx, dword [rsp + 0x64]
xor eax, ecx
mov ecx, dword [rsp + 0x34]
xor eax, dword [r11 + 0x28]
xor eax, ebp
ror ecx, 0x1f
xor ecx, eax
mov dword [rsp + 0xe8], eax
ror eax, 0x11
mov r9d, ecx
mov dword [rsp + 0x34], ecx
not r9d
mov dword [rsp + 0x88], r9d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x48]
xor ecx, dword [rsp + 0x98]
ror eax, 0x1f
xor ecx, ebx
lea ebp, [rcx + rcx*2]
mov ecx, dword [rsp + 0x2c]
and ecx, dword [rsp + 0x58]
xor ebp, ecx
xor ebp, dword [r11 + 0x2c]
xor ebp, r8d
xor eax, ebp
mov r8d, eax
mov dword [rsp + 0x48], eax
mov eax, ebp
not r8d
ror eax, 0x11
mov dword [rsp + 0x2c], r8d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x3c]
xor ecx, dword [rsp + 0x9c]
xor ecx, edi
ror eax, 0x1f
lea esi, [rcx + rcx*2]
mov ecx, dword [rsp + 0x7c]
and ecx, dword [rsp + 0x5c]
xor esi, ecx
xor esi, dword [r11 + 0x30]
xor esi, r10d
xor eax, esi
mov r10d, eax
mov dword [rsp + 0x3c], eax
mov eax, esi
not r10d
ror eax, 0x11
mov dword [rsp + 0x7c], r10d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x28]
and eax, dword [rsp + 0x60]
xor ecx, dword [rsp + 0xa0]
xor ecx, r14d
lea edi, [rcx + rcx*2]
xor edi, eax
mov eax, dword [rsp + 0x4c]
xor edi, dword [r11 + 0x34]
xor edi, r9d
ror eax, 0x1f
xor eax, edi
mov r9d, eax
mov dword [rsp + 0x4c], eax
not r9d
mov r14, qword [rsp + 0x140]
mov eax, edi
ror eax, 0x11
mov dword [rsp + 0x28], r9d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x78]
and eax, dword [rsp + 0x24]
xor ecx, dword [rsp + 0xa4]
xor ecx, r15d
lea ebx, [rcx + rcx*2]
xor ebx, eax
mov eax, dword [rsp + 0x40]
xor ebx, dword [r11 + 0x38]
ror eax, 0x1f
xor ebx, r8d
xor eax, ebx
mov r8d, eax
mov dword [rsp + 0x40], eax
mov eax, ebx
not r8d
ror eax, 0x11
mov dword [rsp + 0x30], r8d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x84]
and eax, dword [rsp + 0x20]
xor ecx, dword [rsp + 0xc8]
xor ecx, r12d
lea r11d, [rcx + rcx*2]
xor r11d, eax
mov eax, dword [rsp + 0x44]
xor r11d, dword [r14 + 0x3c]
ror eax, 0x1f
xor r11d, r10d
xor eax, r11d
mov r12d, eax
mov dword [rsp + 0x44], eax
mov eax, r11d
not r12d
ror eax, 0x11
mov dword [rsp + 0x54], r12d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x50]
and eax, dword [rsp + 0xcc]
xor ecx, dword [rsp + 0xb4]
xor ecx, r13d
lea r10d, [rcx + rcx*2]
xor r10d, eax
mov eax, dword [rsp + 0x80]
xor r10d, dword [r14]
ror eax, 0x1f
xor r10d, r9d
xor eax, r10d
mov r15d, eax
mov dword [rsp + 0x80], eax
mov eax, r10d
not r15d
ror eax, 0x11
mov dword [rsp + 0xd4], r15d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x68]
and eax, dword [rsp + 0x88]
xor ecx, dword [rsp + 0xa8]
xor ecx, dword [rsp + 0xd0]
lea r9d, [rcx + rcx*2]
xor r9d, eax
mov eax, dword [rsp + 0x38]
xor r9d, dword [r14 + 4]
ror eax, 0x1f
xor r9d, r8d
xor eax, r9d
mov r14d, eax
mov dword [rsp + 0x38], eax
mov eax, r9d
not r14d
ror eax, 0x11
mov dword [rsp + 0xd0], r14d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x74]
xor ecx, dword [rsp + 0x8c]
xor ecx, edx
lea r8d, [rcx + rcx*2]
and eax, dword [rsp + 0x2c]
xor r8d, eax
mov rax, qword [rsp + 0x140]
xor r8d, dword [rax + 8]
mov eax, dword [rsp + 0x6c]
xor r8d, r12d
ror eax, 0x1f
xor eax, r8d
mov r13d, eax
mov dword [rsp + 0x6c], eax
mov eax, r8d
not r13d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x70]
and eax, dword [rsp + 0x7c]
xor ecx, dword [rsp + 0x94]
xor ecx, dword [rsp + 0xbc]
lea edx, [rcx + rcx*2]
xor edx, eax
mov rax, qword [rsp + 0x140]
xor edx, dword [rax + 0xc]
mov eax, dword [rsp + 0x64]
xor edx, r15d
ror eax, 0x1f
xor eax, edx
mov r12d, eax
mov dword [rsp + 0x64], eax
mov eax, edx
not r12d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x34]
and eax, dword [rsp + 0x28]
xor ecx, dword [rsp + 0x90]
xor ecx, dword [rsp + 0xe0]
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x10]
mov eax, dword [rsp + 0x58]
xor ecx, r14d
ror eax, 0x1f
xor eax, ecx
mov dword [rsp + 0x70], ecx
mov r15d, eax
mov dword [rsp + 0x58], eax
mov eax, ecx
not r15d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x48]
xor ecx, dword [rsp + 0x158]
and eax, dword [rsp + 0x30]
xor ecx, dword [rsp + 0xe4]
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x14]
mov eax, dword [rsp + 0x5c]
xor ecx, r13d
ror eax, 0x1f
xor eax, ecx
mov dword [rsp + 0x74], ecx
mov r14d, eax
mov dword [rsp + 0x5c], eax
mov eax, ecx
not r14d
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x3c]
xor ecx, dword [rsp + 0xac]
xor ecx, dword [rsp + 0xe8]
and eax, dword [rsp + 0x54]
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x18]
mov eax, dword [rsp + 0x60]
xor ecx, r12d
mov dword [rsp + 0x68], ecx
ror eax, 0x1f
xor eax, ecx
not eax
mov dword [rsp + 0x60], eax
mov eax, ecx
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0xd4]
and eax, dword [rsp + 0x4c]
xor ecx, dword [rsp + 0xb0]
xor ecx, ebp
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x1c]
mov eax, dword [rsp + 0x24]
xor ecx, r15d
ror eax, 0x1f
xor eax, ecx
mov dword [rsp + 0x78], ecx
not eax
mov dword [rsp + 0x24], eax
mov eax, ecx
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x40]
xor ecx, dword [rsp + 0xc4]
and eax, dword [rsp + 0xd0]
xor ecx, esi
lea ebp, [rcx + rcx*2]
xor ebp, eax
mov rax, qword [rsp + 0x140]
xor ebp, dword [rax + 0x20]
mov eax, dword [rsp + 0x20]
xor ebp, r14d
ror eax, 0x1f
xor eax, ebp
not eax
mov dword [rsp + 0x20], eax
mov eax, ebp
ror eax, 0x11
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x44]
xor ecx, dword [rsp + 0xc0]
and eax, r13d
xor ecx, edi
mov edi, dword [rsp + 0xcc]
ror edi, 0x1f
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x24]
xor ecx, dword [rsp + 0x60]
mov eax, ecx
mov dword [rsp + 0x84], ecx
xor edi, ecx
ror eax, 0x11
not edi
lea ecx, [rax + rax*4]
mov rax, qword [rsp + 0x140]
xor ecx, dword [rsp + 0xb8]
xor ecx, ebx
lea ebx, [rcx + rcx*2]
mov ecx, dword [rsp + 0x80]
and ecx, r12d
xor ebx, ecx
xor ebx, dword [rax + 0x28]
xor ebx, dword [rsp + 0x24]
mov dword [rsp + 0x50], ebx
mov eax, dword [rsp + 0x50]
mov ebx, dword [rsp + 0x88]
ror ebx, 0x1f
xor ebx, eax
ror eax, 0x11
not ebx
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x38]
xor ecx, dword [rsp + 0x98]
xor ecx, r11d
and eax, r15d
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov r11d, dword [rsp + 0x2c]
mov rax, qword [rsp + 0x140]
mov esi, dword [rsp + 0xc8]
ror r11d, 0x1f
xor ecx, dword [rax + 0x2c]
xor ecx, dword [rsp + 0x20]
mov eax, ecx
mov dword [rsp + 0xbc], ecx
xor r11d, ecx
ror eax, 0x11
not r11d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x6c]
xor ecx, dword [rsp + 0x9c]
and eax, r14d
xor ecx, r10d
mov r10d, dword [rsp + 0x7c]
ror r10d, 0x1f
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x30]
xor ecx, edi
mov eax, ecx
mov dword [rsp + 0x6c], ecx
xor r10d, ecx
ror eax, 0x11
not r10d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x64]
xor ecx, dword [rsp + 0xa0]
and eax, dword [rsp + 0x60]
xor ecx, r9d
mov r9d, dword [rsp + 0x28]
ror r9d, 0x1f
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x34]
xor ecx, ebx
mov eax, ecx
mov dword [rsp + 0x64], ecx
xor r9d, ecx
ror eax, 0x11
not r9d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x58]
xor ecx, dword [rsp + 0xa4]
and eax, dword [rsp + 0x24]
xor ecx, r8d
mov r8d, dword [rsp + 0x30]
ror r8d, 0x1f
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x38]
xor ecx, r11d
mov eax, ecx
mov dword [rsp + 0x80], ecx
xor r8d, ecx
ror eax, 0x11
not r8d
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x5c]
and eax, dword [rsp + 0x20]
xor ecx, esi
xor ecx, edx
lea ecx, [rcx + rcx*2]
xor ecx, eax
mov rax, qword [rsp + 0x140]
xor ecx, dword [rax + 0x3c]
mov eax, dword [rsp + 0xa4]
xor ecx, r10d
add eax, dword [rsp + 0xb8]
mov dword [rsp + 0x48], ecx
mov ecx, dword [rsp + 0x54]
ror ecx, 0x1f
xor ecx, dword [rsp + 0x48]
add eax, dword [rsp + 0x8c]
not ecx
add dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x98]
add eax, esi
add eax, dword [rsp + 0x94]
add dword [rsp + 0x80], eax
mov eax, dword [rsp + 0xb4]
add eax, dword [rsp + 0x9c]
add eax, dword [rsp + 0x90]
add dword [rsp + 0x64], eax
mov eax, dword [rsp + 0xa8]
add eax, dword [rsp + 0xa0]
add eax, dword [rsp + 0x158]
add dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x8c]
add eax, dword [rsp + 0xa4]
add eax, dword [rsp + 0xac]
add dword [rsp + 0xbc], eax
mov eax, dword [rsp + 0x94]
add eax, esi
mov esi, dword [rsp + 0xd0]
add eax, dword [rsp + 0xb0]
add dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x90]
add eax, dword [rsp + 0xb4]
add eax, dword [rsp + 0xc4]
add dword [rsp + 0x84], eax
mov eax, dword [rsp + 0xa8]
add eax, dword [rsp + 0xc0]
add eax, dword [rsp + 0x158]
add ebp, eax
mov eax, dword [rsp + 0x8c]
add eax, dword [rsp + 0xb8]
add eax, dword [rsp + 0xac]
add dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x94]
add eax, dword [rsp + 0x98]
add eax, dword [rsp + 0xb0]
add dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x90]
add eax, dword [rsp + 0x9c]
mov dword [rsp + 0xcc], ebp
mov ebp, dword [rsp + 0xc4]
add eax, ebp
add dword [rsp + 0x74], eax
mov eax, dword [rsp + 0xa0]
add eax, dword [rsp + 0xc0]
add eax, dword [rsp + 0x158]
add dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x140]
sub ebp, dword [rax]
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x34], ebp
mov ebp, dword [rsp + 0xd4]
mov dword [rsp + 0xc4], ebp
mov rbp, qword [rsp + 0x140]
mov dword [rsp + 0xb0], esi
sub eax, dword [rbp + 4]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0xac]
sub eax, dword [rbp + 8]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x158]
sub eax, dword [rbp + 0xc]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x90]
sub eax, dword [rbp + 0x10]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x94]
sub eax, dword [rbp + 0x14]
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x8c]
sub eax, dword [rbp + 0x18]
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x8c], eax
mov eax, dword [rsp + 0xa8]
sub eax, dword [rbp + 0x1c]
mov dword [rsp + 0xac], r13d
mov dword [rsp + 0x158], r12d
mov dword [rsp + 0x90], r15d
mov dword [rsp + 0x94], r14d
mov r15d, dword [rsp + 0xdc]
mov edx, dword [rsp + 0x20]
mov r12d, dword [rsp + 0xd8]
mov rsi, qword [rsp + 0x150]
mov r14, qword [rsp + 0x148]
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0xa8], eax
mov eax, dword [rsp + 0xb4]
sub eax, dword [rbp + 0x20]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0xc8]
sub eax, dword [rbp + 0x24]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0xa4]
sub eax, dword [rbp + 0x28]
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0xa0]
sub eax, dword [rbp + 0x2c]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x9c]
sub eax, dword [rbp + 0x30]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x98]
sub eax, dword [rbp + 0x34]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xb8]
sub eax, dword [rbp + 0x38]
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0xc0]
sub eax, dword [rbp + 0x3c]
mov dword [rsp + 0x30], eax
add r12d, 1
lea eax, [r15 + 1]
mov dword [rsp + 0xc8], edi
cmovne eax, r15d
mov dword [rsp + 0xb4], edx
mov r15d, eax
mov dword [rsp + 0xdc], eax
mov dword [rsp + 0xa4], ebx
mov edi, 0
mov dword [rsp + 0xa0], r11d
mov dword [rsp + 0x9c], r10d
mov dword [rsp + 0x98], r9d
mov dword [rsp + 0xb8], r8d
mov dword [rsp + 0xc0], ecx
mov dword [rsp + 0xd8], r12d
test rsi, rsi
jne 0x7ff7ed6ab646
mov r13d, dword [rsp + 0x34]
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x3c]
mov edx, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x44]
mov r9d, dword [rsp + 0x70]
mov r10d, dword [rsp + 0x74]
mov r11d, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x78]
mov dword [rbp + 0x7c], eax
mov eax, dword [rsp + 0x88]
mov dword [rbp + 0x90], eax
mov eax, dword [rsp + 0x5c]
mov dword [rbp + 0x94], eax
mov eax, dword [rsp + 0x58]
mov dword [rbp + 0x98], eax
mov eax, dword [rsp + 0x7c]
mov dword [rbp + 0x9c], eax
mov eax, dword [rsp + 0x54]
mov dword [rbp + 0xa0], eax
mov eax, dword [rsp + 0x20]
mov dword [rbp + 0xa4], eax
mov eax, dword [rsp + 0x24]
mov dword [rbp + 0xa8], eax
mov eax, dword [rsp + 0x28]
mov dword [rbp + 0xac], eax
mov eax, dword [rsp + 0x2c]
mov dword [rbp + 0xb0], eax
mov eax, dword [rsp + 0x30]
mov dword [rbp + 0xb4], eax
mov eax, dword [rsp + 0xc4]
mov dword [rbp + 0xb8], eax
mov eax, dword [rsp + 0xb0]
mov dword [rbp + 0xbc], eax
mov eax, dword [rsp + 0xac]
mov dword [rbp + 0xc0], eax
mov eax, dword [rsp + 0x158]
mov dword [rbp + 0xc4], eax
mov eax, dword [rsp + 0x90]
mov dword [rbp + 0xc8], eax
mov eax, dword [rsp + 0x94]
mov dword [rbp + 0xcc], eax
mov eax, dword [rsp + 0x8c]
mov dword [rbp + 0xd0], eax
mov eax, dword [rsp + 0xa8]
mov dword [rbp + 0x48], r9d
mov r9d, dword [rsp + 0xcc]
mov dword [rbp + 0xd4], eax
mov eax, dword [rsp + 0xb4]
mov dword [rbp + 0x58], r9d
mov r9d, dword [rsp + 0x84]
mov dword [rbp + 0xd8], eax
mov eax, dword [rsp + 0xc8]
mov dword [rbp + 0x5c], r9d
mov r9d, dword [rsp + 0x50]
mov dword [rbp + 0xdc], eax
mov eax, dword [rsp + 0xa4]
mov dword [rbp + 0x60], r9d
mov r9d, dword [rsp + 0xbc]
mov dword [rbp + 0xe0], eax
mov eax, dword [rsp + 0xa0]
mov dword [rbp + 0x64], r9d
mov r9d, dword [rsp + 0x6c]
mov dword [rbp + 0xe4], eax
mov eax, dword [rsp + 0x9c]
mov dword [rbp + 0x68], r9d
mov r9d, dword [rsp + 0x64]
mov dword [rbp + 0xe8], eax
mov eax, dword [rsp + 0x98]
mov dword [rbp + 0x6c], r9d
mov r9d, dword [rsp + 0x80]
mov dword [rbp + 0xec], eax
mov eax, dword [rsp + 0xb8]
mov dword [rbp + 0x70], r9d
mov r9d, dword [rsp + 0x48]
mov dword [rbp + 0x80], ecx
mov ecx, dword [rsp + 0x4c]
mov dword [rbp + 0xf0], eax
mov dword [rbp + 0x4c], r10d
mov dword [rbp + 0x50], r11d
mov dword [rbp + 0x54], ebx
mov dword [rbp + 0x74], r9d
mov dword [rbp + 0x78], r13d
mov dword [rbp + 0x84], ecx
mov dword [rbp + 0x88], edx
mov dword [rbp + 0x8c], r8d
mov eax, dword [rsp + 0xc0]
mov dword [rbp + 0xf4], eax
mov dword [rbp + 0xfc], r12d
mov dword [rbp + 0xf8], r15d
mov qword [rbp + 0x40], rdi
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
jmp 0x7ff7ed6ab3d8