000000013bc0: sub rsp, 0x18 000000013bc4: mov edi, 1 000000013bc9: mov rsi, rsp 000000013bcc: call 0x66a0 000000013bd1: mov rax, qword ptr [rsp] 000000013bd5: mov rcx, qword ptr [rsp + 8] 000000013bda: movabs rdx, 0x431bde82d7b634db 000000013be4: add rsp, 0x18 000000013be8: imul rsi, rax, 0x3e8 000000013bef: mov rax, rcx 000000013bf2: sar rcx, 0x3f 000000013bf6: imul rdx 000000013bf9: sar rdx, 0x12 000000013bfd: sub rdx, rcx 000000013c00: lea rax, [rsi + rdx] 000000013c04: ret 000000013c05: nop word ptr cs:[rax + rax] 000000013c10: imul edi, edi, 0x3e8 000000013c16: jmp 0x6290 000000013c1b: nop dword ptr [rax + rax] 000000013c20: push rbp 000000013c21: push rbx 000000013c22: mov rbx, rdi 000000013c25: sub rsp, 0x18 000000013c29: lea rbp, [rsp + 8] 000000013c2e: mov rdi, rbp 000000013c31: call 0x6760 000000013c36: mov rdi, rbp 000000013c39: call 0x6640 000000013c3e: movzx ecx, word ptr [rax + 0x14] 000000013c42: movzx esi, word ptr [rax + 0x10] 000000013c46: lea edx, [rcx + 0x76c] 000000013c4c: mov word ptr [rbx], dx 000000013c4f: lea edx, [rsi + 1] 000000013c52: mov word ptr [rbx + 2], dx 000000013c56: mov edx, dword ptr [rax + 0x18] 000000013c59: mov word ptr [rbx + 4], dx 000000013c5d: mov edx, dword ptr [rax + 0xc] 000000013c60: mov word ptr [rbx + 6], dx 000000013c64: mov edx, dword ptr [rax + 8] 000000013c67: mov word ptr [rbx + 8], dx 000000013c6b: mov edx, dword ptr [rax + 4] 000000013c6e: mov eax, dword ptr [rax] 000000013c70: mov word ptr [rbx + 0xa], dx 000000013c74: mov word ptr [rbx + 0xc], ax 000000013c78: mov eax, 0x190 000000013c7d: mov word ptr [rbx + 0xe], ax 000000013c81: add rsp, 0x18 000000013c85: pop rbx 000000013c86: pop rbp 000000013c87: ret 000000013c88: nop dword ptr [rax + rax] 000000013c90: push r15 000000013c92: mov eax, ecx 000000013c94: push r14 000000013c96: push r13 000000013c98: push r12 000000013c9a: push rbp 000000013c9b: push rbx 000000013c9c: mov rbx, rdx 000000013c9f: mov qword ptr [rsp - 0x10], rdx 000000013ca4: mov edx, 0x55555556 000000013ca9: mov qword ptr [rsp - 8], rdi 000000013cae: imul edx 000000013cb0: mov eax, ecx 000000013cb2: sar eax, 0x1f 000000013cb5: mov r11d, eax 000000013cb8: mov r13d, edx 000000013cbb: sub r11d, edx 000000013cbe: sub r13d, eax 000000013cc1: lea r15d, [r11 - 1] 000000013cc5: cmp r11d, r13d 000000013cc8: jge 0x13dcf 000000013cce: mov eax, r11d 000000013cd1: xor ebp, ebp 000000013cd3: movabs r12, 0x7fffffffffffffff 000000013cdd: neg eax 000000013cdf: cdqe 000000013ce1: lea rax, [rsi + rax*4] 000000013ce5: mov qword ptr [rsp - 0x18], rax 000000013cea: movsxd rax, r11d 000000013ced: lea r14, [rbx + rax*4] 000000013cf1: xor ebx, ebx 000000013cf3: nop dword ptr [rax + rax] 000000013cf8: mov r9, r14 000000013cfb: mov r8, rsi 000000013cfe: sub r9, rbx 000000013d01: test r11d, r11d 000000013d04: js 0x13db8 000000013d0a: mov edx, r11d 000000013d0d: sar edx, 0x1f 000000013d10: mov eax, edx 000000013d12: xor eax, r11d 000000013d15: sub eax, edx 000000013d17: mov edx, ecx 000000013d19: sub edx, eax 000000013d1b: je 0x13dcb 000000013d21: mov r10d, edx 000000013d24: xor eax, eax 000000013d26: nop word ptr cs:[rax + rax] 000000013d30: add r8, 4 000000013d34: add r9, 4 000000013d38: mov edi, dword ptr [r8 - 4] 000000013d3c: sub edi, dword ptr [r9 - 4] 000000013d40: movsxd rdi, edi 000000013d43: imul rdi, rdi 000000013d47: add rax, rdi 000000013d4a: sub r10d, 1 000000013d4e: jne 0x13d30 000000013d50: movsxd rdi, edx 000000013d53: cqo 000000013d55: idiv rdi 000000013d58: cmp rax, r12 000000013d5b: jge 0x13d63 000000013d5d: mov r15d, r11d 000000013d60: mov r12, rax 000000013d63: cmp rbp, rax 000000013d66: cmovl rbp, rax 000000013d6a: add r11d, 1 000000013d6e: sub rbx, 4 000000013d72: cmp r11d, r13d 000000013d75: jne 0x13cf8 000000013d77: lea eax, [rcx + 3] 000000013d7a: test ecx, ecx 000000013d7c: cmovs ecx, eax 000000013d7f: xor eax, eax 000000013d81: sar ecx, 2 000000013d84: mov edx, ecx 000000013d86: neg edx 000000013d88: cmp edx, r15d 000000013d8b: jg 0x13da7 000000013d8d: cmp ecx, r15d 000000013d90: jl 0x13da7 000000013d92: add r12, r12 000000013d95: cmp r12, rbp 000000013d98: jg 0x13da7 000000013d9a: mov rax, qword ptr [rsp - 8] 000000013d9f: mov dword ptr [rax], r15d 000000013da2: mov eax, 1 000000013da7: pop rbx 000000013da8: pop rbp 000000013da9: pop r12 000000013dab: pop r13 000000013dad: pop r14 000000013daf: pop r15 000000013db1: ret