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

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