Function at 0x492490
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x198
movups xmmword [rsp + 0x170], xmm6
movups xmmword [rsp + 0x180], xmm7
pxor xmm0, xmm0
mov rax, qword [rsp + 0x208]
movsd xmm6, qword [rax + 0x18]
comisd xmm0, xmm6
mov qword [rsp + 0x1e0], rcx
mov r13, rdx
mov qword [rsp + 0x1f0], r8
mov qword [rsp + 0x1f8], r9
jb 0x4924ed
movsd xmm6, qword [0x00590340]
mov rax, qword [rsp + 0x208]
mov esi, dword [rax + 4]
test esi, esi
je 0x492910
mov eax, dword [rax]
mov dword [rsp + 0x78], esi
mov ebx, 1
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x492930
mov dword [rsp + 0x60], 0x30
mov ebp, 0x29
mov ecx, 0x79e
mov dword [rsp + 0x7c], 0x32
mov dword [rsp + 0x54], 0x7d0
mov rax, qword [rsp + 0x208]
mov r14d, dword [rax + 0xc]
test r14d, r14d
je 0x492950
xor edx, edx
mov eax, ecx
div r14d
mov edx, 1
mov edi, edx
test eax, eax
cmovne edi, eax
mov eax, ecx
xor edx, edx
div edi
mov dword [rsp + 0x60], edi
lea ebp, [rax + 1]
mov rax, qword [rsp + 0x208]
mov edi, dword [rax + 8]
mov eax, 0x14
test edi, edi
cmovne eax, edi
comisd xmm0, xmm6
mov dword [rsp + 0x88], eax
mov rax, qword [rsp + 0x208]
mov edi, dword [rax + 0x30]
jae 0x49295b
comisd xmm6, xmmword [0x00590338]
ja 0x49295b
mov r8d, dword [rax + 0x20]
mov rdx, rax
mov eax, 1
test r8d, r8d
cmovne eax, dword [rdx + 0x20]
mov dword [rsp + 0x8c], eax
sub eax, 1
cmp eax, 9
ja 0x492991
mov eax, dword [rsp + 0x7c]
cmp dword [rsp + 0x78], eax
ja 0x492c28
cmp dword [rsp + 0x54], eax
jb 0x492c28
mov ecx, dword [rsp + 0x200]
test ecx, ecx
je 0x492cc7
cmp r13, 0xff
jbe 0x492cfe
mov eax, dword [rdx + 0x10]
cmp eax, 1
jbe 0x4929d5
mov ecx, eax
mov edx, 1
call fcn.004fb760
mov r12, rax
test rax, rax
je 0x492e10
mov r15d, ebp
lea rax, [rsp + 0x110]
imul r15d, ebx
mov rcx, rax
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x74], r15d
call fcn.00487d80
mov rax, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x208]
mov qword [rsp + 0xa8], 0
mov rbx, qword [rsp + 0x208]
mov qword [rsp + 0xb8], 0
mov r8, qword [rax + 0xc]
movsd xmm0, qword [rax + 0x18]
mov eax, dword [rax + 0x24]
mov edx, dword [rdx + 0x34]
mov rcx, qword [rbx + 0x2c]
mov r9, qword [rbx]
mov qword [rsp + 0x98], r8
mov dword [rsp + 0xa8], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0xb8], edx
lea rdx, [0x005902e0]
mov rax, qword [rdx + rax*8]
mov qword [rsp + 0x90], r9
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x80], rax
movsd qword [rsp + 0xa0], xmm0
test edi, edi
je 0x492c5f
lea eax, [rdi - 1]
mov dword [0x0058c020], eax
cmp edi, 1
jle 0x492e00
mov rbx, qword [fcn.0058b090]
mov ecx, 2
call rbx
mov r8d, r15d
lea rdx, str.Trying__u_different_sets_of_parameters_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov ecx, 2
call rbx
mov rcx, rax
call sub.msvcrt.dll_fflush
cmp dword [rsp + 0x78], esi
jb 0x492d44
lea rax, [rsp + 0xc0]
xor ebx, ebx
mov ebp, 1
movq xmm7, rax
mov rax, qword [fcn.0058b090]
mov qword [rsp + 0x58], rax
nop
cmp edi, 2
jg 0x492bb0
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x20], esi
movq rcx, xmm7
mov r9d, dword [rsp + 0x200]
mov r8, qword [rsp + 0x1f8]
movsd qword [rsp + 0x28], xmm6
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x88]
mov rdx, qword [rsp + 0x1f0]
mov dword [rsp + 0x30], eax
call fcn.00491af0
cmp rax, 0xffffffffffffff88
ja 0x492c80
test ebx, ebx
je 0x492be8
lea eax, [rsi - 6]
mov ebx, dword [rsp + 0x7c]
and eax, 0xfffffffd
mov dword [rsp + 0x64], eax
mov rax, qword [fcn.0058b090]
mov qword [rsp + 0x68], rax
jmp 0x4928b9
test r15, r15
je 0x492d75
mov eax, dword [0x0058c020]
movdqu xmm0, xmm7
mov qword [r15 + 0x10], r13
movdqu xmm1, xmmword [rsp + 0x90]
movhps xmm0, qword [rsp + 0x48]
movdqu xmm2, xmmword [rsp + 0xa0]
movdqu xmm3, xmmword [rsp + 0xb0]
movups xmmword [r15], xmm0
movups xmmword [r15 + 0x18], xmm1
movups xmmword [r15 + 0x28], xmm2
movups xmmword [r15 + 0x38], xmm3
mov dword [r15 + 0x18], ebx
mov dword [r15 + 0x1c], esi
mov dword [r15 + 0x20], r14d
mov dword [r15 + 0x30], 0
mov dword [r15 + 0x3c], eax
movsd qword [r15 + 0x28], xmm6
test esi, esi
je 0x4929e0
test ebx, ebx
je 0x4929e0
mov edx, dword [rsp + 0x64]
test edx, edx
jne 0x4929e0
mov edx, ebx
cmp r13, rdx
jb 0x4929e0
cmp esi, ebx
ja 0x4929e0
mov edx, dword [rsp + 0x104]
sub edx, 1
cmp edx, 0x1e
ja 0x4929e0
mov rcx, qword [rsp + 0x48]
call fcn.00487e30
test r12, r12
je 0x492ba0
mov r8, r15
lea rdx, [fcn.00491790]
mov rcx, r12
call fcn.004fb7a0
cmp edi, 1
jg 0x492b30
add ebp, 1
add ebx, dword [rsp + 0x60]
cmp dword [rsp + 0x54], ebx
jb 0x492a32
mov ecx, 0x48
call sub.msvcrt.dll_malloc
mov r15, rax
cmp edi, 2
jle 0x4927d0
mov rax, qword [rsp + 0x58]
mov ecx, 2
call rax
mov r8d, ebx
lea rdx, str.k_u_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [rsp + 0x58]
mov ecx, 2
call rax
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x4927d0
mov eax, dword [rax]
mov ebx, 2
mov esi, 6
mov dword [rsp + 0x78], 8
mov dword [rsp + 0x54], eax
test eax, eax
je 0x492517
mov dword [rsp + 0x7c], eax
mov ebp, 1
xor ecx, ecx
mov dword [rsp + 0x60], 1
jmp 0x492539
mov r14d, 0x28
jmp 0x49256e
mov r15, 0xffffffffffffffd6
test edi, edi
jg 0x492c00
movups xmm6, xmmword [rsp + 0x170]
movups xmm7, xmmword [rsp + 0x180]
mov rax, r15
add rsp, 0x198
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r15, 0xffffffffffffffd6
test edi, edi
jle 0x49296a
mov ecx, 2
mov rbx, qword [fcn.0058b090]
call rbx
mov r8d, 0x10
mov edx, 1
lea rcx, str.Incorrect_accel_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov ecx, 2
call rbx
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x49296a
xor r12d, r12d
jmp 0x49262b
test eax, eax
jle 0x492a1c
mov ecx, 2
call qword [fcn.0058b090]
mov r8d, 0x1f
mov edx, 1
lea rcx, str.FASTCOVER_parameters_incorrect_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov ecx, 2
call qword [fcn.0058b090]
mov rcx, rax
call sub.msvcrt.dll_fflush
mov rcx, r15
call fcn.0058af90
add ebx, dword [rsp + 0x60]
cmp dword [rsp + 0x54], ebx
jae 0x4928b9
mov rcx, qword [rsp + 0x48]
add esi, 2
mov ebx, 1
call fcn.00487de0
mov rcx, qword [rsp + 0xf8]
call fcn.0058af90
mov rcx, qword [rsp + 0xc8]
call fcn.0058af90
cmp dword [rsp + 0x78], esi
jae 0x492750
mov rbx, qword [fcn.0058b090]
cmp edi, 1
jg 0x492d44
mov r15, qword [rsp + 0x160]
cmp r15, 0xffffffffffffff88
ja 0x492b16
mov rdi, qword [rsp + 0x208]
mov rax, qword [rsp + 0x130]
mov r15, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x120]
mov qword [rdi], rax
mov rax, qword [rsp + 0x138]
movsd xmm0, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x1e0]
mov r8, r15
mov qword [rdi + 0xc], rax
mov rax, rdi
movsd qword [rdi + 0x18], xmm0
mov edi, dword [rsp + 0x88]
mov dword [rax + 8], edi
mov edi, dword [rsp + 0x8c]
mov dword [rax + 0x20], edi
mov rdi, qword [rsp + 0x208]
mov eax, dword [rsp + 0x150]
mov dword [rdi + 0x2c], eax
mov rax, qword [rsp + 0x154]
mov qword [rdi + 0x30], rax
mov eax, dword [rsp + 0x148]
mov dword [rdi + 0x24], eax
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x48]
call fcn.00487e00
mov rcx, r12
call fcn.004fb780
jmp 0x49296a
call sub.msvcrt.dll_clock
sub eax, dword [0x005d6040]
cmp eax, 0x96
jg 0x492b4b
cmp edi, 3
jle 0x4928a8
call sub.msvcrt.dll_clock
xor edx, edx
mov r15, qword [rsp + 0x68]
mov ecx, 2
mov dword [0x005d6040], eax
imul eax, ebp, 0x64
div dword [rsp + 0x74]
mov dword [rsp + 0x70], eax
call r15
mov r8d, dword [rsp + 0x70]
lea rdx, str._r_u__
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov ecx, 2
call r15
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x4928a8
mov rcx, r15
call fcn.00491790
jmp 0x49289f
mov ecx, 2
call qword [fcn.0058b090]
mov r8d, esi
lea rdx, str.d_u_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov ecx, 2
call qword [fcn.0058b090]
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x492759
mov rdx, qword [rsp + 0xf0]
mov r8d, edi
mov rcx, r13
call fcn.004875a0
jmp 0x4927af
mov ecx, 2
mov rbx, qword [fcn.0058b090]
call rbx
mov r8d, 0x15
mov edx, 1
lea rcx, str.Incorrect_splitPoint_n
mov r9, rax
jmp 0x4929bf
mov r15, 0xffffffffffffffd6
test edi, edi
jle 0x49296a
mov ecx, 2
mov rbx, qword [fcn.0058b090]
call rbx
mov r8d, 0xc
mov edx, 1
lea rcx, str.Incorrect_k_n
mov r9, rax
jmp 0x4929bf
mov dword [0x0058c020], 0
cmp dword [rsp + 0x78], esi
jae 0x49272e
jmp 0x492a78
mov r15, rax
test edi, edi
jle 0x492b16
mov rbx, qword [fcn.0058b090]
mov ecx, 2
call rbx
mov r8d, 0x1d
mov edx, 1
lea rcx, str.Failed_to_initialize_context_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov ecx, 2
call rbx
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x492b16
mov r15, 0xffffffffffffffb8
test edi, edi
jle 0x49296a
mov ecx, 2
mov rbx, qword [fcn.0058b090]
call rbx
mov r8d, 0x2c
mov edx, 1
lea rcx, str.FASTCOVER_must_have_at_least_one_input_file_n
mov r9, rax
jmp 0x4929bf
mov r15, 0xffffffffffffffba
test edi, edi
jle 0x49296a
mov rbx, qword [fcn.0058b090]
mov ecx, 2
call rbx
mov r8d, 0x100
lea rdx, str.dictBufferCapacity_must_be_at_least__u_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov ecx, 2
call rbx
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x49296a
mov ecx, 2
call rbx
lea r8, [0x0058ffb9]
lea rdx, str._r_79s_r
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov ecx, 2
call rbx
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x492a78
test edi, edi
jle 0x492db0
mov rbx, qword [fcn.0058b090]
mov ecx, 2
call rbx
mov r8d, 0x1e
mov edx, 1
lea rcx, str.Failed_to_allocate_parameters_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov ecx, 2
call rbx
mov rcx, rax
call sub.msvcrt.dll_fflush
mov rcx, qword [rsp + 0x48]
mov r15, 0xffffffffffffffc0
call fcn.00487e00
mov rcx, qword [rsp + 0xf8]
call fcn.0058af90
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xf8], 0
call fcn.0058af90
mov rcx, r12
mov qword [rsp + 0xc8], 0
call fcn.004fb780
jmp 0x49296a
cmp dword [rsp + 0x78], esi
jae 0x49272e
jmp 0x492a78
mov r15, 0xffffffffffffffc0
jmp 0x49296a