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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
mov eax, dword [rdx]
xor r14d, r14d
mov rbp, rdx
mov r15, rcx
mov r9d, r14d
imul rax, rax
mov dword [rcx], eax
mov r11d, dword [rdx + 4]
mov r8, rax
mov eax, dword [rdx]
mov ecx, r14d
shr r8, 0x20
imul r11, rax
mov rdi, r11
lea edx, [r8 + r11*2]
shr rdi, 0x20
cmp edx, r8d
mov dword [r15 + 4], edx
mov r10d, dword [rbp + 8]
setb cl
mov r8d, dword [rbp + 4]
shr r11d, 0x1f
lea eax, [rdi + rdi]
shr edi, 0x1f
or r11d, eax
mov eax, dword [rbp]
add r11d, ecx
cmp r11d, ecx
mov ecx, r14d
adc edi, r14d
imul r10, rax
mov rbx, r10
lea edx, [r11 + r10*2]
shr rbx, 0x20
cmp edx, r11d
lea eax, [rbx + rbx]
mov r11d, r14d
setb r9b
shr r10d, 0x1f
or r10d, eax
mov eax, edx
add r10d, edi
cmp r10d, edi
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov dword [r15 + 8], r8d
mov edi, dword [rbp]
mov rax, r8
shr rax, 0x20
cmp r10d, r9d
mov r9d, r14d
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [rbp + 0xc]
adc r11d, r14d
shr ebx, 0x1f
add r11d, ebx
mov ebx, r14d
imul rdi, rax
lea r8d, [rdx + rdi*2]
mov rsi, rdi
shr rsi, 0x20
cmp r8d, edx
setb bl
shr edi, 0x1f
lea eax, [rsi + rsi]
or edi, eax
mov eax, dword [rbp + 8]
add edi, r11d
cmp edi, r11d
mov r11d, dword [rbp + 4]
setb r9b
add edi, ebx
imul r11, rax
mov rdx, r11
shr rdx, 0x20
lea r10d, [r8 + r11*2]
cmp r10d, r8d
mov dword [r15 + 0xc], r10d
mov r10d, dword [rbp + 4]
lea eax, [rdx + rdx]
mov ecx, r14d
setb cl
shr r11d, 0x1f
mov r8d, r14d
or r11d, eax
mov eax, r14d
add r11d, edi
cmp r11d, edi
setb al
add r11d, ecx
cmp r11d, ecx
mov ecx, r14d
setb r8b
or r8d, eax
cmp edi, ebx
mov eax, r14d
setb al
shr edx, 0x1f
shr esi, 0x1f
or eax, r9d
mov r9d, r14d
add r8d, eax
mov eax, dword [rbp + 0xc]
add r8d, edx
add r8d, esi
imul r10, rax
mov rbx, r10
lea edx, [r11 + r10*2]
shr rbx, 0x20
cmp edx, r11d
lea eax, [rbx + rbx]
mov r11d, r14d
setb r9b
shr r10d, 0x1f
or r10d, eax
mov eax, edx
add r10d, r8d
cmp r10d, r8d
mov r8d, dword [rbp + 8]
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov dword [r15 + 0x10], r8d
mov rax, r8
mov r8d, r14d
shr rax, 0x20
cmp r10d, r9d
mov r9d, dword [rbp + 8]
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [rbp + 0xc]
adc r11d, r14d
shr ebx, 0x1f
add r11d, ebx
imul r9, rax
mov r10, r9
lea ecx, [rdx + r9*2]
shr r10, 0x20
cmp ecx, edx
mov dword [r15 + 0x14], ecx
mov ecx, dword [rbp + 0xc]
setb r8b
shr r9d, 0x1f
lea eax, [r10 + r10]
or r9d, eax
mov edx, r14d
add r9d, r11d
cmp r9d, r11d
setb dl
add r9d, r8d
mov eax, r9d
imul rcx, rcx
add rcx, rax
mov dword [r15 + 0x18], ecx
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
cmp r9d, r8d
setb r14b
shr rcx, 0x20
shr r10d, 0x1f
or r14d, edx
add r14d, ecx
add r14d, r10d
mov dword [r15 + 0x1c], r14d
pop r15
pop r14
ret
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, dword [rdx]
xor r12d, r12d
mov r13, rdx
mov r14, rcx
mov r9d, r12d
imul rax, rax
mov dword [rcx], eax
mov r11d, dword [rdx + 4]
mov r8, rax
mov eax, dword [rdx]
mov ecx, r12d
shr r8, 0x20
imul r11, rax
mov rdi, r11
shr rdi, 0x20
lea edx, [r8 + r11*2]
cmp edx, r8d
lea eax, [rdi + rdi]
mov dword [r14 + 4], edx
setb cl
mov r10d, dword [r13 + 8]
mov r8d, dword [r13 + 4]
shr r11d, 0x1f
shr edi, 0x1f
or r11d, eax
mov eax, dword [r13]
add r11d, ecx
cmp r11d, ecx
mov ecx, r12d
adc edi, r12d
imul r10, rax
mov rbx, r10
lea edx, [r11 + r10*2]
shr rbx, 0x20
cmp edx, r11d
lea eax, [rbx + rbx]
mov r11d, r12d
setb r9b
shr r10d, 0x1f
or r10d, eax
mov eax, edx
add r10d, edi
cmp r10d, edi
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov dword [r14 + 8], r8d
mov edi, dword [r13]
mov esi, dword [r13 + 4]
mov rax, r8
mov r8d, r12d
shr rax, 0x20
cmp r10d, r9d
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [r13 + 0xc]
adc r11d, r12d
shr ebx, 0x1f
add r11d, ebx
mov ebx, r12d
imul rdi, rax
lea ecx, [rdx + rdi*2]
mov rbp, rdi
shr rbp, 0x20
cmp ecx, edx
setb bl
shr edi, 0x1f
lea eax, [rbp*2]
or edi, eax
mov eax, dword [r13 + 8]
add edi, r11d
cmp edi, r11d
setb r8b
add edi, ebx
imul rsi, rax
mov r9, rsi
shr r9, 0x20
lea r10d, [rcx + rsi*2]
cmp r10d, ecx
mov dword [r14 + 0xc], r10d
mov r14d, dword [r13 + 0x10]
mov r10d, dword [r13 + 4]
lea eax, [r9 + r9]
mov edx, r12d
setb dl
shr esi, 0x1f
mov ecx, r12d
or esi, eax
mov eax, r12d
mov r11d, r12d
add esi, edi
cmp esi, edi
setb cl
add esi, edx
cmp edi, ebx
setb r11b
mov edi, r12d
mov ebx, r12d
or r11d, r8d
cmp esi, edx
mov r8d, r12d
setb al
shr r9d, 0x1f
shr ebp, 0x1f
or eax, ecx
add r11d, eax
mov eax, dword [r13]
add r11d, r9d
mov r9d, dword [r13 + 8]
imul r14, rax
add r11d, ebp
lea edx, [rsi + r14*2]
mov r15, r14
mov ebp, r12d
shr r15, 0x20
cmp edx, esi
setb bpl
shr r14d, 0x1f
lea eax, [r15 + r15]
or r14d, eax
mov eax, dword [r13 + 0xc]
add r14d, r11d
cmp r14d, r11d
setb dil
add r14d, ebp
imul r10, rax
mov rsi, r10
lea ecx, [rdx + r10*2]
shr rsi, 0x20
cmp ecx, edx
lea eax, [rsi + rsi]
mov edx, r12d
setb r8b
shr r10d, 0x1f
or r10d, eax
mov eax, ecx
add r10d, r14d
cmp r10d, r14d
setb dl
add r10d, r8d
imul r9, r9
add r9, rax
mov eax, r12d
mov rcx, r9
shr rcx, 0x20
cmp r10d, r8d
setb bl
lea r11d, [r10 + rcx]
or ebx, edx
cmp r14d, ebp
setb al
or eax, edi
add ebx, eax
cmp r11d, ecx
adc ebx, r12d
shr esi, 0x1f
shr r15d, 0x1f
add ebx, esi
add ebx, r15d
mov rax, qword [rsp + 0x38]
xor edx, edx
mov dword [rax + 0x10], r9d
mov eax, dword [r13 + 0x14]
mov r12d, dword [r13]
mov r9, qword [rsp + 0x40]
imul r12, rax
lea ecx, [r11 + r12*2]
mov edi, dword [r9 + 0x10]
mov esi, dword [r9 + 8]
mov r13, r12
shr r13, 0x20
cmp ecx, r11d
mov r15d, edx
setb r15b
shr r12d, 0x1f
mov ebp, edx
lea eax, [r13*2]
or r12d, eax
mov eax, dword [r9 + 4]
add r12d, ebx
cmp r12d, ebx
setb bpl
xor ebx, ebx
add r12d, r15d
mov r10d, ebx
mov r8d, ebx
imul rdi, rax
lea edx, [rcx + rdi*2]
mov r14, rdi
shr r14, 0x20
cmp edx, ecx
mov ecx, ebx
setb r10b
shr edi, 0x1f
lea eax, [r14 + r14]
or edi, eax
mov eax, dword [r9 + 0xc]
add edi, r12d
cmp edi, r12d
setb r8b
add edi, r10d
imul rsi, rax
mov r9, rsi
shr r9, 0x20
lea r11d, [rdx + rsi*2]
cmp r11d, edx
lea eax, [r9 + r9]
setb cl
shr esi, 0x1f
or esi, eax
mov eax, ebx
add esi, edi
cmp esi, edi
setb al
add esi, ecx
cmp esi, ecx
setb bl
xor edx, edx
or ebx, eax
cmp edi, r10d
mov eax, edx
setb al
or eax, r8d
add ebx, eax
cmp r12d, r15d
mov r12, qword [rsp + 0x40]
mov eax, edx
setb al
shr r14d, 0x1f
or eax, ebp
shr r9d, 0x1f
shr r13d, 0x1f
add ebx, eax
mov rax, qword [rsp + 0x38]
add ebx, r9d
mov dword [rax + 0x14], r11d
mov eax, dword [r12 + 0x14]
add ebx, r14d
mov r14d, dword [r12 + 4]
add ebx, r13d
mov r11d, dword [r12 + 0x10]
mov r9d, dword [r12 + 0xc]
imul r14, rax
xor r13d, r13d
lea edx, [rsi + r14*2]
mov r15, r14
shr r15, 0x20
cmp edx, esi
mov ebp, r13d
setb bpl
shr r14d, 0x1f
lea eax, [r15 + r15]
or r14d, eax
mov eax, dword [r12 + 8]
mov r8d, r13d
add r14d, ebx
mov edi, r13d
cmp r14d, ebx
mov ebx, r13d
setb dil
add r14d, ebp
imul r11, rax
mov rsi, r11
shr rsi, 0x20
lea ecx, [rdx + r11*2]
cmp ecx, edx
lea eax, [rsi + rsi]
mov edx, r13d
setb r8b
shr r11d, 0x1f
or r11d, eax
mov eax, ecx
add r11d, r14d
cmp r11d, r14d
setb dl
add r11d, r8d
imul r9, r9
add r9, rax
mov eax, r13d
mov rcx, r9
shr rcx, 0x20
cmp r11d, r8d
setb bl
lea r10d, [r11 + rcx]
or ebx, edx
cmp r14d, ebp
setb al
or eax, edi
mov edi, r13d
add ebx, eax
cmp r10d, ecx
mov ecx, r13d
adc ebx, r13d
shr esi, 0x1f
shr r15d, 0x1f
add ebx, esi
add ebx, r15d
mov r15, qword [rsp + 0x38]
mov dword [r15 + 0x18], r9d
mov eax, dword [r12 + 0x14]
mov ebp, dword [r12 + 8]
mov esi, dword [r12 + 0x10]
imul rbp, rax
lea edx, [r10 + rbp*2]
mov r14, rbp
mov r9d, r13d
shr r14, 0x20
cmp edx, r10d
setb dil
shr ebp, 0x1f
lea eax, [r14 + r14]
or ebp, eax
mov eax, dword [r12 + 0xc]
add ebp, ebx
cmp ebp, ebx
setb r9b
add ebp, edi
imul rsi, rax
mov r8, rsi
shr r8, 0x20
lea r10d, [rdx + rsi*2]
cmp r10d, edx
mov dword [r15 + 0x1c], r10d
mov r10d, dword [r12 + 0x14]
setb cl
shr esi, 0x1f
lea eax, [r8 + r8]
or esi, eax
mov eax, r13d
mov r11d, r13d
add esi, ebp
cmp esi, ebp
setb al
add esi, ecx
cmp esi, ecx
mov ecx, r13d
setb r11b
or r11d, eax
cmp ebp, edi
mov eax, r13d
setb al
shr r8d, 0x1f
shr r14d, 0x1f
or eax, r9d
mov r9d, r13d
add r11d, eax
mov eax, dword [r12 + 0xc]
add r11d, r8d
mov r8d, dword [r12 + 0x10]
imul r10, rax
add r11d, r14d
lea edx, [rsi + r10*2]
mov rbx, r10
shr rbx, 0x20
cmp edx, esi
setb r9b
shr r10d, 0x1f
lea eax, [rbx + rbx]
or r10d, eax
mov eax, edx
add r10d, r11d
cmp r10d, r11d
mov r11d, r13d
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov dword [r15 + 0x20], r8d
mov rax, r8
mov r8d, r13d
shr rax, 0x20
cmp r10d, r9d
mov r9d, dword [r12 + 0x10]
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [r12 + 0x14]
adc r11d, r13d
shr ebx, 0x1f
add r11d, ebx
imul r9, rax
mov r10, r9
lea ecx, [rdx + r9*2]
shr r10, 0x20
cmp ecx, edx
mov dword [r15 + 0x24], ecx
mov ecx, dword [r12 + 0x14]
setb r8b
shr r9d, 0x1f
lea eax, [r10 + r10]
or r9d, eax
mov edx, r13d
add r9d, r11d
cmp r9d, r11d
setb dl
add r9d, r8d
mov eax, r9d
imul rcx, rcx
add rcx, rax
cmp r9d, r8d
mov dword [r15 + 0x28], ecx
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
setb r13b
or r13d, edx
shr rcx, 0x20
shr r10d, 0x1f
add r13d, ecx
add r13d, r10d
mov dword [r15 + 0x2c], r13d
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x18
mov eax, dword [rdx]
xor r12d, r12d
mov r13, rdx
mov r14, rcx
mov r9d, r12d
imul rax, rax
mov dword [rcx], eax
mov r11d, dword [rdx + 4]
mov r8, rax
mov eax, dword [rdx]
mov ecx, r12d
shr r8, 0x20
imul r11, rax
mov rdi, r11
lea edx, [r8 + r11*2]
shr rdi, 0x20
cmp edx, r8d
mov dword [r14 + 4], edx
mov r10d, dword [r13 + 8]
setb cl
mov r8d, dword [r13 + 4]
shr r11d, 0x1f
lea eax, [rdi + rdi]
shr edi, 0x1f
or r11d, eax
mov eax, dword [r13]
add r11d, ecx
cmp r11d, ecx
mov ecx, r12d
adc edi, r12d
imul r10, rax
mov rbx, r10
lea edx, [r11 + r10*2]
shr rbx, 0x20
cmp edx, r11d
lea eax, [rbx + rbx]
mov r11d, r12d
setb r9b
shr r10d, 0x1f
or r10d, eax
mov eax, edx
add r10d, edi
cmp r10d, edi
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov dword [r14 + 8], r8d
mov edi, dword [r13]
mov rax, r8
shr rax, 0x20
cmp r10d, r9d
mov r9d, r12d
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [r13 + 0xc]
adc r11d, r12d
shr ebx, 0x1f
add r11d, ebx
mov ebx, r12d
imul rdi, rax
lea r8d, [rdx + rdi*2]
mov rsi, rdi
shr rsi, 0x20
cmp r8d, edx
setb bl
shr edi, 0x1f
lea eax, [rsi + rsi]
or edi, eax
mov eax, dword [r13 + 8]
add edi, r11d
cmp edi, r11d
mov r11d, dword [r13 + 4]
setb r9b
add edi, ebx
imul r11, rax
mov rdx, r11
shr rdx, 0x20
lea r10d, [r8 + r11*2]
cmp r10d, r8d
mov dword [r14 + 0xc], r10d
mov r14d, dword [r13 + 0x10]
mov r10d, dword [r13 + 4]
lea eax, [rdx + rdx]
mov ecx, r12d
setb cl
shr r11d, 0x1f
mov r8d, r12d
or r11d, eax
mov eax, r12d
mov ebp, r12d
add r11d, edi
cmp r11d, edi
setb al
add r11d, ecx
cmp r11d, ecx
setb r8b
or r8d, eax
cmp edi, ebx
mov eax, r12d
setb al
shr edx, 0x1f
shr esi, 0x1f
or eax, r9d
mov r9d, dword [r13 + 8]
mov edi, r12d
add r8d, eax
mov eax, dword [r13]
mov ebx, r12d
add r8d, edx
add r8d, esi
imul r14, rax
lea edx, [r11 + r14*2]
mov r15, r14
shr r15, 0x20
cmp edx, r11d
setb bpl
shr r14d, 0x1f
lea eax, [r15 + r15]
or r14d, eax
mov eax, dword [r13 + 0xc]
add r14d, r8d
cmp r14d, r8d
mov r8d, r12d
setb dil
add r14d, ebp
imul r10, rax
mov rsi, r10
lea ecx, [rdx + r10*2]
shr rsi, 0x20
cmp ecx, edx
lea eax, [rsi + rsi]
mov edx, r12d
setb r8b
shr r10d, 0x1f
or r10d, eax
mov eax, ecx
add r10d, r14d
cmp r10d, r14d
setb dl
add r10d, r8d
imul r9, r9
add r9, rax
mov eax, r12d
mov rcx, r9
shr rcx, 0x20
cmp r10d, r8d
setb bl
lea r11d, [r10 + rcx]
or ebx, edx
cmp r14d, ebp
setb al
or eax, edi
add ebx, eax
cmp r11d, ecx
adc ebx, r12d
shr esi, 0x1f
shr r15d, 0x1f
add ebx, esi
add ebx, r15d
mov rax, qword [rsp + 0x60]
xor r8d, r8d
mov dword [rax + 0x10], r9d
mov eax, dword [r13 + 0x14]
mov r12d, dword [r13]
imul r12, rax
lea ecx, [r11 + r12*2]
mov r13, r12
shr r13, 0x20
cmp ecx, r11d
mov r15d, r8d
setb r15b
shr r12d, 0x1f
mov r11d, r8d
lea eax, [r13*2]
mov r9d, r8d
mov esi, r8d
or r12d, eax
add r12d, ebx
cmp r12d, ebx
mov rbx, qword [rsp + 0x68]
mov eax, dword [rbx + 4]
mov edi, dword [rbx + 0x10]
mov ebp, dword [rbx + 8]
setb sil
add r12d, r15d
imul rdi, rax
mov r14, rdi
lea edx, [rcx + rdi*2]
shr r14, 0x20
cmp edx, ecx
lea eax, [r14 + r14]
setb r11b
shr edi, 0x1f
or edi, eax
mov eax, dword [rbx + 0xc]
add edi, r12d
cmp edi, r12d
setb r9b
add edi, r11d
imul rbp, rax
mov r10, rbp
lea ebx, [rdx + rbp*2]
shr r10, 0x20
cmp ebx, edx
lea eax, [r10 + r10]
setb r8b
shr ebp, 0x1f
or ebp, eax
xor eax, eax
mov edx, eax
mov ecx, eax
add ebp, edi
cmp ebp, edi
setb cl
add ebp, r8d
cmp edi, r11d
mov r11, qword [rsp + 0x68]
setb dl
xor edi, edi
or edx, r9d
cmp r12d, r15d
setb al
or eax, esi
add edx, eax
mov eax, edi
cmp ebp, r8d
setb al
shr r10d, 0x1f
shr r14d, 0x1f
or eax, ecx
shr r13d, 0x1f
add edx, eax
mov rax, qword [rsp + 0x60]
add edx, r10d
mov dword [rax + 0x14], ebx
mov r9d, dword [r11 + 0x18]
mov eax, dword [r11]
add edx, r14d
add edx, r13d
imul r9, rax
mov r14d, dword [r11 + 4]
mov r10d, dword [r11 + 0x10]
lea ecx, [r9*2]
add ecx, ebp
mov rax, r9
mov r13d, edi
shr rax, 0x20
cmp ecx, ebp
mov esi, edi
setb r13b
shr r9d, 0x1f
mov qword [rsp + 0x78], rax
add eax, eax
mov r15d, edi
mov ebx, edi
or r9d, eax
mov eax, dword [r11 + 0x14]
add r9d, edx
cmp r9d, edx
setb r15b
add r9d, r13d
mov qword [rsp + 0x70], r9
imul r14, rax
lea r8d, [rcx + r14*2]
mov r12, r14
shr r12, 0x20
cmp r8d, ecx
setb sil
shr r14d, 0x1f
lea eax, [r12 + r12]
or r14d, eax
mov eax, dword [r11 + 8]
add r14d, r9d
cmp r14d, r9d
setb bl
xor ebp, ebp
add r14d, esi
mov r9d, ebp
mov ecx, ebp
imul r10, rax
lea edx, [r8 + r10*2]
mov rdi, r10
shr rdi, 0x20
cmp edx, r8d
mov r8d, dword [r11 + 0xc]
setb r9b
shr r10d, 0x1f
lea eax, [rdi + rdi]
or r10d, eax
mov eax, edx
add r10d, r14d
cmp r10d, r14d
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov rdx, r8
shr rdx, 0x20
cmp r10d, r9d
setb bpl
xor r9d, r9d
lea r11d, [r10 + rdx]
or ebp, ecx
cmp r14d, esi
mov eax, r9d
setb al
or eax, ebx
add ebp, eax
cmp dword [rsp + 0x70], r13d
mov eax, r9d
setb al
or eax, r15d
add ebp, eax
mov rax, qword [rsp + 0x78]
cmp r11d, edx
adc ebp, r9d
shr edi, 0x1f
shr r12d, 0x1f
add ebp, edi
add ebp, r12d
shr eax, 0x1f
mov r10, qword [rsp + 0x68]
add ebp, eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x18], r8d
mov eax, dword [r10]
mov r8d, dword [r10 + 0x1c]
mov r15d, dword [r10 + 4]
imul r8, rax
mov esi, dword [r10 + 0x10]
lea ecx, [r11 + r8*2]
mov rax, r8
mov edx, r9d
shr rax, 0x20
cmp ecx, r11d
mov r11d, dword [r10 + 8]
setb dl
shr r8d, 0x1f
mov qword [rsp], rax
add eax, eax
mov dword [rsp + 0x70], edx
mov r14d, r9d
or r8d, eax
mov eax, dword [r10 + 0x18]
mov r12d, r9d
add r8d, ebp
mov edi, r9d
cmp r8d, ebp
setb r12b
add r8d, edx
mov qword [rsp + 0x78], r8
imul r15, rax
lea edx, [rcx + r15*2]
mov r13, r15
shr r13, 0x20
cmp edx, ecx
setb r14b
shr r15d, 0x1f
lea eax, [r13*2]
or r15d, eax
mov eax, dword [r10 + 0x14]
add r15d, r8d
cmp r15d, r8d
setb dil
add r15d, r14d
imul r11, rax
mov rbp, r11
lea r8d, [rdx + r11*2]
shr rbp, 0x20
cmp r8d, edx
lea eax, [rbp*2]
setb r9b
shr r11d, 0x1f
xor ecx, ecx
or r11d, eax
mov eax, dword [r10 + 0xc]
mov edx, ecx
add r11d, r15d
cmp r11d, r15d
setb dl
add r11d, r9d
imul rsi, rax
mov r10, rsi
lea ebx, [r8 + rsi*2]
shr r10, 0x20
cmp ebx, r8d
lea eax, [r10 + r10]
setb cl
shr esi, 0x1f
xor r8d, r8d
or esi, eax
mov eax, r8d
add esi, r11d
cmp esi, r11d
setb al
add esi, ecx
cmp esi, ecx
setb r8b
or r8d, eax
xor eax, eax
cmp r11d, r9d
setb al
mov rcx, qword [rsp + 0x78]
or eax, edx
xor r11d, r11d
add r8d, eax
cmp r15d, r14d
mov eax, r11d
setb al
mov r14d, r11d
or eax, edi
add r8d, eax
cmp ecx, dword [rsp + 0x70]
mov eax, r11d
setb al
shr r13d, 0x1f
shr r10d, 0x1f
or eax, r12d
shr ebp, 0x1f
mov r12d, r11d
add r8d, eax
mov rax, qword [rsp]
shr eax, 0x1f
add r8d, r10d
mov r10, qword [rsp + 0x68]
add r8d, ebp
mov ebp, r11d
add r8d, r13d
add r8d, eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x1c], ebx
mov eax, dword [r10 + 0x1c]
mov r13d, dword [r10 + 4]
mov r15d, dword [r10 + 0x18]
mov r9d, dword [r10 + 0x14]
imul r13, rax
lea ecx, [rsi + r13*2]
mov rax, r13
mov ebx, r11d
shr rax, 0x20
cmp ecx, esi
setb r12b
shr r13d, 0x1f
mov qword [rsp + 0x78], rax
add eax, eax
or r13d, eax
mov eax, dword [r10 + 8]
add r13d, r8d
cmp r13d, r8d
mov r8d, r11d
setb r14b
add r13d, r12d
imul r15, rax
mov rax, r15
shr rax, 0x20
lea edx, [rcx + r15*2]
cmp edx, ecx
mov qword [rsp + 0x70], rax
setb bpl
shr r15d, 0x1f
add eax, eax
or r15d, eax
mov eax, dword [r10 + 0xc]
mov r10d, dword [r10 + 0x10]
add r15d, r13d
cmp r15d, r13d
setb bl
add r15d, ebp
imul r9, rax
mov rdi, r9
lea ecx, [rdx + r9*2]
shr rdi, 0x20
cmp ecx, edx
lea eax, [rdi + rdi]
mov edx, r11d
setb r8b
shr r9d, 0x1f
or r9d, eax
add r9d, r15d
cmp r9d, r15d
setb dl
add r9d, r8d
imul r10, r10
mov eax, ecx
add r10, rax
xor eax, eax
mov esi, eax
mov rcx, r10
shr rcx, 0x20
cmp r13d, r12d
setb sil
lea r11d, [r9 + rcx]
or esi, r14d
cmp r9d, r8d
setb al
xor r8d, r8d
or eax, edx
add esi, eax
cmp r15d, ebp
mov eax, r8d
setb al
mov r15d, r8d
mov ebp, r8d
or eax, ebx
mov rbx, qword [rsp + 0x68]
add esi, eax
mov rax, qword [rsp + 0x70]
cmp r11d, ecx
adc esi, r8d
shr eax, 0x1f
shr edi, 0x1f
add esi, edi
add esi, eax
mov rax, qword [rsp + 0x78]
shr eax, 0x1f
add esi, eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x20], r10d
mov eax, dword [rbx + 8]
mov r12d, dword [rbx + 0x1c]
mov edi, dword [rbx + 0x18]
imul r12, rax
lea ecx, [r11 + r12*2]
mov r13, r12
mov r10d, r8d
shr r13, 0x20
cmp ecx, r11d
setb r15b
shr r12d, 0x1f
lea eax, [r13*2]
or r12d, eax
mov eax, dword [rbx + 0xc]
add r12d, esi
cmp r12d, esi
mov esi, dword [rbx + 0x10]
setb bpl
add r12d, r15d
imul rdi, rax
mov r14, rdi
lea edx, [rcx + rdi*2]
shr r14, 0x20
cmp edx, ecx
lea eax, [r14 + r14]
setb r10b
shr edi, 0x1f
or edi, eax
mov eax, dword [rbx + 0x14]
add edi, r12d
cmp edi, r12d
setb r8b
add edi, r10d
xor ecx, ecx
imul rsi, rax
mov r9, rsi
lea r11d, [rdx + rsi*2]
shr r9, 0x20
cmp r11d, edx
lea eax, [r9 + r9]
setb cl
shr esi, 0x1f
or esi, eax
add esi, edi
xor edx, edx
mov eax, edx
cmp esi, edi
mov ebx, edx
setb al
add esi, ecx
cmp esi, ecx
setb bl
or ebx, eax
cmp edi, r10d
mov eax, edx
setb al
or eax, r8d
add ebx, eax
cmp r12d, r15d
mov r12, qword [rsp + 0x68]
mov eax, edx
setb al
shr r14d, 0x1f
or eax, ebp
shr r9d, 0x1f
shr r13d, 0x1f
add ebx, eax
mov rax, qword [rsp + 0x60]
add ebx, r9d
mov dword [rax + 0x24], r11d
mov eax, dword [r12 + 0xc]
mov r11d, dword [r12 + 0x10]
mov r9d, dword [r12 + 0x14]
add ebx, r14d
mov r14d, dword [r12 + 0x1c]
add ebx, r13d
xor r13d, r13d
mov ebp, r13d
mov r8d, r13d
mov edi, r13d
imul r14, rax
lea edx, [rsi + r14*2]
mov r15, r14
shr r15, 0x20
cmp edx, esi
setb bpl
shr r14d, 0x1f
lea eax, [r15 + r15]
or r14d, eax
mov eax, dword [r12 + 0x18]
add r14d, ebx
cmp r14d, ebx
mov ebx, r13d
setb dil
add r14d, ebp
imul r11, rax
mov rsi, r11
lea ecx, [rdx + r11*2]
shr rsi, 0x20
cmp ecx, edx
lea eax, [rsi + rsi]
mov edx, r13d
setb r8b
shr r11d, 0x1f
or r11d, eax
mov eax, ecx
add r11d, r14d
cmp r11d, r14d
setb dl
add r11d, r8d
imul r9, r9
add r9, rax
mov eax, r13d
mov rcx, r9
shr rcx, 0x20
cmp r11d, r8d
setb bl
lea r10d, [r11 + rcx]
or ebx, edx
cmp r14d, ebp
setb al
or eax, edi
add ebx, eax
cmp r10d, ecx
adc ebx, r13d
shr esi, 0x1f
add ebx, esi
shr r15d, 0x1f
mov ecx, r13d
mov edi, r13d
add ebx, r15d
mov r15, qword [rsp + 0x60]
mov r11d, r13d
mov dword [r15 + 0x28], r9d
mov eax, dword [r12 + 0x1c]
mov ebp, dword [r12 + 0x10]
mov esi, dword [r12 + 0x18]
imul rbp, rax
lea edx, [r10 + rbp*2]
mov r14, rbp
mov r9d, r13d
shr r14, 0x20
cmp edx, r10d
setb dil
shr ebp, 0x1f
lea eax, [r14 + r14]
or ebp, eax
mov eax, dword [r12 + 0x14]
add ebp, ebx
cmp ebp, ebx
setb r9b
add ebp, edi
imul rsi, rax
mov r8, rsi
shr r8, 0x20
lea r10d, [rdx + rsi*2]
cmp r10d, edx
lea eax, [r8 + r8]
mov dword [r15 + 0x2c], r10d
mov r10d, dword [r12 + 0x1c]
setb cl
shr esi, 0x1f
or esi, eax
mov eax, r13d
add esi, ebp
cmp esi, ebp
setb al
add esi, ecx
cmp esi, ecx
mov ecx, r13d
setb r11b
or r11d, eax
cmp ebp, edi
mov eax, r13d
setb al
shr r8d, 0x1f
shr r14d, 0x1f
or eax, r9d
mov r9d, r13d
add r11d, eax
mov eax, dword [r12 + 0x14]
add r11d, r8d
mov r8d, dword [r12 + 0x18]
imul r10, rax
add r11d, r14d
lea edx, [rsi + r10*2]
mov rbx, r10
shr rbx, 0x20
cmp edx, esi
setb r9b
shr r10d, 0x1f
lea eax, [rbx + rbx]
or r10d, eax
mov eax, edx
add r10d, r11d
cmp r10d, r11d
mov r11d, r13d
setb cl
add r10d, r9d
imul r8, r8
add r8, rax
mov rax, r8
shr rax, 0x20
cmp r10d, r9d
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
adc r11d, r13d
mov dword [r15 + 0x30], r8d
mov eax, dword [r12 + 0x18]
mov r9d, dword [r12 + 0x1c]
mov r8d, r13d
shr ebx, 0x1f
add r11d, ebx
imul r9, rax
mov r10, r9
lea ecx, [rdx + r9*2]
shr r10, 0x20
cmp ecx, edx
mov edx, r13d
mov dword [r15 + 0x34], ecx
mov ecx, dword [r12 + 0x1c]
setb r8b
shr r9d, 0x1f
lea eax, [r10 + r10]
or r9d, eax
add r9d, r11d
cmp r9d, r11d
setb dl
add r9d, r8d
mov eax, r9d
imul rcx, rcx
add rcx, rax
cmp r9d, r8d
setb r13b
mov dword [r15 + 0x38], ecx
shr rcx, 0x20
or r13d, edx
shr r10d, 0x1f
add r13d, ecx
add r13d, r10d
mov dword [r15 + 0x3c], r13d
add rsp, 0x18
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov eax, dword [rdx]
mov r13, rdx
mov r12, rcx
imul rax, rax
mov dword [rcx], eax
mov r11d, dword [rdx + 4]
xor ecx, ecx
mov r8, rax
mov eax, dword [rdx]
shr r8, 0x20
imul r11, rax
mov rdi, r11
lea edx, [r8 + r11*2]
shr rdi, 0x20
cmp edx, r8d
mov dword [r12 + 4], edx
mov r10d, dword [r13 + 8]
setb cl
mov r8d, dword [r13 + 4]
shr r11d, 0x1f
lea eax, [rdi + rdi]
shr edi, 0x1f
or r11d, eax
mov eax, dword [r13]
add r11d, ecx
cmp r11d, ecx
adc edi, 0
xor r9d, r9d
imul r10, rax
mov rbx, r10
lea edx, [r11 + r10*2]
shr rbx, 0x20
cmp edx, r11d
lea eax, [rbx + rbx]
setb r9b
shr r10d, 0x1f
xor ecx, ecx
or r10d, eax
mov eax, edx
add r10d, edi
cmp r10d, edi
setb cl
xor r11d, r11d
add r10d, r9d
imul r8, r8
add r8, rax
mov dword [r12 + 8], r8d
mov edi, dword [r13]
mov rax, r8
shr rax, 0x20
cmp r10d, r9d
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [r13 + 0xc]
adc r11d, 0
shr ebx, 0x1f
add r11d, ebx
xor ebx, ebx
imul rdi, rax
lea r8d, [rdx + rdi*2]
mov rsi, rdi
shr rsi, 0x20
cmp r8d, edx
setb bl
shr edi, 0x1f
xor r9d, r9d
lea eax, [rsi + rsi]
or edi, eax
mov eax, dword [r13 + 8]
add edi, r11d
cmp edi, r11d
mov r11d, dword [r13 + 4]
setb r9b
add edi, ebx
imul r11, rax
mov rdx, r11
shr rdx, 0x20
xor ecx, ecx
lea r10d, [r8 + r11*2]
cmp r10d, r8d
mov dword [r12 + 0xc], r10d
mov r14d, dword [r13 + 0x10]
setb cl
mov r10d, dword [r13 + 4]
shr r11d, 0x1f
lea eax, [rdx + rdx]
or r11d, eax
xor eax, eax
add r11d, edi
cmp r11d, edi
setb al
xor r8d, r8d
add r11d, ecx
cmp r11d, ecx
setb r8b
or r8d, eax
xor eax, eax
cmp edi, ebx
setb al
shr edx, 0x1f
shr esi, 0x1f
or eax, r9d
mov r9d, dword [r13 + 8]
xor ebp, ebp
add r8d, eax
mov eax, dword [r13]
add r8d, edx
add r8d, esi
imul r14, rax
mov r15, r14
shr r15, 0x20
lea edx, [r11 + r14*2]
cmp edx, r11d
lea eax, [r15 + r15]
setb bpl
shr r14d, 0x1f
xor edi, edi
or r14d, eax
mov eax, dword [r13 + 0xc]
add r14d, r8d
cmp r14d, r8d
setb dil
xor r8d, r8d
add r14d, ebp
imul r10, rax
mov rsi, r10
lea ecx, [rdx + r10*2]
shr rsi, 0x20
cmp ecx, edx
lea eax, [rsi + rsi]
setb r8b
shr r10d, 0x1f
xor edx, edx
or r10d, eax
mov eax, ecx
add r10d, r14d
cmp r10d, r14d
setb dl
xor ebx, ebx
add r10d, r8d
imul r9, r9
add r9, rax
mov rcx, r9
mov dword [r12 + 0x10], r9d
shr rcx, 0x20
cmp r10d, r8d
setb bl
xor eax, eax
lea r11d, [r10 + rcx]
or ebx, edx
cmp r14d, ebp
setb al
or eax, edi
add ebx, eax
cmp r11d, ecx
adc ebx, 0
shr esi, 0x1f
shr r15d, 0x1f
add ebx, esi
add ebx, r15d
mov eax, dword [r13 + 0x14]
mov r15d, dword [r13]
mov edi, dword [r13 + 8]
imul r15, rax
xor r14d, r14d
lea ecx, [r11 + r15*2]
mov r12, r15
shr r12, 0x20
cmp ecx, r11d
setb r14b
shr r15d, 0x1f
xor esi, esi
lea eax, [r12 + r12]
or r15d, eax
mov eax, dword [r13 + 4]
add r15d, ebx
cmp r15d, ebx
mov ebx, dword [r13 + 0x10]
setb sil
xor r10d, r10d
add r15d, r14d
imul rbx, rax
mov rbp, rbx
lea edx, [rcx + rbx*2]
shr rbp, 0x20
cmp edx, ecx
lea eax, [rbp*2]
setb r10b
shr ebx, 0x1f
xor r8d, r8d
or ebx, eax
mov eax, dword [r13 + 0xc]
add ebx, r15d
cmp ebx, r15d
setb r8b
xor ecx, ecx
add ebx, r10d
imul rdi, rax
mov r9, rdi
lea r11d, [rdx + rdi*2]
shr r9, 0x20
cmp r11d, edx
lea eax, [r9 + r9]
setb cl
shr edi, 0x1f
or edi, eax
xor eax, eax
add edi, ebx
cmp edi, ebx
setb al
xor edx, edx
add edi, ecx
cmp edi, ecx
setb dl
or edx, eax
xor eax, eax
cmp ebx, r10d
setb al
or eax, r8d
add edx, eax
xor eax, eax
cmp r15d, r14d
setb al
shr r9d, 0x1f
shr ebp, 0x1f
or eax, esi
shr r12d, 0x1f
add edx, eax
mov rax, qword [rsp + 0xe0]
add edx, r9d
mov dword [rax + 0x14], r11d
mov eax, dword [r13]
mov r9d, dword [r13 + 0x18]
add edx, ebp
add edx, r12d
imul r9, rax
mov rax, r9
shr rax, 0x20
lea ecx, [rdi + r9*2]
xor r13d, r13d
mov qword [rsp + 0xf8], rax
mov r11, qword [rsp + 0xe8]
cmp ecx, edi
setb r13b
mov r14d, dword [r11 + 4]
mov r10d, dword [r11 + 0x10]
add eax, eax
shr r9d, 0x1f
xor r15d, r15d
or r9d, eax
mov eax, dword [r11 + 0x14]
add r9d, edx
cmp r9d, edx
setb r15b
add r9d, r13d
xor esi, esi
mov qword [rsp + 0xf0], r9
imul r14, rax
lea r8d, [rcx + r14*2]
mov r12, r14
shr r12, 0x20
cmp r8d, ecx
setb sil
shr r14d, 0x1f
xor ebx, ebx
lea eax, [r12 + r12]
or r14d, eax
mov eax, dword [r11 + 8]
add r14d, r9d
cmp r14d, r9d
setb bl
xor r9d, r9d
add r14d, esi
imul r10, rax
mov rdi, r10
lea edx, [r8 + r10*2]
shr rdi, 0x20
cmp edx, r8d
mov r8d, dword [r11 + 0xc]
lea eax, [rdi + rdi]
setb r9b
shr r10d, 0x1f
xor ecx, ecx
or r10d, eax
mov eax, edx
add r10d, r14d
cmp r10d, r14d
setb cl
xor ebp, ebp
add r10d, r9d
imul r8, r8
add r8, rax
mov rdx, r8
shr rdx, 0x20
cmp r10d, r9d
setb bpl
xor eax, eax
lea r11d, [r10 + rdx]
mov r10, qword [rsp + 0xe8]
or ebp, ecx
cmp r14d, esi
setb al
or eax, ebx
add ebp, eax
xor eax, eax
cmp dword [rsp + 0xf0], r13d
setb al
or eax, r15d
add ebp, eax
mov rax, qword [rsp + 0xf8]
cmp r11d, edx
adc ebp, 0
shr eax, 0x1f
shr edi, 0x1f
add ebp, edi
shr r12d, 0x1f
add ebp, r12d
add ebp, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x18], r8d
mov r8d, dword [r10 + 0x1c]
mov eax, dword [r10]
imul r8, rax
mov r15d, dword [r10 + 4]
mov esi, dword [r10 + 0x10]
lea ecx, [r11 + r8*2]
xor edx, edx
mov rax, r8
shr rax, 0x20
cmp ecx, r11d
mov r11d, dword [r10 + 8]
setb dl
shr r8d, 0x1f
mov qword [rsp + 0x20], rax
add eax, eax
xor r12d, r12d
mov dword [rsp + 0xf0], edx
or r8d, eax
mov eax, dword [r10 + 0x18]
add r8d, ebp
cmp r8d, ebp
setb r12b
add r8d, edx
xor r14d, r14d
mov qword [rsp + 0xf8], r8
imul r15, rax
lea edx, [rcx + r15*2]
mov r13, r15
shr r13, 0x20
cmp edx, ecx
setb r14b
shr r15d, 0x1f
xor edi, edi
lea eax, [r13*2]
or r15d, eax
mov eax, dword [r10 + 0x14]
add r15d, r8d
cmp r15d, r8d
setb dil
xor r9d, r9d
add r15d, r14d
imul r11, rax
mov rbp, r11
lea r8d, [rdx + r11*2]
shr rbp, 0x20
cmp r8d, edx
lea eax, [rbp*2]
setb r9b
shr r11d, 0x1f
xor edx, edx
or r11d, eax
mov eax, dword [r10 + 0xc]
add r11d, r15d
cmp r11d, r15d
setb dl
xor ecx, ecx
add r11d, r9d
imul rsi, rax
mov r10, rsi
lea ebx, [r8 + rsi*2]
shr r10, 0x20
cmp ebx, r8d
lea eax, [r10 + r10]
setb cl
shr esi, 0x1f
or esi, eax
xor eax, eax
add esi, r11d
cmp esi, r11d
setb al
xor r8d, r8d
add esi, ecx
cmp esi, ecx
setb r8b
or r8d, eax
xor eax, eax
cmp r11d, r9d
setb al
or eax, edx
add r8d, eax
xor eax, eax
cmp r15d, r14d
setb al
mov rcx, qword [rsp + 0xf8]
or eax, edi
add r8d, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
setb al
shr r10d, 0x1f
shr r13d, 0x1f
or eax, r12d
shr ebp, 0x1f
add r8d, eax
mov rax, qword [rsp + 0x20]
shr eax, 0x1f
add r8d, r10d
xor r10d, r10d
add r8d, ebp
mov rbp, qword [rsp + 0xe8]
add r8d, r13d
add r8d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x1c], ebx
mov eax, dword [rbp]
mov ecx, dword [rbp + 0x20]
imul rcx, rax
lea edx, [rsi + rcx*2]
mov rax, rcx
shr rax, 0x20
cmp edx, esi
setb r10b
shr ecx, 0x1f
lea r9d, [rax + rax]
or r9d, ecx
mov ecx, dword [rbp + 4]
mov qword [rsp + 8], rax
xor eax, eax
add r9d, r8d
mov dword [rsp + 0xf0], r10d
cmp r9d, r8d
setb al
add r9d, r10d
mov r10d, dword [rbp + 0x14]
mov dword [rsp], eax
mov eax, dword [rbp + 0x1c]
xor r13d, r13d
mov dword [rsp + 0xf8], r9d
imul rcx, rax
lea r8d, [rdx + rcx*2]
mov rax, rcx
shr rax, 0x20
cmp r8d, edx
setb r13b
shr ecx, 0x1f
lea r12d, [rax + rax]
or r12d, ecx
mov ecx, dword [rbp + 0x18]
xor r15d, r15d
add r12d, r9d
mov qword [rsp + 0x10], rax
mov eax, dword [rbp + 8]
cmp r12d, r9d
setb r15b
xor edi, edi
add r12d, r13d
imul rcx, rax
mov rax, rcx
shr rax, 0x20
lea r9d, [r8 + rcx*2]
cmp r9d, r8d
lea ebx, [rax + rax]
mov qword [rsp + 0x20], rax
mov eax, dword [rbp + 0xc]
setb dil
shr ecx, 0x1f
or ebx, ecx
xor r11d, r11d
add ebx, r12d
cmp ebx, r12d
setb r11b
add ebx, edi
imul r10, rax
mov r14, r10
lea edx, [r9 + r10*2]
shr r14, 0x20
xor r8d, r8d
cmp edx, r9d
mov r9d, dword [rbp + 0x10]
lea eax, [r14 + r14]
setb r8b
shr r10d, 0x1f
xor ecx, ecx
or r10d, eax
mov eax, edx
add r10d, ebx
cmp r10d, ebx
setb cl
xor ebp, ebp
add r10d, r8d
imul r9, r9
add r9, rax
mov rdx, r9
shr rdx, 0x20
cmp r10d, r8d
setb bpl
xor eax, eax
lea esi, [r10 + rdx]
or ebp, ecx
mov ecx, dword [rsp + 0xf0]
cmp ebx, edi
setb al
or eax, r11d
mov r11, qword [rsp + 0xe8]
add ebp, eax
xor eax, eax
cmp r12d, r13d
setb al
or eax, r15d
add ebp, eax
xor eax, eax
cmp dword [rsp + 0xf8], ecx
setb al
or eax, dword [rsp]
add ebp, eax
mov rax, qword [rsp + 0x20]
cmp esi, edx
adc ebp, 0
shr eax, 0x1f
xor edx, edx
add ebp, eax
mov rax, qword [rsp + 0x10]
shr r14d, 0x1f
shr eax, 0x1f
add ebp, eax
mov rax, qword [rsp + 8]
shr eax, 0x1f
add ebp, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x20], r9d
mov eax, dword [r11]
mov r10d, dword [r11 + 0x24]
mov r9d, dword [r11 + 0x20]
imul r10, rax
lea ecx, [rsi + r10*2]
mov rax, r10
add ebp, r14d
shr rax, 0x20
cmp ecx, esi
setb dl
shr r10d, 0x1f
mov qword [rsp + 0x28], rax
add eax, eax
mov dword [rsp + 0xf8], edx
or r10d, eax
xor eax, eax
add r10d, ebp
cmp r10d, ebp
setb al
add r10d, edx
mov dword [rsp], eax
mov eax, dword [r11 + 4]
mov qword [rsp + 0x10], r10
imul r9, rax
mov rax, r9
mov r14d, dword [r11 + 0x1c]
mov r12d, dword [r11 + 0x10]
shr rax, 0x20
xor r8d, r8d
mov qword [rsp + 0x18], rax
lea edx, [rcx + r9*2]
cmp edx, ecx
setb r8b
add eax, eax
shr r9d, 0x1f
or r9d, eax
mov eax, dword [r11 + 8]
xor r13d, r13d
add r9d, r10d
mov dword [rsp + 0xf0], r8d
cmp r9d, r10d
mov r10d, dword [r11 + 0x18]
setb r13b
add r9d, r8d
xor esi, esi
mov qword [rsp + 0x20], r9
imul r14, rax
lea ecx, [rdx + r14*2]
mov rax, r14
shr rax, 0x20
cmp ecx, edx
setb sil
shr r14d, 0x1f
mov qword [rsp + 8], rax
add eax, eax
xor ebx, ebx
or r14d, eax
mov eax, dword [r11 + 0xc]
add r14d, r9d
cmp r14d, r9d
setb bl
xor r8d, r8d
add r14d, esi
imul r10, rax
mov r15, r10
lea edx, [rcx + r10*2]
shr r15, 0x20
cmp edx, ecx
lea eax, [r15 + r15]
setb r8b
shr r10d, 0x1f
xor ecx, ecx
or r10d, eax
mov eax, dword [r11 + 0x14]
add r10d, r14d
cmp r10d, r14d
setb cl
xor r9d, r9d
add r10d, r8d
imul r12, rax
mov r11, r12
lea edi, [rdx + r12*2]
shr r11, 0x20
cmp edi, edx
lea eax, [r11 + r11]
setb r9b
shr r12d, 0x1f
xor edx, edx
or r12d, eax
add r12d, r10d
cmp r12d, r10d
setb dl
xor ebp, ebp
add r12d, r9d
cmp r10d, r8d
setb bpl
xor eax, eax
or ebp, ecx
mov rcx, qword [rsp + 0x20]
cmp r14d, esi
setb al
or eax, ebx
add ebp, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
setb al
or eax, r13d
mov rsi, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x10]
add ebp, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf8]
setb al
or eax, dword [rsp]
add ebp, eax
xor eax, eax
cmp r12d, r9d
setb al
shr r11d, 0x1f
shr r15d, 0x1f
or eax, edx
xor edx, edx
add ebp, eax
mov rax, qword [rsp + 8]
shr eax, 0x1f
add ebp, r11d
add ebp, r15d
add ebp, eax
mov rax, qword [rsp + 0x18]
shr eax, 0x1f
add ebp, eax
mov rax, qword [rsp + 0x28]
shr eax, 0x1f
add ebp, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x24], edi
mov eax, dword [rsi]
mov r10d, dword [rsi + 0x28]
mov r9d, dword [rsi + 4]
mov r13d, dword [rsi + 0x20]
imul r10, rax
lea ecx, [r12 + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, r12d
setb dl
mov qword [rsp + 0x68], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp], edx
or r10d, eax
xor eax, eax
add r10d, ebp
cmp r10d, ebp
setb al
add r10d, edx
xor r8d, r8d
mov dword [rsp + 4], eax
mov eax, dword [rsi + 0x24]
mov qword [rsp + 0x10], r10
imul r9, rax
lea edx, [rcx + r9*2]
mov rax, r9
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x28], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
setb al
add r9d, r8d
xor r12d, r12d
mov dword [rsp + 0xf8], eax
mov eax, dword [rsi + 8]
mov qword [rsp + 0x20], r9
imul r13, rax
lea ecx, [rdx + r13*2]
mov rax, r13
shr rax, 0x20
cmp ecx, edx
setb r12b
mov qword [rsp + 0x18], rax
mov edi, dword [rsi + 0x1c]
add eax, eax
mov r10d, dword [rsi + 0x10]
shr r13d, 0x1f
xor r15d, r15d
or r13d, eax
mov eax, dword [rsi + 0xc]
add r13d, r9d
cmp r13d, r9d
setb r15b
xor ebx, ebx
add r13d, r12d
imul rdi, rax
mov rax, rdi
shr rax, 0x20
lea r8d, [rcx + rdi*2]
cmp r8d, ecx
mov qword [rsp + 8], rax
setb bl
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [rsi + 0x18]
xor r11d, r11d
add edi, r13d
cmp edi, r13d
setb r11b
xor r9d, r9d
add edi, ebx
imul r10, rax
mov rbp, r10
shr rbp, 0x20
lea edx, [r8 + r10*2]
cmp edx, r8d
mov r8d, dword [rsi + 0x14]
lea eax, [rbp*2]
setb r9b
xor ecx, ecx
shr r10d, 0x1f
or r10d, eax
mov eax, edx
add r10d, edi
cmp r10d, edi
setb cl
xor r14d, r14d
add r10d, r9d
imul r8, r8
add r8, rax
mov rdx, r8
shr rdx, 0x20
cmp r10d, r9d
setb r14b
xor eax, eax
lea esi, [r10 + rdx]
or r14d, ecx
mov rcx, qword [rsp + 0x20]
cmp edi, ebx
setb al
or eax, r11d
add r14d, eax
xor eax, eax
cmp r13d, r12d
setb al
or eax, r15d
add r14d, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x10]
setb al
or eax, dword [rsp + 0xf8]
add r14d, eax
xor eax, eax
cmp ecx, dword [rsp]
setb al
or eax, dword [rsp + 4]
add r14d, eax
mov rax, qword [rsp + 8]
cmp esi, edx
adc r14d, 0
shr ebp, 0x1f
add r14d, ebp
mov rbx, qword [rsp + 0xe8]
shr eax, 0x1f
xor edx, edx
add r14d, eax
mov rax, qword [rsp + 0x18]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0x28]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0x68]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x28], r8d
mov eax, dword [rbx + 0x2c]
mov r10d, dword [rbx]
mov r9d, dword [rbx + 4]
imul r10, rax
lea ecx, [rsi + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, esi
setb dl
mov qword [rsp + 0x78], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 4], edx
or r10d, eax
xor eax, eax
add r10d, r14d
cmp r10d, r14d
setb al
xor r8d, r8d
add r10d, edx
mov dword [rsp], eax
mov eax, dword [rbx + 0x28]
mov qword [rsp + 8], r10
imul r9, rax
lea edx, [rcx + r9*2]
mov rax, r9
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x80], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
setb al
add r9d, r8d
mov r8d, dword [rbx + 0x24]
mov dword [rsp + 0xf8], eax
mov eax, dword [rbx + 8]
xor r15d, r15d
mov qword [rsp + 0x10], r9
imul r8, rax
lea ecx, [rdx + r8*2]
mov rax, r8
shr rax, 0x20
cmp ecx, edx
setb r15b
shr r8d, 0x1f
mov qword [rsp + 0x68], rax
add eax, eax
xor edi, edi
or r8d, eax
mov eax, dword [rbx + 0xc]
add r8d, r9d
cmp r8d, r9d
mov r9d, dword [rbx + 0x20]
setb dil
add r8d, r15d
mov qword [rsp + 0x20], r8
imul r9, rax
mov rax, r9
shr rax, 0x20
mov qword [rsp + 0x28], rax
mov r11d, dword [rbx + 0x10]
mov r12d, dword [rbx + 0x18]
xor r13d, r13d
lea edx, [rcx + r9*2]
cmp edx, ecx
setb r13b
add eax, eax
shr r9d, 0x1f
or r9d, eax
mov eax, dword [rbx + 0x1c]
xor ebp, ebp
add r9d, r8d
cmp r9d, r8d
setb bpl
add r9d, r13d
xor r10d, r10d
mov qword [rsp + 0x18], r9
imul r11, rax
lea ecx, [rdx + r11*2]
mov r14, r11
shr r14, 0x20
cmp ecx, edx
setb r10b
shr r11d, 0x1f
xor r8d, r8d
lea eax, [r14 + r14]
or r11d, eax
mov eax, dword [rbx + 0x14]
add r11d, r9d
cmp r11d, r9d
setb r8b
xor edx, edx
add r11d, r10d
imul r12, rax
mov r9, r12
shr r9, 0x20
lea ebx, [rcx + r12*2]
cmp ebx, ecx
lea eax, [r9 + r9]
setb dl
shr r12d, 0x1f
xor ecx, ecx
or r12d, eax
add r12d, r11d
cmp r12d, r11d
setb cl
xor esi, esi
add r12d, edx
cmp dword [rsp + 0x20], r15d
setb sil
xor eax, eax
or esi, edi
mov rdi, qword [rsp + 0x10]
cmp edi, dword [rsp + 0xf0]
mov rdi, qword [rsp + 8]
setb al
or eax, dword [rsp + 0xf8]
add esi, eax
xor eax, eax
cmp edi, dword [rsp + 4]
setb al
or eax, dword [rsp]
add esi, eax
xor eax, eax
cmp r12d, edx
setb al
or eax, ecx
add esi, eax
xor eax, eax
cmp r11d, r10d
setb al
or eax, r8d
add esi, eax
xor eax, eax
cmp dword [rsp + 0x18], r13d
setb al
shr r9d, 0x1f
or eax, ebp
add esi, eax
add esi, r9d
shr r14d, 0x1f
mov rax, qword [rsp + 0x28]
add esi, r14d
mov r14, qword [rsp + 0xe8]
shr eax, 0x1f
xor edx, edx
add esi, eax
mov rax, qword [rsp + 0x68]
shr eax, 0x1f
add esi, eax
mov rax, qword [rsp + 0x80]
shr eax, 0x1f
add esi, eax
mov rax, qword [rsp + 0x78]
shr eax, 0x1f
add esi, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x2c], ebx
mov eax, dword [r14]
mov r9d, dword [r14 + 0x30]
imul r9, rax
mov r10d, dword [r14 + 4]
mov r13d, dword [r14 + 0x24]
lea ecx, [r12 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r12d
setb dl
mov qword [rsp + 0x60], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0x68], edx
or r9d, eax
xor eax, eax
add r9d, esi
cmp r9d, esi
setb al
add r9d, edx
xor r8d, r8d
mov dword [rsp + 0x28], eax
mov eax, dword [r14 + 0x2c]
mov qword [rsp + 0x20], r9
imul r10, rax
lea edx, [rcx + r10*2]
mov rax, r10
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x70], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 4], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [r14 + 0x28]
setb al
add r10d, r8d
xor r8d, r8d
mov dword [rsp], eax
mov eax, dword [r14 + 8]
mov qword [rsp + 0x80], r10
imul r9, rax
lea ecx, [rdx + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, edx
setb r8b
shr r9d, 0x1f
mov qword [rsp + 0x18], rax
add eax, eax
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
setb al
add r9d, r8d
mov dword [rsp + 0xf8], eax
mov eax, dword [r14 + 0xc]
mov qword [rsp + 0x78], r9
imul r13, rax
mov ebx, dword [r14 + 0x20]
mov esi, dword [r14 + 0x18]
lea edx, [rcx + r13*2]
xor r15d, r15d
mov rax, r13
shr rax, 0x20
cmp edx, ecx
setb r15b
mov qword [rsp + 8], rax
add eax, eax
shr r13d, 0x1f
xor ebp, ebp
or r13d, eax
mov eax, dword [r14 + 0x10]
add r13d, r9d
cmp r13d, r9d
mov r9d, dword [r14 + 0x1c]
setb bpl
xor r11d, r11d
add r13d, r15d
imul rbx, rax
mov rax, rbx
shr rax, 0x20
lea ecx, [rdx + rbx*2]
cmp ecx, edx
mov qword [rsp + 0x10], rax
setb r11b
add eax, eax
shr ebx, 0x1f
or ebx, eax
mov eax, dword [r14 + 0x14]
xor r10d, r10d
add ebx, r13d
cmp ebx, r13d
setb r10b
xor r8d, r8d
add ebx, r11d
imul r9, rax
mov rdi, r9
lea edx, [rcx + r9*2]
shr rdi, 0x20
cmp edx, ecx
lea eax, [rdi + rdi]
setb r8b
xor ecx, ecx
shr r9d, 0x1f
or r9d, eax
mov eax, edx
add r9d, ebx
cmp r9d, ebx
setb cl
xor r12d, r12d
add r9d, r8d
imul rsi, rsi
add rsi, rax
mov rdx, rsi
shr rdx, 0x20
cmp r9d, r8d
setb r12b
xor eax, eax
lea r14d, [r9 + rdx]
or r12d, ecx
mov rcx, qword [rsp + 0x78]
cmp ebx, r11d
setb al
or eax, r10d
add r12d, eax
xor eax, eax
cmp r13d, r15d
setb al
or eax, ebp
add r12d, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x80]
setb al
or eax, dword [rsp + 0xf8]
add r12d, eax
xor eax, eax
cmp ecx, dword [rsp + 4]
setb al
mov r11, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x20]
or eax, dword [rsp]
add r12d, eax
xor eax, eax
cmp ecx, dword [rsp + 0x68]
setb al
or eax, dword [rsp + 0x28]
add r12d, eax
mov rax, qword [rsp + 0x10]
cmp r14d, edx
adc r12d, 0
shr eax, 0x1f
xor edx, edx
shr edi, 0x1f
add r12d, edi
add r12d, eax
mov rax, qword [rsp + 8]
shr eax, 0x1f
add r12d, eax
mov rax, qword [rsp + 0x18]
shr eax, 0x1f
add r12d, eax
mov rax, qword [rsp + 0x70]
shr eax, 0x1f
add r12d, eax
mov rax, qword [rsp + 0x60]
shr eax, 0x1f
add r12d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x30], esi
mov eax, dword [r11 + 0x34]
mov r9d, dword [r11]
mov r10d, dword [r11 + 0x30]
imul r9, rax
lea ecx, [r14 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r14d
setb dl
mov qword [rsp + 0x50], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 4], edx
or r9d, eax
xor eax, eax
add r9d, r12d
cmp r9d, r12d
setb al
add r9d, edx
xor r8d, r8d
mov dword [rsp], eax
mov eax, dword [r11 + 4]
mov qword [rsp + 0x80], r9
imul r10, rax
lea edx, [rcx + r10*2]
mov rax, r10
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x18], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0x28], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [r11 + 8]
setb al
add r10d, r8d
mov dword [rsp + 0x68], eax
mov eax, dword [r11 + 0x2c]
mov qword [rsp + 0x78], r10
imul r9, rax
mov rax, r9
lea ecx, [rdx + r9*2]
shr rax, 0x20
xor r8d, r8d
mov qword [rsp + 8], rax
mov esi, dword [r11 + 0x10]
mov r12d, dword [r11 + 0x1c]
cmp ecx, edx
setb r8b
add eax, eax
shr r9d, 0x1f
or r9d, eax
xor eax, eax
mov dword [rsp + 0xf0], r8d
add r9d, r10d
cmp r9d, r10d
mov r10d, dword [r11 + 0x20]
setb al
add r9d, r8d
mov r8d, dword [r11 + 0x28]
mov dword [rsp + 0xf8], eax
mov eax, dword [r11 + 0xc]
xor r13d, r13d
mov qword [rsp + 0x70], r9
imul r8, rax
lea edx, [rcx + r8*2]
mov rax, r8
shr rax, 0x20
cmp edx, ecx
setb r13b
shr r8d, 0x1f
mov qword [rsp + 0x10], rax
add eax, eax
xor r15d, r15d
or r8d, eax
mov eax, dword [r11 + 0x24]
add r8d, r9d
cmp r8d, r9d
setb r15b
add r8d, r13d
xor edi, edi
mov qword [rsp + 0x60], r8
imul rsi, rax
lea ecx, [rdx + rsi*2]
mov rax, rsi
shr rax, 0x20
cmp ecx, edx
setb dil
shr esi, 0x1f
mov qword [rsp + 0x20], rax
add eax, eax
xor ebx, ebx
or esi, eax
mov eax, dword [r11 + 0x14]
add esi, r8d
cmp esi, r8d
setb bl
xor r9d, r9d
add esi, edi
imul r10, rax
mov r14, r10
lea edx, [rcx + r10*2]
shr r14, 0x20
cmp edx, ecx
lea eax, [r14 + r14]
setb r9b
shr r10d, 0x1f
xor r8d, r8d
or r10d, eax
mov eax, dword [r11 + 0x18]
add r10d, esi
cmp r10d, esi
setb r8b
add r10d, r9d
xor ecx, ecx
imul r12, rax
mov r11, r12
lea ebp, [rdx + r12*2]
shr r11, 0x20
cmp ebp, edx
lea eax, [r11 + r11]
setb cl
shr r12d, 0x1f
or r12d, eax
add r12d, r10d
xor eax, eax
cmp r12d, r10d
setb al
xor edx, edx
add r12d, ecx
cmp r12d, ecx
mov rcx, qword [rsp + 0x70]
setb dl
or edx, eax
xor eax, eax
cmp r10d, r9d
setb al
or eax, r8d
add edx, eax
xor eax, eax
cmp esi, edi
setb al
mov rsi, qword [rsp + 0xe8]
or eax, ebx
add edx, eax
xor eax, eax
cmp dword [rsp + 0x60], r13d
setb al
or eax, r15d
add edx, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
setb al
mov rcx, qword [rsp + 0x78]
or eax, dword [rsp + 0xf8]
add edx, eax
xor eax, eax
cmp ecx, dword [rsp + 0x28]
mov rcx, qword [rsp + 0x80]
setb al
or eax, dword [rsp + 0x68]
add edx, eax
xor eax, eax
cmp ecx, dword [rsp + 4]
setb al
shr r11d, 0x1f
shr r14d, 0x1f
or eax, dword [rsp]
xor r8d, r8d
add edx, eax
mov rax, qword [rsp + 0x20]
shr eax, 0x1f
add edx, r11d
add edx, r14d
add edx, eax
mov rax, qword [rsp + 0x10]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 8]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x18]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x34], ebp
mov eax, dword [rsi]
mov r9d, dword [rsi + 0x38]
imul r9, rax
lea ecx, [r12 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r12d
setb r8b
mov qword [rsp + 0x30], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 4], r8d
or r9d, eax
xor eax, eax
add r9d, edx
cmp r9d, edx
setb al
mov dword [rsp], eax
mov eax, dword [rsi + 0x34]
mov r10d, dword [rsi + 4]
add r9d, r8d
xor r8d, r8d
mov qword [rsp + 0x70], r9
imul r10, rax
lea edx, [rcx + r10*2]
mov rax, r10
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x38], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0x28], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [rsi + 0x30]
setb al
add r10d, r8d
xor r8d, r8d
mov dword [rsp + 0x68], eax
mov eax, dword [rsi + 8]
mov qword [rsp + 0x60], r10
imul r9, rax
lea ecx, [rdx + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, edx
setb r8b
mov qword [rsp + 0x48], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
mov r10d, dword [rsi + 0x2c]
setb al
add r9d, r8d
xor r8d, r8d
mov dword [rsp + 0xf8], eax
mov eax, dword [rsi + 0xc]
mov qword [rsp + 0x50], r9
imul r10, rax
lea edx, [rcx + r10*2]
mov rax, r10
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x58], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0x18], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
setb al
add r10d, r8d
mov r8d, dword [rsi + 0x10]
mov dword [rsp + 8], eax
mov eax, dword [rsi + 0x28]
xor r12d, r12d
mov qword [rsp + 0x80], r10
imul r8, rax
lea ecx, [rdx + r8*2]
mov rax, r8
shr rax, 0x20
cmp ecx, edx
setb r12b
shr r8d, 0x1f
mov qword [rsp + 0x10], rax
add eax, eax
xor ebp, ebp
or r8d, eax
add r8d, r10d
cmp r8d, r10d
setb bpl
mov eax, dword [rsi + 0x14]
mov edi, dword [rsi + 0x24]
mov r9d, dword [rsi + 0x20]
add r8d, r12d
xor r11d, r11d
imul rdi, rax
lea edx, [rcx + rdi*2]
mov r13, rdi
mov qword [rsp + 0x78], r8
shr r13, 0x20
cmp edx, ecx
setb r11b
shr edi, 0x1f
xor r10d, r10d
lea eax, [r13*2]
mov qword [rsp + 0x20], r13
mov r13, qword [rsp + 0x60]
or edi, eax
mov eax, dword [rsi + 0x18]
mov esi, dword [rsi + 0x1c]
add edi, r8d
cmp edi, r8d
setb r10b
xor r8d, r8d
add edi, r11d
imul r9, rax
mov rbx, r9
lea ecx, [rdx + r9*2]
shr rbx, 0x20
cmp ecx, edx
lea eax, [rbx + rbx]
setb r8b
shr r9d, 0x1f
xor edx, edx
or r9d, eax
mov eax, ecx
add r9d, edi
cmp r9d, edi
setb dl
xor r15d, r15d
add r9d, r8d
imul rsi, rsi
add rsi, rax
mov rax, qword [rsp + 0x50]
mov rcx, rsi
shr rcx, 0x20
cmp eax, dword [rsp + 0xf0]
setb r15b
xor eax, eax
lea r14d, [r9 + rcx]
or r15d, dword [rsp + 0xf8]
cmp r13d, dword [rsp + 0x28]
mov r13, qword [rsp + 0x70]
setb al
or eax, dword [rsp + 0x68]
add r15d, eax
xor eax, eax
cmp r13d, dword [rsp + 4]
setb al
or eax, dword [rsp]
add r15d, eax
xor eax, eax
cmp r9d, r8d
setb al
or eax, edx
mov rdx, qword [rsp + 0x80]
add r15d, eax
xor eax, eax
cmp edi, r11d
setb al
or eax, r10d
add r15d, eax
xor eax, eax
cmp dword [rsp + 0x78], r12d
setb al
or eax, ebp
add r15d, eax
xor eax, eax
cmp edx, dword [rsp + 0x18]
setb al
or eax, dword [rsp + 8]
mov r12, qword [rsp + 0xe8]
mov r13, qword [rsp + 0x20]
add r15d, eax
mov rax, qword [rsp + 0x10]
cmp r14d, ecx
adc r15d, 0
shr eax, 0x1f
xor edx, edx
shr ebx, 0x1f
shr r13d, 0x1f
add r15d, ebx
add r15d, r13d
add r15d, eax
mov rax, qword [rsp + 0x58]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0x48]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0x38]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0x30]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x38], esi
mov eax, dword [r12]
mov r10d, dword [r12 + 0x3c]
mov r9d, dword [r12 + 4]
imul r10, rax
lea ecx, [r14 + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, r14d
setb dl
mov qword [rsp + 0x40], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 4], edx
or r10d, eax
xor eax, eax
add r10d, r15d
cmp r10d, r15d
setb al
add r10d, edx
xor r8d, r8d
mov dword [rsp], eax
mov eax, dword [r12 + 0x38]
mov qword [rsp + 0x58], r10
imul r9, rax
lea edx, [rcx + r9*2]
mov rax, r9
shr rax, 0x20
cmp edx, ecx
setb r8b
shr r9d, 0x1f
mov qword [rsp + 0x80], rax
add eax, eax
mov dword [rsp + 0x28], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
mov r10d, dword [r12 + 8]
setb al
add r9d, r8d
xor r8d, r8d
mov dword [rsp + 0x68], eax
mov eax, dword [r12 + 0x34]
mov qword [rsp + 0x48], r9
imul r10, rax
lea ecx, [rdx + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, edx
setb r8b
mov qword [rsp + 0x78], rax
shr r10d, 0x1f
mov dword [rsp + 8], r8d
add eax, eax
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [r12 + 0x30]
setb al
add r10d, r8d
xor edx, edx
mov dword [rsp + 0x18], eax
mov eax, dword [r12 + 0xc]
mov qword [rsp + 0x38], r10
imul r9, rax
lea r8d, [rcx + r9*2]
mov rax, r9
shr rax, 0x20
cmp r8d, ecx
mov ecx, dword [r12 + 0x10]
setb dl
shr r9d, 0x1f
mov qword [rsp + 0x70], rax
add eax, eax
mov dword [rsp + 0xf0], edx
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
setb al
add r9d, edx
xor esi, esi
mov dword [rsp + 0xf8], eax
mov eax, dword [r12 + 0x2c]
mov qword [rsp + 0x30], r9
imul rcx, rax
lea edx, [r8 + rcx*2]
mov rax, rcx
shr rax, 0x20
cmp edx, r8d
setb sil
shr ecx, 0x1f
xor ebx, ebx
lea edi, [rax + rax]
mov qword [rsp + 0x60], rax
mov eax, dword [r12 + 0x14]
or edi, ecx
mov ecx, dword [r12 + 0x28]
add edi, r9d
cmp edi, r9d
setb bl
add edi, esi
imul rcx, rax
xor eax, eax
mov r9, rcx
lea r8d, [rdx + rcx*2]
shr r9, 0x20
cmp r8d, edx
lea r13d, [r9 + r9]
mov qword [rsp + 0x50], r9
setb al
shr ecx, 0x1f
xor r15d, r15d
or r13d, ecx
mov ecx, dword [r12 + 0x24]
mov dword [rsp + 0x10], eax
add r13d, edi
cmp r13d, edi
setb r15b
add r13d, eax
mov eax, dword [r12 + 0x18]
xor r11d, r11d
imul rcx, rax
mov rbp, rcx
shr rbp, 0x20
lea edx, [r8 + rcx*2]
cmp edx, r8d
lea r10d, [rbp*2]
setb r11b
shr ecx, 0x1f
or r10d, ecx
add r10d, r13d
xor r9d, r9d
mov eax, dword [r12 + 0x1c]
mov ecx, dword [r12 + 0x20]
cmp r10d, r13d
setb r9b
xor r8d, r8d
add r10d, r11d
imul rcx, rax
mov r12, rcx
lea r14d, [rdx + rcx*2]
shr r12, 0x20
cmp r14d, edx
lea eax, [r12 + r12]
setb r8b
shr ecx, 0x1f
or ecx, eax
add ecx, r10d
mov qword [rsp + 0x20], rcx
xor ecx, ecx
mov rax, qword [rsp + 0x20]
cmp eax, r10d
setb cl
add eax, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
cmp edi, esi
setb dl
xor eax, eax
or edx, ebx
mov rbx, qword [rsp + 0x30]
cmp ebx, dword [rsp + 0xf0]
mov rbx, qword [rsp + 0x38]
setb al
or eax, dword [rsp + 0xf8]
add edx, eax
xor eax, eax
cmp ebx, dword [rsp + 8]
mov rbx, qword [rsp + 0x48]
setb al
or eax, dword [rsp + 0x18]
add edx, eax
xor eax, eax
cmp ebx, dword [rsp + 0x28]
mov rbx, qword [rsp + 0x58]
setb al
or eax, dword [rsp + 0x68]
add edx, eax
xor eax, eax
cmp ebx, dword [rsp + 4]
mov rbx, qword [rsp + 0x20]
setb al
or eax, dword [rsp]
add edx, eax
xor eax, eax
cmp ebx, r8d
setb al
or eax, ecx
add edx, eax
xor eax, eax
cmp r10d, r11d
setb al
or eax, r9d
add edx, eax
xor eax, eax
cmp r13d, dword [rsp + 0x10]
setb al
shr ebp, 0x1f
or eax, r15d
add edx, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add edx, ebp
add edx, eax
mov rax, qword [rsp + 0x60]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x70]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x78]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x80]
xor r8d, r8d
shr r12d, 0x1f
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x40]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x3c], r14d
mov r14, qword [rsp + 0xe8]
add edx, r12d
mov eax, dword [r14 + 0x3c]
mov r10d, dword [r14 + 4]
mov r9d, dword [r14 + 0x38]
imul r10, rax
lea ecx, [rbx + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, ebx
setb r8b
mov qword [rsp + 0x80], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0x68], r8d
or r10d, eax
xor eax, eax
add r10d, edx
cmp r10d, edx
setb al
add r10d, r8d
xor r8d, r8d
mov dword [rsp + 4], eax
mov eax, dword [r14 + 8]
mov qword [rsp + 0x48], r10
imul r9, rax
lea edx, [rcx + r9*2]
mov rax, r9
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x78], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0x18], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
mov r10d, dword [r14 + 0x34]
setb al
add r9d, r8d
xor r8d, r8d
mov dword [rsp + 0x28], eax
mov eax, dword [r14 + 0xc]
mov qword [rsp + 0x38], r9
imul r10, rax
lea ecx, [rdx + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, edx
setb r8b
mov qword [rsp + 0x70], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0x10], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [r14 + 0x30]
setb al
add r10d, r8d
mov dword [rsp + 8], eax
mov eax, dword [r14 + 0x10]
mov qword [rsp + 0x30], r10
imul r9, rax
mov rax, r9
lea edx, [rcx + r9*2]
shr rax, 0x20
mov qword [rsp + 0x60], rax
mov r12d, dword [r14 + 0x2c]
mov edi, dword [r14 + 0x24]
xor r8d, r8d
cmp edx, ecx
setb r8b
add eax, eax
shr r9d, 0x1f
or r9d, eax
xor eax, eax
mov dword [rsp + 0xf0], r8d
add r9d, r10d
cmp r9d, r10d
mov r10d, dword [r14 + 0x28]
setb al
add r9d, r8d
xor esi, esi
mov dword [rsp + 0xf8], eax
mov eax, dword [r14 + 0x14]
mov qword [rsp + 0x40], r9
imul r12, rax
lea ecx, [rdx + r12*2]
mov rax, r12
shr rax, 0x20
cmp ecx, edx
setb sil
mov qword [rsp + 0x50], rax
add eax, eax
shr r12d, 0x1f
xor ebx, ebx
or r12d, eax
mov eax, dword [r14 + 0x18]
add r12d, r9d
cmp r12d, r9d
setb bl
xor r9d, r9d
add r12d, esi
imul r10, rax
mov rax, r10
shr rax, 0x20
lea edx, [rcx + r10*2]
cmp edx, ecx
mov qword [rsp + 0x58], rax
setb r9b
add eax, eax
shr r10d, 0x1f
or r10d, eax
mov eax, dword [r14 + 0x1c]
mov r14d, dword [r14 + 0x20]
xor r8d, r8d
add r10d, r12d
cmp r10d, r12d
setb r8b
xor r11d, r11d
add r10d, r9d
imul rdi, rax
mov rbp, rdi
lea ecx, [rdx + rdi*2]
shr rbp, 0x20
cmp ecx, edx
lea eax, [rbp*2]
setb r11b
shr edi, 0x1f
xor edx, edx
or edi, eax
mov eax, ecx
add edi, r10d
cmp edi, r10d
setb dl
xor r13d, r13d
add edi, r11d
imul r14, r14
add r14, rax
mov rcx, r14
shr rcx, 0x20
cmp r10d, r9d
setb r13b
xor eax, eax
lea r15d, [rdi + rcx]
or r13d, r8d
cmp r12d, esi
setb al
or eax, ebx
mov r8, qword [rsp + 0x40]
add r13d, eax
xor eax, eax
cmp r8d, dword [rsp + 0xf0]
setb al
mov r8, qword [rsp + 0x30]
or eax, dword [rsp + 0xf8]
add r13d, eax
xor eax, eax
cmp r8d, dword [rsp + 0x10]
setb al
mov r8, qword [rsp + 0x38]
or eax, dword [rsp + 8]
add r13d, eax
xor eax, eax
cmp r8d, dword [rsp + 0x18]
setb al
mov r8, qword [rsp + 0x48]
or eax, dword [rsp + 0x28]
add r13d, eax
xor eax, eax
cmp r8d, dword [rsp + 0x68]
setb al
or eax, dword [rsp + 4]
add r13d, eax
xor eax, eax
cmp edi, r11d
mov r11, qword [rsp + 0xe8]
setb al
or eax, edx
add r13d, eax
mov rax, qword [rsp + 0x58]
cmp r15d, ecx
adc r13d, 0
shr eax, 0x1f
shr ebp, 0x1f
add r13d, ebp
xor edx, edx
add r13d, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add r13d, eax
mov rax, qword [rsp + 0x60]
shr eax, 0x1f
add r13d, eax
mov rax, qword [rsp + 0x70]
shr eax, 0x1f
add r13d, eax
mov rax, qword [rsp + 0x78]
shr eax, 0x1f
add r13d, eax
mov rax, qword [rsp + 0x80]
shr eax, 0x1f
add r13d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x40], r14d
mov eax, dword [r11 + 8]
mov r9d, dword [r11 + 0x3c]
mov r10d, dword [r11 + 0x38]
imul r9, rax
lea ecx, [r15 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r15d
setb dl
shr r9d, 0x1f
mov qword [rsp + 0x78], rax
add eax, eax
mov dword [rsp + 0x18], edx
or r9d, eax
xor eax, eax
add r9d, r13d
cmp r9d, r13d
setb al
add r9d, edx
mov dword [rsp + 0x28], eax
mov eax, dword [r11 + 0xc]
mov qword [rsp + 0x48], r9
imul r10, rax
mov rax, r10
mov esi, dword [r11 + 0x18]
shr rax, 0x20
xor r8d, r8d
mov qword [rsp + 0x70], rax
lea edx, [rcx + r10*2]
cmp edx, ecx
setb r8b
add eax, eax
shr r10d, 0x1f
or r10d, eax
xor eax, eax
mov dword [rsp + 0x10], r8d
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [r11 + 0x10]
setb al
add r10d, r8d
xor r8d, r8d
mov dword [rsp + 8], eax
mov eax, dword [r11 + 0x34]
mov qword [rsp + 0x38], r10
imul r9, rax
lea ecx, [rdx + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, edx
setb r8b
mov qword [rsp + 0x60], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
mov r10d, dword [r11 + 0x28]
setb al
add r9d, r8d
mov r8d, dword [r11 + 0x30]
mov dword [rsp + 0xf8], eax
mov eax, dword [r11 + 0x14]
xor r13d, r13d
mov qword [rsp + 0x30], r9
imul r8, rax
lea edx, [rcx + r8*2]
mov rax, r8
shr rax, 0x20
cmp edx, ecx
setb r13b
shr r8d, 0x1f
mov qword [rsp + 0x50], rax
add eax, eax
xor r15d, r15d
or r8d, eax
mov eax, dword [r11 + 0x2c]
add r8d, r9d
cmp r8d, r9d
setb r15b
add r8d, r13d
xor edi, edi
mov qword [rsp + 0x40], r8
imul rsi, rax
lea ecx, [rdx + rsi*2]
mov rax, rsi
shr rax, 0x20
cmp ecx, edx
setb dil
shr esi, 0x1f
xor ebx, ebx
mov qword [rsp + 0x58], rax
add eax, eax
or esi, eax
mov eax, dword [r11 + 0x1c]
add esi, r8d
cmp esi, r8d
setb bl
add esi, edi
imul r10, rax
mov r14, r10
shr r14, 0x20
lea edx, [rcx + r10*2]
mov r12d, dword [r11 + 0x20]
xor r9d, r9d
cmp edx, ecx
setb r9b
shr r10d, 0x1f
xor r8d, r8d
lea eax, [r14 + r14]
or r10d, eax
mov eax, dword [r11 + 0x24]
add r10d, esi
cmp r10d, esi
setb r8b
xor ecx, ecx
add r10d, r9d
imul r12, rax
mov r11, r12
lea ebp, [rdx + r12*2]
shr r11, 0x20
cmp ebp, edx
lea eax, [r11 + r11]
setb cl
shr r12d, 0x1f
or r12d, eax
xor eax, eax
add r12d, r10d
cmp r12d, r10d
setb al
xor edx, edx
add r12d, ecx
cmp r12d, ecx
mov rcx, qword [rsp + 0x30]
setb dl
or edx, eax
xor eax, eax
cmp r10d, r9d
setb al
or eax, r8d
add edx, eax
xor eax, eax
cmp esi, edi
setb al
or eax, ebx
add edx, eax
xor eax, eax
cmp dword [rsp + 0x40], r13d
setb al
or eax, r15d
add edx, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x38]
setb al
or eax, dword [rsp + 0xf8]
add edx, eax
xor eax, eax
cmp ecx, dword [rsp + 0x10]
mov rcx, qword [rsp + 0x48]
setb al
or eax, dword [rsp + 8]
add edx, eax
xor eax, eax
cmp ecx, dword [rsp + 0x18]
setb al
shr r11d, 0x1f
shr r14d, 0x1f
or eax, dword [rsp + 0x28]
add edx, eax
mov rax, qword [rsp + 0x58]
shr eax, 0x1f
add edx, r11d
add edx, r14d
add edx, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x60]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x70]
shr eax, 0x1f
add edx, eax
mov r14, qword [rsp + 0xe8]
mov rax, qword [rsp + 0x78]
xor r8d, r8d
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x44], ebp
mov eax, dword [r14 + 0xc]
mov r9d, dword [r14 + 0x3c]
imul r9, rax
mov r10d, dword [r14 + 0x10]
mov r13d, dword [r14 + 0x30]
lea ecx, [r12 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r12d
setb r8b
mov qword [rsp + 0x70], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, edx
cmp r9d, edx
setb al
add r9d, r8d
xor r8d, r8d
mov dword [rsp + 0xf8], eax
mov eax, dword [r14 + 0x38]
mov qword [rsp + 0x40], r9
imul r10, rax
lea edx, [rcx + r10*2]
mov rax, r10
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x60], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0x18], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [r14 + 0x34]
setb al
add r10d, r8d
xor r8d, r8d
mov dword [rsp + 0x28], eax
mov eax, dword [r14 + 0x14]
mov qword [rsp + 0x38], r10
imul r9, rax
lea ecx, [rdx + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, edx
setb r8b
mov qword [rsp + 0x50], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0x10], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
setb al
add r9d, r8d
xor r12d, r12d
mov dword [rsp + 8], eax
mov eax, dword [r14 + 0x18]
mov qword [rsp + 0x30], r9
imul r13, rax
lea edx, [rcx + r13*2]
mov rax, r13
shr rax, 0x20
cmp edx, ecx
setb r12b
shr r13d, 0x1f
mov qword [rsp + 0x58], rax
add eax, eax
or r13d, eax
mov eax, dword [r14 + 0x2c]
mov edi, dword [r14 + 0x1c]
mov r10d, dword [r14 + 0x20]
add r13d, r9d
xor ebp, ebp
cmp r13d, r9d
setb bpl
xor ebx, ebx
add r13d, r12d
imul rdi, rax
mov rax, rdi
shr rax, 0x20
lea r8d, [rdx + rdi*2]
mov qword [rsp + 0x48], rax
cmp r8d, edx
setb bl
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [r14 + 0x28]
xor r11d, r11d
add edi, r13d
cmp edi, r13d
setb r11b
xor r9d, r9d
add edi, ebx
imul r10, rax
mov rsi, r10
lea ecx, [r8 + r10*2]
shr rsi, 0x20
cmp ecx, r8d
mov r8d, dword [r14 + 0x24]
lea eax, [rsi + rsi]
setb r9b
xor edx, edx
shr r10d, 0x1f
or r10d, eax
mov eax, ecx
add r10d, edi
cmp r10d, edi
setb dl
xor r15d, r15d
add r10d, r9d
imul r8, r8
add r8, rax
mov rax, qword [rsp + 0x40]
mov rcx, r8
shr rcx, 0x20
cmp eax, dword [rsp + 0xf0]
setb r15b
xor eax, eax
lea r14d, [r10 + rcx]
or r15d, dword [rsp + 0xf8]
cmp r10d, r9d
setb al
or eax, edx
mov rdx, qword [rsp + 0x30]
add r15d, eax
xor eax, eax
cmp edi, ebx
setb al
or eax, r11d
add r15d, eax
xor eax, eax
cmp r13d, r12d
setb al
or eax, ebp
add r15d, eax
xor eax, eax
cmp edx, dword [rsp + 0x10]
mov rdx, qword [rsp + 0x38]
setb al
or eax, dword [rsp + 8]
add r15d, eax
xor eax, eax
cmp edx, dword [rsp + 0x18]
setb al
or eax, dword [rsp + 0x28]
add r15d, eax
cmp r14d, ecx
adc r15d, 0
mov rax, qword [rsp + 0x48]
shr esi, 0x1f
shr eax, 0x1f
add r15d, esi
mov rsi, qword [rsp + 0xe8]
add r15d, eax
mov rax, qword [rsp + 0x58]
xor edx, edx
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0x60]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0x70]
shr eax, 0x1f
add r15d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x48], r8d
mov eax, dword [rsi + 0x3c]
mov r9d, dword [rsi + 0x10]
imul r9, rax
mov r10d, dword [rsi + 0x38]
lea ecx, [r14 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r14d
setb dl
shr r9d, 0x1f
mov qword [rsp + 0x60], rax
add eax, eax
mov dword [rsp + 8], edx
or r9d, eax
xor eax, eax
add r9d, r15d
cmp r9d, r15d
setb al
add r9d, edx
xor r8d, r8d
mov dword [rsp + 0x18], eax
mov eax, dword [rsi + 0x14]
mov qword [rsp + 0x38], r9
imul r10, rax
lea edx, [rcx + r10*2]
mov rax, r10
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x50], rax
add eax, eax
shr r10d, 0x1f
mov dword [rsp + 0xf8], r8d
or r10d, eax
xor eax, eax
add r10d, r9d
cmp r10d, r9d
mov r9d, dword [rsi + 0x18]
setb al
add r10d, r8d
xor r8d, r8d
mov dword [rsp + 0x10], eax
mov eax, dword [rsi + 0x34]
mov qword [rsp + 0x30], r10
imul r9, rax
lea ecx, [rdx + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, edx
setb r8b
shr r9d, 0x1f
xor r15d, r15d
mov qword [rsp + 0x58], rax
add eax, eax
mov dword [rsp + 0xf0], r8d
or r9d, eax
add r9d, r10d
cmp r9d, r10d
setb r15b
mov eax, dword [rsi + 0x1c]
mov edi, dword [rsi + 0x30]
mov ebp, dword [rsi + 0x20]
imul rdi, rax
mov r13d, dword [rsi + 0x28]
add r9d, r8d
xor r11d, r11d
lea edx, [rcx + rdi*2]
mov rax, rdi
mov qword [rsp + 0x40], r9
shr rax, 0x20
cmp edx, ecx
setb r11b
mov qword [rsp + 0x48], rax
add eax, eax
xor r8d, r8d
shr edi, 0x1f
or edi, eax
mov eax, dword [rsi + 0x2c]
add edi, r9d
cmp edi, r9d
setb r8b
xor ebx, ebx
add edi, r11d
imul rbp, rax
mov r12, rbp
shr r12, 0x20
lea ecx, [rdx + rbp*2]
cmp ecx, edx
lea eax, [r12 + r12]
setb bl
shr ebp, 0x1f
xor r10d, r10d
or ebp, eax
mov eax, dword [rsi + 0x24]
add ebp, edi
cmp ebp, edi
setb r10b
xor edx, edx
add ebp, ebx
imul r13, rax
mov r9, r13
shr r9, 0x20
lea esi, [rcx + r13*2]
cmp esi, ecx
lea eax, [r9 + r9]
setb dl
shr r13d, 0x1f
xor ecx, ecx
or r13d, eax
add r13d, ebp
cmp r13d, ebp
setb cl
xor r14d, r14d
add r13d, edx
cmp edi, r11d
setb r14b
xor eax, eax
or r14d, r8d
mov r8, qword [rsp + 0x40]
cmp r8d, dword [rsp + 0xf0]
mov r8, qword [rsp + 0x30]
setb al
or eax, r15d
add r14d, eax
xor eax, eax
cmp r8d, dword [rsp + 0xf8]
mov r8, qword [rsp + 0x38]
setb al
or eax, dword [rsp + 0x10]
add r14d, eax
xor eax, eax
cmp r8d, dword [rsp + 8]
setb al
or eax, dword [rsp + 0x18]
add r14d, eax
xor eax, eax
cmp r13d, edx
setb al
or eax, ecx
add r14d, eax
xor eax, eax
cmp ebp, ebx
setb al
shr r9d, 0x1f
shr r12d, 0x1f
or eax, r10d
xor edx, edx
add r14d, eax
mov rax, qword [rsp + 0x48]
shr eax, 0x1f
add r14d, r9d
add r14d, r12d
add r14d, eax
mov rax, qword [rsp + 0x58]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0x60]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x4c], esi
mov rsi, qword [rsp + 0xe8]
mov eax, dword [rsi + 0x14]
mov r10d, dword [rsi + 0x3c]
mov r9d, dword [rsi + 0x38]
imul r10, rax
lea ecx, [r10*2]
mov rax, r10
shr rax, 0x20
add ecx, r13d
mov qword [rsp + 0x50], rax
cmp ecx, r13d
mov r13d, dword [rsi + 0x1c]
setb dl
add eax, eax
shr r10d, 0x1f
or r10d, eax
xor eax, eax
mov dword [rsp + 0x10], edx
add r10d, r14d
cmp r10d, r14d
setb al
add r10d, edx
xor r8d, r8d
mov dword [rsp + 8], eax
mov eax, dword [rsi + 0x18]
mov qword [rsp + 0x30], r10
imul r9, rax
lea edx, [rcx + r9*2]
mov rax, r9
shr rax, 0x20
cmp edx, ecx
setb r8b
mov qword [rsp + 0x58], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, r10d
cmp r9d, r10d
setb al
add r9d, r8d
xor r12d, r12d
mov dword [rsp + 0xf8], eax
mov eax, dword [rsi + 0x34]
mov qword [rsp + 0x40], r9
imul r13, rax
lea ecx, [rdx + r13*2]
mov rax, r13
shr rax, 0x20
cmp ecx, edx
setb r12b
shr r13d, 0x1f
mov qword [rsp + 0x48], rax
add eax, eax
or r13d, eax
add r13d, r9d
mov eax, dword [rsi + 0x20]
mov edi, dword [rsi + 0x30]
mov r10d, dword [rsi + 0x24]
xor r15d, r15d
cmp r13d, r9d
setb r15b
xor ebx, ebx
add r13d, r12d
imul rdi, rax
mov rax, rdi
shr rax, 0x20
lea r8d, [rcx + rdi*2]
mov qword [rsp + 0x38], rax
cmp r8d, ecx
setb bl
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [rsi + 0x2c]
xor r11d, r11d
add edi, r13d
cmp edi, r13d
setb r11b
xor r9d, r9d
add edi, ebx
imul r10, rax
mov rbp, r10
shr rbp, 0x20
lea edx, [r8 + r10*2]
cmp edx, r8d
mov r8d, dword [rsi + 0x28]
lea eax, [rbp*2]
setb r9b
xor ecx, ecx
shr r10d, 0x1f
or r10d, eax
mov eax, edx
add r10d, edi
cmp r10d, edi
setb cl
xor r14d, r14d
add r10d, r9d
imul r8, r8
add r8, rax
mov rdx, r8
shr rdx, 0x20
cmp r10d, r9d
setb r14b
xor eax, eax
lea esi, [r10 + rdx]
or r14d, ecx
mov rcx, qword [rsp + 0x40]
cmp edi, ebx
setb al
or eax, r11d
add r14d, eax
xor eax, eax
cmp r13d, r12d
setb al
or eax, r15d
add r14d, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x30]
setb al
or eax, dword [rsp + 0xf8]
add r14d, eax
xor eax, eax
cmp ecx, dword [rsp + 0x10]
setb al
or eax, dword [rsp + 8]
add r14d, eax
mov rax, qword [rsp + 0x38]
cmp esi, edx
adc r14d, 0
shr eax, 0x1f
shr ebp, 0x1f
add r14d, ebp
add r14d, eax
mov rax, qword [rsp + 0x48]
shr eax, 0x1f
mov rdi, qword [rsp + 0xe8]
add r14d, eax
mov rax, qword [rsp + 0x58]
shr eax, 0x1f
xor edx, edx
add r14d, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x50], r8d
mov eax, dword [rdi + 0x18]
mov r9d, dword [rdi + 0x3c]
mov r8d, dword [rdi + 0x38]
mov r10d, dword [rdi + 0x20]
mov ebx, dword [rdi + 0x30]
imul r9, rax
lea ecx, [rsi + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, esi
setb dl
mov qword [rsp + 0x50], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], edx
or r9d, eax
xor eax, eax
add r9d, r14d
cmp r9d, r14d
setb al
add r9d, edx
xor r12d, r12d
mov dword [rsp + 0xf8], eax
mov eax, dword [rdi + 0x1c]
mov qword [rsp + 0x30], r9
imul r8, rax
lea edx, [rcx + r8*2]
mov rax, r8
shr rax, 0x20
cmp edx, ecx
setb r12b
shr r8d, 0x1f
mov qword [rsp + 0x58], rax
add eax, eax
xor esi, esi
or r8d, eax
mov eax, dword [rdi + 0x34]
add r8d, r9d
cmp r8d, r9d
setb sil
add r8d, r12d
xor r13d, r13d
mov qword [rsp + 0x40], r8
imul r10, rax
lea ecx, [rdx + r10*2]
mov rax, r10
shr rax, 0x20
cmp ecx, edx
setb r13b
shr r10d, 0x1f
xor ebp, ebp
mov qword [rsp + 0x48], rax
add eax, eax
or r10d, eax
mov eax, dword [rdi + 0x24]
add r10d, r8d
cmp r10d, r8d
setb bpl
add r10d, r13d
xor r11d, r11d
mov qword [rsp + 0x38], r10
imul rbx, rax
lea edx, [rcx + rbx*2]
mov r14, rbx
shr r14, 0x20
cmp edx, ecx
setb r11b
lea eax, [r14 + r14]
shr ebx, 0x1f
or ebx, eax
mov eax, dword [rdi + 0x2c]
mov r15d, dword [rdi + 0x28]
xor r9d, r9d
add ebx, r10d
cmp ebx, r10d
setb r9b
xor r8d, r8d
add ebx, r11d
imul r15, rax
mov r10, r15
lea edi, [rdx + r15*2]
shr r10, 0x20
cmp edi, edx
lea eax, [r10 + r10]
setb r8b
shr r15d, 0x1f
xor ecx, ecx
or r15d, eax
add r15d, ebx
cmp r15d, ebx
setb cl
xor edx, edx
add r15d, r8d
cmp dword [rsp + 0x40], r12d
setb dl
xor eax, eax
or edx, esi
mov rsi, qword [rsp + 0x30]
cmp esi, dword [rsp + 0xf0]
setb al
or eax, dword [rsp + 0xf8]
add edx, eax
xor eax, eax
cmp r15d, r8d
setb al
or eax, ecx
add edx, eax
xor eax, eax
cmp ebx, r11d
mov r11, qword [rsp + 0xe8]
setb al
or eax, r9d
add edx, eax
xor eax, eax
cmp dword [rsp + 0x38], r13d
setb al
shr r10d, 0x1f
shr r14d, 0x1f
or eax, ebp
xor r8d, r8d
add edx, eax
mov rax, qword [rsp + 0x48]
shr eax, 0x1f
add edx, r10d
add edx, r14d
add edx, eax
mov rax, qword [rsp + 0x58]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0x50]
shr eax, 0x1f
add edx, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x54], edi
mov eax, dword [r11 + 0x1c]
mov r9d, dword [r11 + 0x3c]
imul r9, rax
lea ecx, [r15 + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, r15d
setb r8b
mov qword [rsp + 0x48], rax
add eax, eax
shr r9d, 0x1f
mov dword [rsp + 0xf0], r8d
or r9d, eax
xor eax, eax
add r9d, edx
cmp r9d, edx
setb al
mov ebp, dword [r11 + 0x24]
add r9d, r8d
mov r8d, dword [r11 + 0x20]
mov dword [rsp + 0xf8], eax
mov eax, dword [r11 + 0x38]
xor r12d, r12d
mov qword [rsp + 0x30], r9
imul r8, rax
lea edx, [rcx + r8*2]
mov rax, r8
shr rax, 0x20
cmp edx, ecx
setb r12b
shr r8d, 0x1f
mov qword [rsp + 0x38], rax
add eax, eax
xor r15d, r15d
or r8d, eax
mov eax, dword [r11 + 0x34]
add r8d, r9d
cmp r8d, r9d
mov r9d, dword [r11 + 0x30]
setb r15b
add r8d, r12d
xor edi, edi
mov qword [rsp + 0x40], r8
imul rbp, rax
lea ecx, [rdx + rbp*2]
mov r13, rbp
shr r13, 0x20
cmp ecx, edx
setb dil
shr ebp, 0x1f
xor r10d, r10d
lea eax, [r13*2]
or ebp, eax
mov eax, dword [r11 + 0x28]
mov r11d, dword [r11 + 0x2c]
add ebp, r8d
cmp ebp, r8d
setb r10b
xor r8d, r8d
add ebp, edi
imul r9, rax
mov rsi, r9
lea edx, [rcx + r9*2]
shr rsi, 0x20
cmp edx, ecx
lea eax, [rsi + rsi]
setb r8b
shr r9d, 0x1f
xor ecx, ecx
or r9d, eax
mov eax, edx
add r9d, ebp
cmp r9d, ebp
setb cl
xor r14d, r14d
add r9d, r8d
imul r11, r11
add r11, rax
mov rdx, r11
shr rdx, 0x20
cmp r9d, r8d
setb r14b
xor eax, eax
lea ebx, [r9 + rdx]
or r14d, ecx
mov rcx, qword [rsp + 0x30]
cmp ebp, edi
setb al
or eax, r10d
add r14d, eax
xor eax, eax
cmp dword [rsp + 0x40], r12d
setb al
or eax, r15d
add r14d, eax
xor eax, eax
cmp ecx, dword [rsp + 0xf0]
setb al
or eax, dword [rsp + 0xf8]
mov rdi, qword [rsp + 0xe8]
add r14d, eax
mov rax, qword [rsp + 0x38]
cmp ebx, edx
adc r14d, 0
shr eax, 0x1f
shr esi, 0x1f
add r14d, esi
shr r13d, 0x1f
xor edx, edx
add r14d, r13d
add r14d, eax
mov rax, qword [rsp + 0x48]
shr eax, 0x1f
add r14d, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x58], r11d
mov eax, dword [rdi + 0x3c]
mov r9d, dword [rdi + 0x20]
mov r12d, dword [rdi + 0x38]
imul r9, rax
lea ecx, [rbx + r9*2]
mov rax, r9
shr rax, 0x20
cmp ecx, ebx
setb dl
shr r9d, 0x1f
mov qword [rsp + 0x38], rax
add eax, eax
mov dword [rsp + 0xf0], edx
or r9d, eax
xor eax, eax
add r9d, r14d
cmp r9d, r14d
setb al
add r9d, edx
xor r15d, r15d
mov dword [rsp + 0xf8], eax
mov eax, dword [rdi + 0x24]
mov qword [rsp + 0x40], r9
imul r12, rax
lea r8d, [rcx + r12*2]
mov rax, r12
shr rax, 0x20
cmp r8d, ecx
mov ecx, dword [rdi + 0x28]
setb r15b
shr r12d, 0x1f
xor ebx, ebx
mov qword [rsp + 0x30], rax
add eax, eax
or r12d, eax
mov eax, dword [rdi + 0x34]
add r12d, r9d
cmp r12d, r9d
setb bl
xor esi, esi
add r12d, r15d
imul rcx, rax
mov eax, dword [rdi + 0x2c]
mov r13, rcx
lea edx, [r8 + rcx*2]
shr r13, 0x20
cmp edx, r8d
lea r11d, [r13*2]
setb sil
shr ecx, 0x1f
xor r10d, r10d
or r11d, ecx
mov ecx, dword [rdi + 0x30]
add r11d, r12d
cmp r11d, r12d
setb r10b
add r11d, esi
xor r8d, r8d
imul rcx, rax
mov r9, rcx
lea edi, [rdx + rcx*2]
shr r9, 0x20
cmp edi, edx
setb r8b
mov rdx, qword [rsp + 0x40]
shr ecx, 0x1f
lea r14d, [r9 + r9]
or r14d, ecx
xor ecx, ecx
add r14d, r11d
cmp r14d, r11d
setb cl
xor ebp, ebp
add r14d, r8d
cmp r12d, r15d
setb bpl
xor eax, eax
or ebp, ebx
cmp edx, dword [rsp + 0xf0]
setb al
or eax, dword [rsp + 0xf8]
add ebp, eax
xor eax, eax
cmp r14d, r8d
setb al
or eax, ecx
add ebp, eax
xor eax, eax
cmp r11d, esi
setb al
shr r13d, 0x1f
shr r9d, 0x1f
or eax, r10d
mov r10, qword [rsp + 0xe8]
add ebp, eax
mov rax, qword [rsp + 0x30]
shr eax, 0x1f
add ebp, r9d
add ebp, r13d
xor r13d, r13d
add ebp, eax
mov rax, qword [rsp + 0x38]
shr eax, 0x1f
add ebp, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x5c], edi
mov eax, dword [r10 + 0x24]
mov ecx, dword [r10 + 0x3c]
mov r9d, dword [r10 + 0x34]
imul rcx, rax
lea edx, [r14 + rcx*2]
mov rax, rcx
shr rax, 0x20
cmp edx, r14d
mov r14d, dword [r10 + 0x38]
setb r13b
lea r12d, [rax + rax]
shr ecx, 0x1f
or r12d, ecx
mov qword [rsp + 0xf0], rax
mov eax, dword [r10 + 0x28]
add r12d, ebp
xor r15d, r15d
cmp r12d, ebp
setb r15b
xor esi, esi
add r12d, r13d
imul r14, rax
mov rax, r14
shr rax, 0x20
lea ecx, [rdx + r14*2]
cmp ecx, edx
mov qword [rsp + 0xf8], rax
setb sil
shr r14d, 0x1f
add eax, eax
or r14d, eax
mov eax, dword [r10 + 0x2c]
xor ebx, ebx
add r14d, r12d
cmp r14d, r12d
setb bl
add r14d, esi
imul r9, rax
mov r10d, dword [r10 + 0x30]
xor r8d, r8d
lea edx, [rcx + r9*2]
mov rbp, r9
shr rbp, 0x20
cmp edx, ecx
setb r8b
shr r9d, 0x1f
xor ecx, ecx
lea eax, [rbp*2]
or r9d, eax
mov eax, edx
add r9d, r14d
cmp r9d, r14d
setb cl
xor edi, edi
add r9d, r8d
imul r10, r10
add r10, rax
mov rdx, r10
shr rdx, 0x20
cmp r9d, r8d
setb dil
xor eax, eax
lea r11d, [r9 + rdx]
mov r9, qword [rsp + 0xe8]
or edi, ecx
cmp r14d, esi
setb al
or eax, ebx
add edi, eax
xor eax, eax
cmp r12d, r13d
setb al
or eax, r15d
add edi, eax
mov rax, qword [rsp + 0xf0]
cmp r11d, edx
adc edi, 0
shr eax, 0x1f
shr ebp, 0x1f
add edi, eax
mov rax, qword [rsp + 0xf8]
xor r15d, r15d
add edi, ebp
shr eax, 0x1f
add edi, eax
mov rax, qword [rsp + 0xe0]
mov dword [rax + 0x60], r10d
mov eax, dword [r9 + 0x28]
mov r12d, dword [r9 + 0x3c]
imul r12, rax
lea ecx, [r11 + r12*2]
mov r13, r12
shr r13, 0x20
cmp ecx, r11d
setb r15b
shr r12d, 0x1f
xor ebp, ebp
lea eax, [r13*2]
or r12d, eax
mov eax, dword [r9 + 0x2c]
add r12d, edi
cmp r12d, edi
mov edi, dword [r9 + 0x38]
setb bpl
add r12d, r15d
xor r10d, r10d
imul rdi, rax
mov r14, rdi
lea edx, [rcx + rdi*2]
shr r14, 0x20
cmp edx, ecx
lea eax, [r14 + r14]
setb r10b
shr edi, 0x1f
xor r8d, r8d
or edi, eax
add edi, r12d
cmp edi, r12d
setb r8b
mov eax, dword [r9 + 0x34]
mov esi, dword [r9 + 0x30]
xor ecx, ecx
add edi, r10d
imul rsi, rax
lea r11d, [rdx + rsi*2]
mov r9, rsi
shr r9, 0x20
cmp r11d, edx
setb cl
shr esi, 0x1f
lea eax, [r9 + r9]
or esi, eax
xor eax, eax
add esi, edi
cmp esi, edi
setb al
xor ebx, ebx
add esi, ecx
cmp esi, ecx
setb bl
or ebx, eax
xor eax, eax
cmp edi, r10d
setb al
or eax, r8d
add ebx, eax
xor eax, eax
cmp r12d, r15d
mov r12, qword [rsp + 0xe8]
setb al
shr r14d, 0x1f
or eax, ebp
shr r9d, 0x1f
shr r13d, 0x1f
add ebx, eax
xor ebp, ebp
add ebx, r9d
add ebx, r14d
add ebx, r13d
mov r13, qword [rsp + 0xe0]
mov dword [r13 + 0x64], r11d
mov eax, dword [r12 + 0x2c]
mov r14d, dword [r12 + 0x3c]
mov r11d, dword [r12 + 0x30]
mov r9d, dword [r12 + 0x34]
imul r14, rax
lea edx, [rsi + r14*2]
mov r15, r14
shr r15, 0x20
cmp edx, esi
setb bpl
shr r14d, 0x1f
xor edi, edi
lea eax, [r15 + r15]
or r14d, eax
mov eax, dword [r12 + 0x38]
add r14d, ebx
cmp r14d, ebx
setb dil
xor r8d, r8d
add r14d, ebp
imul r11, rax
mov rsi, r11
lea ecx, [rdx + r11*2]
shr rsi, 0x20
cmp ecx, edx
lea eax, [rsi + rsi]
setb r8b
shr r11d, 0x1f
xor edx, edx
or r11d, eax
mov eax, ecx
add r11d, r14d
cmp r11d, r14d
setb dl
add r11d, r8d
imul r9, r9
add r9, rax
mov rcx, r9
shr rcx, 0x20
xor ebx, ebx
cmp r11d, r8d
lea r10d, [r11 + rcx]
setb bl
xor eax, eax
mov dword [r13 + 0x68], r9d
or ebx, edx
cmp r14d, ebp
mov ebp, dword [r12 + 0x30]
setb al
or eax, edi
add ebx, eax
mov eax, dword [r12 + 0x3c]
cmp r10d, ecx
adc ebx, 0
shr esi, 0x1f
xor edi, edi
add ebx, esi
mov esi, dword [r12 + 0x38]
shr r15d, 0x1f
imul rbp, rax
lea edx, [r10 + rbp*2]
add ebx, r15d
mov r14, rbp
shr r14, 0x20
cmp edx, r10d
setb dil
xor r9d, r9d
shr ebp, 0x1f
lea eax, [r14 + r14]
or ebp, eax
mov eax, dword [r12 + 0x34]
add ebp, ebx
cmp ebp, ebx
setb r9b
xor ecx, ecx
add ebp, edi
imul rsi, rax
mov r8, rsi
lea r10d, [rdx + rsi*2]
shr r8, 0x20
cmp r10d, edx
mov dword [r13 + 0x6c], r10d
mov r10d, dword [r12 + 0x3c]
setb cl
shr esi, 0x1f
lea eax, [r8 + r8]
or esi, eax
xor eax, eax
add esi, ebp
cmp esi, ebp
setb al
xor r11d, r11d
add esi, ecx
cmp esi, ecx
setb r11b
or r11d, eax
xor eax, eax
cmp ebp, edi
setb al
shr r8d, 0x1f
shr r14d, 0x1f
or eax, r9d
xor r9d, r9d
add r11d, eax
mov eax, dword [r12 + 0x34]
add r11d, r8d
add r11d, r14d
imul r10, rax
mov rbx, r10
lea edx, [rsi + r10*2]
shr rbx, 0x20
cmp edx, esi
lea eax, [rbx + rbx]
setb r9b
shr r10d, 0x1f
xor ecx, ecx
or r10d, eax
add r10d, r11d
cmp r10d, r11d
setb cl
mov r8d, dword [r12 + 0x38]
add r10d, r9d
xor r11d, r11d
mov eax, edx
imul r8, r8
add r8, rax
mov dword [r13 + 0x70], r8d
mov rax, r8
shr rax, 0x20
cmp r10d, r9d
mov r9d, dword [r12 + 0x3c]
setb r11b
lea edx, [r10 + rax]
or r11d, ecx
cmp edx, eax
mov eax, dword [r12 + 0x38]
adc r11d, 0
xor r8d, r8d
shr ebx, 0x1f
add r11d, ebx
imul r9, rax
lea ecx, [rdx + r9*2]
mov r10, r9
shr r10, 0x20
cmp ecx, edx
mov dword [r13 + 0x74], ecx
mov ecx, dword [r12 + 0x3c]
setb r8b
shr r9d, 0x1f
xor edx, edx
lea eax, [r10 + r10]
or r9d, eax
add r9d, r11d
cmp r9d, r11d
setb dl
add r9d, r8d
mov eax, r9d
imul rcx, rcx
add rcx, rax
xor eax, eax
cmp r9d, r8d
mov dword [r13 + 0x78], ecx
setb al
shr rcx, 0x20
shr r10d, 0x1f
or eax, edx
add eax, ecx
add eax, r10d
mov dword [r13 + 0x7c], eax
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbp, r8
mov r8, qword [rsp + 0x58]
mov rdi, r9
mov r9, rdx
mov rsi, rcx
cmp r8, 1
jne 0x14008ca90
mov r9d, dword [rdi]
mov rdx, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140084e90
mov rdx, qword [rsp + 0x50]
cmp r8, 4
ja 0x14008cabe
cmp rdx, 4
jb 0x14008cabe
cmp r9, 8
jb 0x14008cabe
mov rdx, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140085000
cmp r8, 6
ja 0x14008cae7
cmp rdx, 6
jb 0x14008cae7
cmp r9, 0xc
jb 0x14008cae7
mov rdx, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140085490
cmp r8, 8
ja 0x14008cb10
cmp rdx, 8
jb 0x14008cb10
cmp r9, 0x10
jb 0x14008cb10
mov rdx, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140085ee0
cmp r8, 0x10
ja 0x14008cb39
cmp rdx, 0x10
jb 0x14008cb39
cmp r9, 0x20
jb 0x14008cb39
mov rdx, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140087130
cmp rdx, 0x20
jb 0x14008cbf7
test rbp, rbp
je 0x14008cbf7
mov qword [rsp + 0x30], rbx
cmp r8, rdx
jne 0x14008cb61
test r8b, 1
jne 0x14008cb7d
mov rbx, r8
jmp 0x14008cbc4
mov rcx, r8
cmp r8, rdx
ja 0x14008cb7d
nop dword [rax]
test cl, 1
je 0x14008cb9d
inc rcx
cmp rcx, rdx
jbe 0x14008cb70
mov rdx, rdi
mov rcx, rsi
call 0x14008d310
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
lea rax, [rcx + rcx]
cmp rax, r9
ja 0x14008cb7d
movzx eax, cl
and al, 3
cmp al, 2
jne 0x14008cbc1
lea rbx, [rcx + 2]
cmp rbx, rdx
ja 0x14008cbc1
lea rax, [rbx + rbx]
cmp rax, r9
jbe 0x14008cbc4
mov rbx, rcx
test rbx, rbx
je 0x14008cb7d
lea r8, [rbx + rbx]
test r8, r8
je 0x14008cbe4
lea r8, [r8*4]
xor edx, edx
mov rcx, rbp
call fcn.1402c22a0
mov r9, rbp
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call fcn.14008c3b0
jmp 0x14008cb88
mov rdx, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x14008d310
push rsi
push rdi
push r12
push r14
sub rsp, 0x48
mov rax, r8
mov rsi, r8
mov r14, r8
and eax, 7
mov r12, rdx
mov rdi, rcx
sub rsi, rax
add r8, r8
je 0x14008d344
lea r8, [r8*4]
xor edx, edx
call fcn.1402c22a0
test r14, r14
je 0x14008d53a
mov qword [rsp + 0x70], rbx
lea rax, [rsi*4]
mov r10, r12
sub r10, rdi
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], r13
mov rcx, r14
mov edx, 4
sub r12, rax
sub rcx, rsi
sub rdx, rax
mov qword [rsp + 0x30], r15
lea r8, [rcx*4]
lea rbx, [rax + rdi]
lea r11, [r10 + 0xc]
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x80], rcx
sub r12, rdi
mov qword [rsp + 0x88], r8
mov r13, r14
nop dword [rax + rax]
mov ebp, dword [r12 + rbx]
xor r8d, r8d
xor r15d, r15d
test rsi, rsi
je 0x14008d4c4
mov edi, ebp
lea r9, [rdx + rbx]
nop dword [rax]
mov ecx, dword [r10 + r9 - 4]
mov eax, dword [r9 - 4]
add r15, 8
lea r9, [r9 + 0x20]
imul rcx, rdi
add rcx, rax
mov eax, r8d
add rcx, rax
mov eax, dword [r9 - 0x20]
mov dword [r9 - 0x24], ecx
mov edx, dword [r10 + r9 - 0x20]
shr rcx, 0x20
imul rdx, rdi
add rdx, rcx
add rdx, rax
mov eax, dword [r9 - 0x1c]
mov dword [r9 - 0x20], edx
mov ecx, dword [r10 + r9 - 0x1c]
shr rdx, 0x20
imul rcx, rdi
add rcx, rdx
add rcx, rax
mov eax, dword [r9 - 0x18]
mov dword [r9 - 0x1c], ecx
mov edx, dword [r11 + r9 - 0x24]
shr rcx, 0x20
imul rdx, rdi
add rdx, rcx
add rdx, rax
mov eax, dword [r9 - 0x14]
mov dword [r9 - 0x18], edx
mov ecx, dword [r11 + r9 - 0x20]
shr rdx, 0x20
imul rcx, rdi
add rcx, rdx
add rcx, rax
mov eax, dword [r9 - 0x10]
mov dword [r9 - 0x14], ecx
mov edx, dword [r11 + r9 - 0x1c]
shr rcx, 0x20
imul rdx, rdi
add rdx, rcx
add rdx, rax
mov eax, dword [r9 - 0xc]
mov dword [r9 - 0x10], edx
mov ecx, dword [r11 + r9 - 0x18]
shr rdx, 0x20
imul rcx, rdi
add rcx, rdx
add rcx, rax
mov eax, dword [r9 - 8]
mov dword [r9 - 0xc], ecx
mov r8d, dword [r11 + r9 - 0x14]
shr rcx, 0x20
imul r8, rdi
add r8, rcx
add r8, rax
mov dword [r9 - 8], r8d
shr r8, 0x20
cmp r15, rsi
jne 0x14008d3d0
mov rcx, qword [rsp + 0x80]
cmp rsi, r14
je 0x14008d4f8
mov rdi, rbp
mov rax, rbx
mov r9, rcx
mov ecx, dword [rax]
mov edx, dword [rax + r10]
lea rax, [rax + 4]
imul rdx, rdi
add rdx, rcx
mov ecx, r8d
add rdx, rcx
mov r8, rdx
mov dword [rax - 4], edx
shr r8, 0x20
dec r9
jne 0x14008d4d2
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x20]
mov dword [rax + rbx], r8d
add rbx, 4
sub r11, 4
sub r10, 4
dec r13
jne 0x14008d3b0
mov r15, qword [rsp + 0x30]
mov r13, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x70]
add rsp, 0x48
pop r14
pop r12
pop rdi
pop rsi
ret