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

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x408]
sub rsp, 0x508
mov rax, qword [0x1400b44c0]
xor rax, rsp
mov qword [rbp + 0x3e0], rax
mov rsi, qword [rbp + 0x470]
xor r13d, r13d
mov rax, qword [rbp + 0x468]
mov r15d, r9d
mov dword [rsp + 0x38], r9d
mov r14, rdx
mov dword [rsp + 0x3c], r8d
mov r12, rcx
mov qword [rbp - 0x60], rdx
mov qword [rsp + 0x50], rcx
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x68], rsi
mov dword [rsp + 0x34], r13d
test rsi, rsi
je 0x1400064c3
lea rcx, [rsp + 0x58]
call fcn.14003d320
mov edx, dword [rsi]
lea rcx, [rbp - 0x50]
call fcn.14003d580
mov eax, dword [rsp + 0x58]
lea rcx, [rsi + 0x108]
mov r8d, 0x100
mov dword [rsi], eax
lea rdx, [rbp - 0x50]
mov dword [rsi + 4], 0x17
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
test r12, r12
je 0x140006d69
cmp byte [r12 + 0xa1], r13b
je 0x140006d69
call fcn.140007100
mov eax, dword [rbp + 0x460]
test eax, eax
je 0x140006d53
mov qword [rsp + 0x500], rbx
mov qword [rsp + 0x4f8], rdi
movabs rdi, 0xb2f4fc0794908cf3
mov qword [rsp + 0x78], rax
nop dword [rax]
movabs r13, 0x431bde82d7b634db
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
mov rcx, rax
cmp rbx, 0x989680
jne 0x140006539
imul rdi, rcx, 0x64
jmp 0x1400065ad
cmp rbx, 0x16e3600
jne 0x14000658c
mov rax, rdi
imul rcx
lea r8, [rcx + rdx]
sar r8, 0x18
mov rax, r8
shr rax, 0x3f
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
mov rax, rdi
imul rcx, rcx, 0x3b9aca00
imul rcx
lea rdi, [rcx + rdx]
sar rdi, 0x18
mov rax, rdi
shr rax, 0x3f
add rdi, rax
imul rax, r8, 0x3b9aca00
jmp 0x1400065aa
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
mov rdi, rax
imul rax, rcx, 0x3b9aca00
add rdi, rax
cmp byte [r12 + 0xa8], 0
mov qword [rsp + 0x68], rdi
je 0x1400065d3
mov ecx, r15d
call qword [sym.imp.WS2_32.dll_htonl]
mov ecx, dword [rsp + 0x3c]
shr rcx, 2
mov dword [r14 + rcx*4 - 4], eax
mov edx, dword [rsp + 0x3c]
lea r8, [rbp + 0x3c0]
mov rcx, r14
call fcn.14000d1c0
mov rax, qword [rbp + 0x3c0]
mov qword [r12 + 0x78], rax
mov rax, qword [rbp + 0x3c8]
mov qword [r12 + 0x80], rax
mov rax, qword [rbp + 0x3d0]
mov qword [r12 + 0x88], rax
mov rax, qword [rbp + 0x3d8]
mov qword [r12 + 0x90], rax
mov rax, qword [r12 + 0x210]
cmp rax, qword [r12 + 0x218]
je 0x140006639
mov qword [r12 + 0x218], rax
mov rax, qword [r12 + 0x90]
lea rcx, str.nonce__d_k0_k1_k2_k3__llx__llx__llx__llx_n
mov r9, qword [r12 + 0x80]
mov edx, r15d
mov r8, qword [r12 + 0x78]
mov qword [rsp + 0x28], rax
mov rax, qword [r12 + 0x88]
mov qword [rsp + 0x20], rax
call fcn.1400063b0
mov byte [r12 + 0xa0], 0
call fcn.140007100
mov rcx, r12
mov rbx, rax
call fcn.1400071b0
mov r14d, eax
test eax, eax
jne 0x14000669a
xor r13d, r13d
mov esi, r13d
jmp 0x14000676d
cmp eax, 0x20000
jbe 0x1400066bf
lea edx, [rax - 0x20000]
mov r8d, 0x20000
lea rcx, str.OOPS__losing__d_edges_beyond_MAXEDGES_d_n
call fcn.1400063b0
mov r14d, 0x20000
mov rdx, qword [r12 + 0x40]
mov r9d, 2
mov rcx, qword [r12 + 0xb0]
mov r8d, r14d
shl r8, 3
call fcn.14003dd20
call fcn.140007100
mov rcx, rax
mov rax, r13
sub rcx, rbx
mul rcx
mov rsi, rdx
shr rsi, 0x12
call fcn.140007100
mov rdx, qword [r12 + 0xb0]
mov r8d, r14d
mov rcx, r12
mov rbx, rax
call fcn.140005ba0
call fcn.140007100
mov rcx, rax
mov rax, r13
sub rcx, rbx
mul rcx
lea rcx, str.findcycles_edges__d_time__d_ms_total__d_ms_n
shr rdx, 0x12
mov r8d, edx
lea r9d, [rdx + rsi]
mov edx, r14d
call fcn.1400063b0
mov rsi, qword [r12 + 0x218]
movabs rax, 0x8618618618618619
sub rsi, qword [r12 + 0x210]
sar rsi, 2
mul rsi
sub rsi, rdx
shr rsi, 1
add rsi, rdx
shr rsi, 5
xor r13d, r13d
mov qword [rsp + 0x70], rsi
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
mov rcx, rax
cmp rbx, 0x989680
jne 0x140006791
imul rbx, rcx, 0x64
jmp 0x14000680f
cmp rbx, 0x16e3600
jne 0x1400067ee
movabs r9, 0xb2f4fc0794908cf3
mov rax, r9
imul rcx
lea r8, [rcx + rdx]
sar r8, 0x18
mov rax, r8
shr rax, 0x3f
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
mov rax, r9
imul rcx, rcx, 0x3b9aca00
imul rcx
lea rbx, [rcx + rdx]
sar rbx, 0x18
mov rax, rbx
shr rax, 0x3f
add rbx, rax
imul rax, r8, 0x3b9aca00
jmp 0x14000680c
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
mov rbx, rax
imul rax, rcx, 0x3b9aca00
add rbx, rax
mov r14, rbx
mov qword [rsp + 0x60], rbx
sub r14, rdi
lea rcx, str.Time:__d_ms_n
movabs rax, 0x431bde82d7b634db
mov qword [rbp - 0x70], r14
mul r14
shr rdx, 0x12
call fcn.1400063b0
mov dword [rsp + 0x48], r13d
test esi, esi
je 0x140006cf6
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rbp - 0x80]
lea rcx, str.Solution
call fcn.1400063b0
mov rax, qword [r12 + 0x210]
mov r14d, 0x2a
imul ecx, r13d, 0x2a
lea r15, [rax + rcx*4]
mov qword [rbp - 0x78], r15
mov rsi, r15
nop word [rax + rax]
mov edx, dword [rsi]
lea rcx, str.__jx
call fcn.1400063b0
lea rsi, [rsi + 4]
sub r14, 1
jne 0x140006880
lea rcx, [0x140080fb4]
call fcn.1400063b0
test rdi, rdi
je 0x140006a90
inc dword [rdi + 4]
mov dword [rdi], 0x17
mov ecx, dword [rsp + 0x34]
mov eax, dword [rsp + 0x38]
add ecx, r13d
imul rcx, rcx, 0x158
add rcx, rdi
mov qword [rcx + 8], rax
mov eax, dword [r15]
mov qword [rcx + 0x10], rax
mov eax, dword [r15 + 4]
mov qword [rcx + 0x18], rax
mov eax, dword [r15 + 8]
mov qword [rcx + 0x20], rax
mov eax, dword [r15 + 0xc]
mov qword [rcx + 0x28], rax
mov eax, dword [r15 + 0x10]
mov qword [rcx + 0x30], rax
mov eax, dword [r15 + 0x14]
mov qword [rcx + 0x38], rax
mov eax, dword [r15 + 0x18]
mov qword [rcx + 0x40], rax
mov eax, dword [r15 + 0x1c]
mov qword [rcx + 0x48], rax
mov eax, dword [r15 + 0x20]
mov qword [rcx + 0x50], rax
mov eax, dword [r15 + 0x24]
mov qword [rcx + 0x58], rax
mov eax, dword [r15 + 0x28]
mov qword [rcx + 0x60], rax
mov eax, dword [r15 + 0x2c]
mov qword [rcx + 0x68], rax
mov eax, dword [r15 + 0x30]
mov qword [rcx + 0x70], rax
mov eax, dword [r15 + 0x34]
mov qword [rcx + 0x78], rax
mov eax, dword [r15 + 0x38]
mov qword [rcx + 0x80], rax
mov eax, dword [r15 + 0x3c]
mov qword [rcx + 0x88], rax
mov eax, dword [r15 + 0x40]
mov qword [rcx + 0x90], rax
mov eax, dword [r15 + 0x44]
mov qword [rcx + 0x98], rax
mov eax, dword [r15 + 0x48]
mov qword [rcx + 0xa0], rax
mov eax, dword [r15 + 0x4c]
mov qword [rcx + 0xa8], rax
mov eax, dword [r15 + 0x50]
mov qword [rcx + 0xb0], rax
mov eax, dword [r15 + 0x54]
mov qword [rcx + 0xb8], rax
mov eax, dword [r15 + 0x58]
mov qword [rcx + 0xc0], rax
mov eax, dword [r15 + 0x5c]
mov qword [rcx + 0xc8], rax
mov eax, dword [r15 + 0x60]
mov qword [rcx + 0xd0], rax
mov eax, dword [r15 + 0x64]
mov qword [rcx + 0xd8], rax
mov eax, dword [r15 + 0x68]
mov qword [rcx + 0xe0], rax
mov eax, dword [r15 + 0x6c]
mov qword [rcx + 0xe8], rax
mov eax, dword [r15 + 0x70]
mov qword [rcx + 0xf0], rax
mov eax, dword [r15 + 0x74]
mov qword [rcx + 0xf8], rax
mov eax, dword [r15 + 0x78]
mov qword [rcx + 0x100], rax
mov eax, dword [r15 + 0x7c]
mov qword [rcx + 0x108], rax
mov eax, dword [r15 + 0x80]
mov qword [rcx + 0x110], rax
mov eax, dword [r15 + 0x84]
mov qword [rcx + 0x118], rax
mov eax, dword [r15 + 0x88]
mov qword [rcx + 0x120], rax
mov eax, dword [r15 + 0x8c]
mov qword [rcx + 0x128], rax
mov eax, dword [r15 + 0x90]
mov qword [rcx + 0x130], rax
mov eax, dword [r15 + 0x94]
mov qword [rcx + 0x138], rax
mov eax, dword [r15 + 0x98]
mov qword [rcx + 0x140], rax
mov eax, dword [r15 + 0x9c]
mov qword [rcx + 0x148], rax
mov eax, dword [r15 + 0xa0]
mov qword [rcx + 0x150], rax
mov eax, dword [r15 + 0xa4]
mov qword [rcx + 0x158], rax
xor r13d, r13d
mov dword [rsp + 0x30], r13d
mov r14d, r13d
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x44], r13d
nop word [rax + rax]
mov eax, r14d
mov esi, dword [r15 + rax*4]
cmp esi, 0x1000000
ja 0x140006ca7
test r14d, r14d
je 0x140006ad6
lea eax, [r14 - 1]
cmp esi, dword [r15 + rax*4]
jbe 0x140006bd2
mov rax, qword [r12 + 0x78]
lea rcx, [rbp + 0x3c0]
mov r13, qword [r12 + 0x80]
add esi, esi
mov r12, qword [r12 + 0x88]
mov qword [rbp + 0x3c0], rax
mov rax, qword [rsp + 0x50]
mov edx, esi
mov qword [rbp + 0x3c8], r13
mov qword [rbp + 0x3d0], r12
mov r15, qword [rax + 0x90]
mov qword [rbp + 0x3d8], r15
call fcn.140005e30
mov ecx, dword [rbp + 0x3c0]
lea edx, [rsi + 1]
xor ecx, dword [rbp + 0x3c8]
add r14d, r14d
xor ecx, dword [rbp + 0x3d0]
xor ecx, dword [rbp + 0x3d8]
and ecx, 0x7fffff
mov qword [rbp + 0x3c8], r13
xor dword [rsp + 0x30], ecx
mov dword [rbp + r14*4 - 0x50], ecx
mov rcx, qword [rsp + 0x50]
mov qword [rbp + 0x3d0], r12
mov qword [rbp + 0x3d8], r15
mov rax, qword [rcx + 0x78]
lea rcx, [rbp + 0x3c0]
mov qword [rbp + 0x3c0], rax
call fcn.140005e30
mov ecx, dword [rsp + 0x40]
lea eax, [r14 + 1]
mov r14d, dword [rsp + 0x44]
mov edx, dword [rbp + 0x3c0]
inc r14d
xor edx, dword [rbp + 0x3c8]
xor edx, dword [rbp + 0x3d0]
xor edx, dword [rbp + 0x3d8]
and edx, 0x7fffff
mov dword [rsp + 0x44], r14d
xor ecx, edx
mov dword [rbp + rax*4 - 0x50], edx
mov dword [rsp + 0x40], ecx
cmp r14d, 0x2a
jae 0x140006bdc
mov r15, qword [rbp - 0x78]
mov r12, qword [rsp + 0x50]
jmp 0x140006ab0
mov edx, 3
jmp 0x140006cac
or ecx, dword [rsp + 0x30]
je 0x140006bec
mov edx, 4
jmp 0x140006cac
xor r13d, r13d
mov r11d, r13d
mov r8d, r13d
nop word [rax + rax]
lea ecx, [r8 + 2]
mov eax, 0x86186187
mul ecx
mov eax, ecx
mov r9d, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
imul eax, eax, 0x54
sub ecx, eax
cmp ecx, r8d
je 0x140006ca0
mov eax, r8d
mov r10d, dword [rbp + rax*4 - 0x50]
nop dword [rax + rax]
cmp dword [rbp + rcx*4 - 0x50], r10d
jne 0x140006c3f
cmp r9d, r8d
jne 0x140006c99
mov r9d, ecx
add ecx, 2
mov eax, 0x86186187
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
imul eax, eax, 0x54
sub ecx, eax
cmp ecx, r8d
jne 0x140006c30
cmp r9d, r8d
je 0x140006ca0
mov r8d, r9d
lea r11d, [r11 + 1]
xor r8d, 1
jne 0x140006c00
cmp r11d, 0x2a
mov edx, 7
cmove rdx, r13
jne 0x140006cac
lea rcx, str.Verified_with_cyclehash
call fcn.1400063b0
lea rcx, [0x140080fb4]
call fcn.1400063b0
jmp 0x140006cc3
mov edx, 5
jmp 0x140006cac
mov edx, 6
jmp 0x140006cac
mov edx, 2
lea rax, section..data
mov rdx, qword [rax + rdx*8]
lea rcx, str.FAILED_due_to__s_n
call fcn.1400063b0
mov r13d, dword [rsp + 0x48]
mov r12, qword [rsp + 0x50]
inc r13d
mov dword [rsp + 0x48], r13d
cmp r13d, ebx
jb 0x140006851
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov r14, qword [rbp - 0x70]
mov r15d, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x34]
add r13d, esi
mov rsi, qword [rbp - 0x68]
mov dword [rsp + 0x34], r13d
test rsi, rsi
je 0x140006d21
mov qword [rsi + 0x310], rdi
mov qword [rsi + 0x318], rbx
mov qword [rsi + 0x320], r14
mov r14, qword [rbp - 0x60]
inc r15d
sub qword [rsp + 0x78], 1
movabs rdi, 0xb2f4fc0794908cf3
mov dword [rsp + 0x38], r15d
jne 0x140006510
mov rdi, qword [rsp + 0x4f8]
mov rbx, qword [rsp + 0x500]
mov edx, r13d
lea rcx, str._d_total_solutions_n
call fcn.1400063b0
call fcn.140007100
jmp 0x140006dc0
lea rcx, str.Error_initialising_trimmer._Aborting._n
call fcn.1400063b0
mov ecx, dword [r12 + 0xa4]
call fcn.14003d6d0
mov rdx, rax
lea rcx, str.Reason:__s_n
call fcn.1400063b0
test rsi, rsi
je 0x140006dc0
mov byte [rsi + 0x208], 1
mov ecx, dword [r12 + 0xa4]
call fcn.14003d6d0
mov rdx, rax
lea rcx, [rsi + 0x209]
mov r8d, 0x100
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
xor eax, eax
mov rcx, qword [rbp + 0x3e0]
xor rcx, rsp
call fcn.14007a0e0
add rsp, 0x508
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret