Function at 0x1400a30c0
Capabilities:
Terminate process

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rax, qword [0x14017f8e0]
xor rax, rsp
mov qword [rbp + 0x10], rax
mov r12d, dword [rdx + 0x4c]
mov r13, r8
mov rax, qword [rbp + 0xb0]
mov rsi, rdx
movsxd r14, ecx
lea rdx, [0x140116110]
mov qword [rsp + 0x78], rax
mov edi, r9d
lea rax, [0x140000000]
mov qword [rsp + 0x70], r8
mov r8d, 0x100000
mov dword [rsp + 0x6c], r9d
mov ecx, dword [rax + r14*4 + 0x1905d0]
mov dword [rsp + 0x68], r12d
call fcn.14009d710
mov ebx, eax
mov eax, edi
sub eax, r12d
cmp ebx, eax
cmovb eax, ebx
and eax, 0xfffffc00
cmp byte [0x140190373], 0
mov dword [rsp + 0x5c], eax
je 0x1400a3159
mov dword [r13 + 0x1c], reloc.WS2_32.dll_ntohs
mov rax, qword gs:[0x58]
mov ecx, dword [0x14018fef0]
mov r12d, 0x98
mov rdi, qword [rax + rcx*8]
mov eax, 0xc0
movzx eax, byte [rax + rdi]
test al, al
jne 0x1400a334d
lea r12, [0x140000000]
mov ecx, dword [r12 + r14*4 + 0x1905d0]
call sub.cudart64_80.dll_cudaSetDevice
test eax, eax
jne 0x1400a3995
call sub.cudart64_80.dll_cudaDeviceReset
test eax, eax
jne 0x1400a39d5
lea ecx, [rax + 4]
call sub.cudart64_80.dll_cudaSetDeviceFlags
test eax, eax
jne 0x1400a3a15
lea ecx, [rax + 2]
call sub.cudart64_80.dll_cudaDeviceSetCacheConfig
test eax, eax
jne 0x1400a3a55
lea rcx, [r12 + 0x182b80]
lea rcx, [rcx + r14*8]
call sub.cudart64_80.dll_cudaStreamCreate
test eax, eax
jne 0x1400a3a95
mov rdx, rbx
mov ecx, 0x98
shl rdx, 6
add rcx, rdi
mov r12, rbx
call sub.cudart64_80.dll_cudaMalloc
test eax, eax
jne 0x1400a3ad5
movaps xmmword [rsp + 0x130], xmm6
mov edx, ebx
mov ecx, r14d
movaps xmmword [rsp + 0x120], xmm7
call fcn.1400a2090
mov edx, ebx
mov ecx, r14d
call fcn.1400a13e0
mov edx, ebx
mov ecx, r14d
call fcn.1400b2360
mov ecx, r14d
call fcn.1400b2d40
mov edx, ebx
mov ecx, r14d
call fcn.1400b0450
lea rax, [rbx*4]
xorps xmm6, xmm6
cvtsi2sd xmm6, rax
test rax, rax
jns 0x1400a3261
addsd xmm6, qword [0x1401700f0]
mulsd xmm6, qword [0x140116400]
xor eax, eax
movabs rcx, 0x8000000000000000
movsd xmm7, qword [0x1401700e8]
movaps xmm0, xmm6
mulsd xmm0, qword [0x140170068]
comisd xmm0, xmm7
jb 0x1400a329b
subsd xmm0, xmm7
comisd xmm0, xmm7
jae 0x1400a329b
mov rax, rcx
cvttsd2si rbx, xmm0
mov ecx, 0xa8
add rcx, rdi
add rbx, rax
mov rdx, rbx
call sub.cudart64_80.dll_cudaMalloc
mov ecx, 0xb0
mov rdx, rbx
add rcx, rdi
call sub.cudart64_80.dll_cudaMalloc
xor eax, eax
comisd xmm6, xmm7
jb 0x1400a32e2
subsd xmm6, xmm7
comisd xmm6, xmm7
jae 0x1400a32e2
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si rdx, xmm6
mov ecx, 0xb8
add rcx, rdi
add rdx, rax
call sub.cudart64_80.dll_cudaMalloc
mov ecx, 0xa0
lea rdx, [r12*8]
add rcx, rdi
call sub.cudart64_80.dll_cudaMalloc
movaps xmm7, xmmword [rsp + 0x120]
movaps xmm6, xmmword [rsp + 0x130]
test eax, eax
jne 0x1400a3b15
cmp r14d, 0x10
jae 0x1400a3b55
lea rax, [0x140000000]
mov r12d, 0x98
mov byte [r14 + rax + 0x18ffa8], 0
mov eax, 0xc0
mov byte [rax + rdi], 1
xor r8d, r8d
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x1400a33c1
lea rax, [rsi + 0x54]
lea rcx, [rbp - 0x50]
cmp rcx, rax
ja 0x1400a336f
lea rax, [rbp + 4]
cmp rax, rsi
jae 0x1400a33c1
lea rdx, [rbp - 0x40]
mov rcx, rsi
sub rcx, rdx
lea rax, [rbp - 0x40]
mov edx, 2
lea r8d, [rdx + 0xe]
nop word [rax + rax]
movdqu xmm0, xmmword [rcx + rax]
movdqu xmm1, xmmword [rcx + rax + 0x10]
lea rax, [rax + 0x20]
pshufb xmm0, xmmword [0x140170170]
pshufb xmm1, xmmword [0x140170170]
movdqu xmmword [rax - 0x30], xmm0
movdqu xmmword [rax - 0x20], xmm1
sub rdx, 1
jne 0x1400a3390
movsxd rdx, r8d
cmp rdx, 0x16
jge 0x1400a33f7
lea rax, [rbp - 0x50]
mov r8, rsi
sub r8, rax
nop dword [rax]
nop dword [rax + rax]
lea rax, [r8 + rdx*4]
mov ecx, dword [rbp + rax - 0x50]
bswap ecx
mov dword [rbp + rdx*4 - 0x50], ecx
inc rdx
cmp rdx, 0x16
jl 0x1400a33e0
mov r8d, 0x50
lea rdx, [rbp - 0x50]
mov ecx, r14d
call fcn.1400a2c60
mov edx, r14d
mov rcx, r13
call fcn.1400b0530
mov r13d, 0xb8
mov ebx, r12d
mov qword [rbp - 0x80], r13
mov r15d, 0xa8
mov r12d, 0xb0
nop dword [rax]
mov r9, qword [rbx + rdi]
mov ecx, r14d
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x5c]
call fcn.1400a2dd0
mov r9, qword [rbx + rdi]
lea rax, [rsp + 0x54]
mov r8d, dword [rsi + 0x4c]
mov ecx, r14d
mov edx, dword [rsp + 0x5c]
mov qword [rsp + 0x40], rax
mov rax, qword [rdi + r13]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [r15 + rdi]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
call fcn.1400a1b80
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [rdi + r13]
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x54]
mov qword [rsp + 0x20], rax
call fcn.1400b2db0
mov r9, qword [rbx + rdi]
lea rax, [rsp + 0x50]
mov r8d, dword [rsi + 0x4c]
mov ecx, r14d
mov edx, dword [rsp + 0x54]
mov qword [rsp + 0x40], rax
mov rax, qword [r12 + rdi]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [r15 + rdi]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + r13]
mov qword [rsp + 0x20], rax
call fcn.1400a1b80
mov ecx, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x58]
add ecx, r10d
mov edx, dword [rsp + 0x54]
cmp ecx, edx
jne 0x1400a3538
mov rax, qword [rbx + rdi]
mov edx, r10d
mov r9, qword [r15 + rdi]
mov ecx, r14d
mov r8d, dword [rsi + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.1400aff50
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [r12 + rdi]
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.1400ade90
mov edx, dword [rsp + 0x54]
mov r9, qword [rbx + rdi]
lea rax, [rsp + 0x50]
mov r8d, dword [rsi + 0x4c]
mov ecx, r14d
mov qword [rsp + 0x40], rax
mov rax, qword [r12 + rdi]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [r15 + rdi]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + r13]
mov qword [rsp + 0x20], rax
call fcn.1400a1b80
mov ecx, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x58]
add ecx, r10d
mov edx, dword [rsp + 0x54]
cmp ecx, edx
jne 0x1400a35c8
mov rax, qword [rbx + rdi]
mov edx, r10d
mov r9, qword [r15 + rdi]
mov ecx, r14d
mov r8d, dword [rsi + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.1400b2370
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [r12 + rdi]
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.1400b2db0
mov edx, dword [rsp + 0x54]
mov r9, qword [rbx + rdi]
lea rax, [rsp + 0x50]
mov r8d, dword [rsi + 0x4c]
mov ecx, r14d
mov qword [rsp + 0x40], rax
mov rax, qword [r12 + rdi]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [r15 + rdi]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + r13]
mov qword [rsp + 0x20], rax
call fcn.1400a1b80
mov ecx, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x58]
add ecx, r10d
mov edx, dword [rsp + 0x54]
cmp ecx, edx
jne 0x1400a3658
mov rax, qword [rbx + rdi]
mov edx, r10d
mov r9, qword [r15 + rdi]
mov ecx, r14d
mov r8d, dword [rsi + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.1400aff50
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [r12 + rdi]
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.1400ade90
mov edx, dword [rsp + 0x54]
mov r9, qword [rbx + rdi]
lea rax, [rsp + 0x50]
mov r8d, dword [rsi + 0x4c]
mov ecx, r14d
mov qword [rsp + 0x40], rax
mov rax, qword [r12 + rdi]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [r15 + rdi]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + r13]
mov qword [rsp + 0x20], rax
call fcn.1400a1b80
mov ecx, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x58]
add ecx, r10d
mov edx, dword [rsp + 0x54]
cmp ecx, edx
jne 0x1400a36e8
mov rax, qword [rbx + rdi]
mov edx, r10d
mov r9, qword [r15 + rdi]
mov ecx, r14d
mov r8d, dword [rsi + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.1400b2370
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [r12 + rdi]
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.1400b2db0
mov edx, dword [rsp + 0x54]
mov r9, qword [rbx + rdi]
lea rax, [rsp + 0x50]
mov r8d, dword [rsi + 0x4c]
mov ecx, r14d
mov qword [rsp + 0x40], rax
mov rax, qword [r12 + rdi]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [r15 + rdi]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + r13]
mov qword [rsp + 0x20], rax
call fcn.1400a1b80
mov ecx, dword [rsp + 0x50]
mov r10d, dword [rsp + 0x58]
add ecx, r10d
mov edx, dword [rsp + 0x54]
cmp ecx, edx
jne 0x1400a3778
mov rax, qword [rbx + rdi]
mov edx, r10d
mov r9, qword [r15 + rdi]
mov ecx, r14d
mov r8d, dword [rsi + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.1400aff50
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [r12 + rdi]
mov r8d, dword [rsi + 0x4c]
mov edx, dword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.1400ade90
mov edx, dword [rsp + 0x54]
mov rax, qword [rbx + rdi]
mov ecx, r14d
mov r9, qword [rdi + r13]
mov r8d, dword [rsi + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.1400b0a40
cmp byte [0x140190370], 0
mov r13d, eax
je 0x1400a37c1
lea rcx, [0x140000000]
mov byte [r14 + rcx + 0x18ffa8], 1
mov rcx, qword [rcx + r14*8 + 0x182b80]
call sub.cudart64_80.dll_cudaStreamDestroy
xor ecx, ecx
call fcn.1400c5de0
cmp r13d, 0xffffffff
je 0x1400a3861
mov rdx, qword [rsp + 0x70]
xor eax, eax
cmp byte [reloc.WS2_32.dll_accept], al
mov dword [rbp - 0x78], 0
mov qword [rbp - 0x74], rax
mov ecx, dword [rdx + 0x1c]
mov dword [rsp + 0x64], ecx
mov qword [rbp - 0x6c], rax
mov qword [rbp - 0x64], rax
mov dword [rbp - 0x5c], eax
je 0x1400a381c
mov eax, r13d
lea rdx, [rbp - 0x50]
bswap eax
lea rcx, [rbp - 0x78]
mov dword [rbp - 4], eax
call fcn.1400a3bb0
mov ecx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x70]
mov dword [rsp + 0x60], eax
mov eax, dword [rbp - 0x5c]
cmp eax, ecx
ja 0x1400a382d
lea rcx, [rbp - 0x78]
call fcn.1400342d0
test al, al
jne 0x1400a38ac
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x1400a3861
mov eax, dword [rsp + 0x60]
lea rcx, [0x140000000]
mov r8d, dword [rcx + r14*4 + 0x1905d0]
lea rdx, str.GPU__d:_result_for_nonce___08X_does_not_validate_on_CPU___d_rounds__
mov ecx, 3
mov dword [rsp + 0x20], eax
mov r9d, r13d
call fcn.140033450
mov r13d, dword [rsp + 0x5c]
add dword [rsi + 0x4c], r13d
call sub.cudart64_80.dll_cudaGetLastError
test eax, eax
jne 0x1400a3b5b
mov rax, qword [0x140190658]
mov rcx, r14
shl rcx, 7
mov ecx, dword [rcx + rax]
test ecx, ecx
jne 0x1400a3983
mov ecx, dword [rsi + 0x4c]
mov eax, dword [rsp + 0x6c]
add rcx, r13
cmp rax, rcx
jbe 0x1400a3983
mov r13, qword [rbp - 0x80]
jmp 0x1400a3430
mov r9, qword [rbx + rdi]
mov ecx, r14d
mov ebx, dword [rsp + 0x5c]
mov r15d, 1
mov r8d, dword [rsi + 0x4c]
mov edx, ebx
mov dword [rsp + 0x20], r13d
call fcn.1400b0740
sub ebx, dword [rsp + 0x68]
mov edi, eax
add ebx, dword [rsi + 0x4c]
mov rcx, qword [rsp + 0x78]
mov dword [rcx], ebx
test eax, eax
je 0x1400a395c
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x1400a3902
mov ecx, eax
lea rdx, [rbp - 0x50]
bswap ecx
mov dword [rbp - 4], ecx
lea rcx, [rbp - 0x78]
call fcn.1400a3bb0
mov ebx, eax
jmp 0x1400a3906
mov ebx, dword [rsp + 0x60]
mov eax, dword [rsp + 0x64]
cmp dword [rbp - 0x5c], eax
ja 0x1400a392c
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp - 0x78]
call fcn.1400342d0
test al, al
je 0x1400a392c
mov dword [rsi + 0x54], edi
mov r15d, 2
jmp 0x1400a395c
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x1400a395c
lea rcx, [0x140000000]
mov dword [rsp + 0x20], ebx
mov r8d, dword [rcx + r14*4 + 0x1905d0]
lea rdx, [0x140116320]
mov ecx, 3
mov r9d, edi
call fcn.140033450
mov dword [rsi + 0x4c], r13d
mov eax, r15d
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.140111120
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, dword [rsi + 0x4c]
sub eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
mov dword [rcx], eax
xor eax, eax
jmp 0x1400a3963
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0x62
lea r8, [0x140116128]
lea rdx, [0x140116140]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0x63
lea r8, [0x140116170]
lea rdx, [0x140116188]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0x64
lea r8, [0x1401161b8]
lea rdx, [0x1401161d0]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0x65
lea r8, [0x140116200]
lea rdx, [0x140116218]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0x66
lea r8, [0x140116248]
lea rdx, [0x140116260]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0x68
lea r8, [0x140116290]
lea rdx, [0x1401162a8]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, reloc.WS2_32.dll_WSACleanup
lea r8, [0x1401162d8]
lea rdx, [0x1401162f0]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
call fcn.140110efc
int3
mov ecx, eax
call sub.cudart64_80.dll_cudaGetErrorString
mov ecx, 2
mov rbx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9d, 0xef
lea r8, str.scanhash_jackpot
lea rdx, [0x1401163d0]
call fcn.140027e90
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3