Function at 0x40ed20
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x3d8
vmovups xmmword [rsp + 0x3b0], xmm6
vmovups xmmword [rsp + 0x3c0], xmm7
mov rbp, rcx
lea r8, [rsp + 0x1b0]
mov rcx, rdx
xor edx, edx
call fcn.006437d0
mov r12, rax
test rax, rax
je 0x40f2b0
lea rdx, str.method
mov rcx, rax
call fcn.006448b0
mov rcx, rax
call fcn.00644d50
mov rbx, rax
test rax, rax
je 0x40eea0
lea rdx, str.params
mov rcx, r12
call fcn.006448b0
lea rdx, [0x006833b5]
mov rcx, r12
mov r13, rax
call fcn.006448b0
mov rdi, qword [sym.imp.msvcrt.dll__stricmp]
lea rdx, str.mining.notify
mov r14, rax
mov rcx, rbx
call rdi
mov esi, eax
test eax, eax
je 0x40eed0
lea rdx, str.mining.ping
mov rcx, rbx
call rdi
test eax, eax
jne 0x40f000
mov rax, qword [0x006dedd0]
cmp byte [rax], 0
jne 0x40f380
xor r15d, r15d
test r14, r14
je 0x40eea3
cmp dword [r14], 7
je 0x40eea3
mov rcx, r14
lea r15, [rsp + 0x2b0]
call fcn.00644e60
lea rdx, str._id_:_d__result_:_pong___error_:null
mov rcx, r15
mov r8d, eax
call sub.msvcrt.dll_sprintf
mov rax, qword [0x006dee40]
cmp byte [rax], 0
jne 0x40f750
lea r13, [rbp + 0x130]
mov rcx, r13
call fcn.0064b0b0
mov r8, r15
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 8]
call fcn.0040a900
mov rcx, r13
mov r15d, eax
call fcn.0064bfe0
mov rax, qword [r12 + 8]
cmp rax, 0xffffffffffffffff
jne 0x40eeae
vmovups xmm6, xmmword [rsp + 0x3b0]
vmovups xmm7, xmmword [rsp + 0x3c0]
mov eax, r15d
add rsp, 0x3d8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r15d, r15d
mov rax, qword [r12 + 8]
cmp rax, 0xffffffffffffffff
je 0x40ee6e
dec rax
mov qword [r12 + 8], rax
jne 0x40ee6e
mov rcx, r12
call fcn.00645080
jmp 0x40ee6e
mov rcx, r13
call fcn.00644b10
mov rdx, qword [0x006ded50]
mov edi, dword [rdx]
cmp edi, 0x16
mov dword [rsp + 0x30], edi
sete dl
cmp eax, 0xa
sete cl
and edx, ecx
mov r15d, edx
and edx, 1
jne 0x40f2e0
cmp edi, 0x25
je 0x40f1c0
xor edx, edx
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
cmp dword [rsp + 0x30], 0x4a
mov rbx, rax
jne 0x40f1f8
mov edx, 2
mov rcx, r13
mov edi, 9
mov r15d, 8
call fcn.00644b30
xor r14d, r14d
mov rcx, rax
call fcn.00644d50
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x68], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 4
mov rcx, r13
mov qword [rsp + 0x70], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 5
mov rcx, r13
mov qword [rsp + 0x78], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 6
mov rcx, r13
mov qword [rsp + 0x80], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov dword [rsp + 0x90], 0
mov dword [rsp + 0x48], 0xa
mov edx, 7
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x40], 7
jmp 0x40f256
lea rdx, str.mining.set_difficulty
mov rcx, rbx
call rdi
test eax, eax
je 0x40f3a0
lea rdx, str.mining.set_extranonce
mov rcx, rbx
call rdi
test eax, eax
je 0x40f5c0
lea rdx, str.client.reconnect
mov rcx, rbx
call rdi
test eax, eax
je 0x40f770
lea rdx, str.client.get_algo
mov rcx, rbx
call rdi
test eax, eax
jne 0x40f420
mov rax, qword [0x006dee70]
cmp byte [rax], 0
je 0x40f8af
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2b8], 0
xor r15d, r15d
mov qword [rsp + 0x2c0], 0
mov qword [rsp + 0x2c8], 0
mov qword [rsp + 0x2d0], 0
mov qword [rsp + 0x2d8], 0
mov qword [rsp + 0x2e0], 0
mov qword [rsp + 0x2e8], 0
test r14, r14
je 0x40eea3
cmp dword [r14], 7
je 0x40eea3
lea r15, [rsp + 0x2b0]
mov edx, 0x40
mov rcx, r15
call fcn.00404330
call fcn.00644820
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f104
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006833b5]
mov rcx, r13
call fcn.00645490
call fcn.00645070
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.00645490
mov rcx, r15
call fcn.00644ce0
lea rdx, str.result
mov r8, rax
mov rcx, r13
call fcn.00645490
xor edx, edx
mov rcx, r13
call fcn.006413c0
mov r14, rax
mov rax, qword [0x006dee40]
cmp byte [rax], 0
jne 0x40f896
lea rbx, [rbp + 0x130]
mov rcx, rbx
call fcn.0064b0b0
lea rcx, [rbp + 8]
lea rdx, [rbp + 0x118]
mov r8, r14
call fcn.0040a900
mov rcx, rbx
mov r15d, eax
call fcn.0064bfe0
test r13, r13
je 0x40f1ad
mov rax, qword [r13 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f1ad
dec rax
mov qword [r13 + 8], rax
je 0x40fb3b
mov rcx, r14
call sub.msvcrt.dll_free
jmp 0x40eea3
cmp eax, 0xa
je 0x40f520
xor edx, edx
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rbx, rax
mov dword [rsp + 0x90], 0
mov edi, 4
mov dword [rsp + 0x48], 5
mov r15d, 3
mov edx, 2
xor r14d, r14d
mov dword [rsp + 0x40], 2
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rdx, r15
mov rcx, r13
xor r15d, r15d
mov qword [rsp + 0x50], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rdx, rdi
mov rcx, r13
mov qword [rsp + 0x58], rax
call fcn.00644b30
test rax, rax
je 0x40f29f
cmp dword [rax], 1
je 0x40f5e0
mov byte [rbp + 0x48c], 1
jmp 0x40eea3
mov r8d, dword [rsp + 0x1b0]
lea r9, [rsp + 0x20c]
lea rdx, str.JSON_decode_failed__d_:__s
mov ecx, 1
xor r15d, r15d
call fcn.0040a9d0
jmp 0x40ee6e
xor edx, edx
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 2
mov rcx, r13
mov rbx, rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov r14, rax
test rax, rax
je 0x40f400
mov rcx, r14
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x40f400
mov edi, 5
mov dword [rsp + 0x48], 6
mov r15d, 4
mov edx, 3
mov dword [rsp + 0x90], 1
mov dword [rsp + 0x40], 3
jmp 0x40f226
lea rdx, str.Pool_ping
mov ecx, 5
call fcn.0040ab60
jmp 0x40edee
xor edx, edx
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00645010
vucomisd xmm0, qword [0x00684008]
vmovups xmm6, xmm0
jp 0x40f3d0
je 0x40eea0
nop word cs:[rax + rax]
lea r13, [rbp + 0x480]
mov r15d, 1
mov rcx, r13
call fcn.0064b0b0
mov rcx, r13
vmovsd qword [rbp + 0x138], xmm6
call fcn.0064bfe0
jmp 0x40eea3
lea rdx, str.Stratum_notify:_invalid_claim_parameter
mov ecx, 1
xor r15d, r15d
call fcn.0040a9d0
jmp 0x40f29f
lea rdx, str.client.get_stats
mov rcx, rbx
call rdi
test eax, eax
je 0x40f8c5
lea rdx, str.client.get_version
mov rcx, rbx
call rdi
test eax, eax
je 0x40fa93
lea rdx, str.client.show_message
mov rcx, rbx
call rdi
test eax, eax
je 0x40fb61
mov rax, qword [0x006dedd0]
cmp byte [rax], 0
jne 0x40fb48
test r14, r14
je 0x40eea0
cmp dword [r14], 7
je 0x40eea0
call fcn.00644820
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f498
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006833b5]
mov rcx, r13
call fcn.00645490
call fcn.00645060
lea rdx, str.result
mov rcx, r13
mov r8, rax
call fcn.00645490
call fcn.00644820
mov ecx, 0x26
mov rbx, rax
call fcn.00644e30
lea rdx, str.code
mov rcx, rbx
mov r8, rax
call fcn.00645490
lea rcx, str.unknown_method
call fcn.00644ce0
lea rdx, str.message
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov r8, rbx
lea rdx, str.error
jmp 0x40f13f
xor edx, edx
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov edx, 2
mov rcx, r13
mov rbx, rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov r14, rax
test rax, rax
je 0x40f880
mov rcx, r14
call sub.msvcrt.dll_strlen
cmp rax, 0x80
jne 0x40f880
mov dword [rsp + 0x90], 0
mov edi, 5
mov dword [rsp + 0x48], 6
mov r15d, 4
mov edx, 3
mov esi, 1
jmp 0x40f365
xor r8d, r8d
mov rdx, r13
mov rcx, rbp
call fcn.0040c950
mov r15d, eax
jmp 0x40eea3
mov rcx, rax
mov qword [rsp + 0x88], rax
call fcn.00644b10
mov rcx, r13
movsxd rdx, dword [rsp + 0x48]
mov qword [rsp + 0x98], rax
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov r15d, dword [rsp + 0x40]
mov rcx, r13
mov rdi, rax
lea edx, [r15 + 4]
movsxd rdx, edx
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
lea edx, [r15 + 5]
mov rcx, r13
add r15d, 6
movsxd rdx, edx
mov qword [rsp + 0x40], rax
movsxd r15, r15d
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rdx, r15
mov rcx, r13
mov qword [rsp + 0x48], rax
call fcn.00644b30
mov r10, qword [rsp + 0x88]
mov byte [rsp + 0x97], 0
test rax, rax
je 0x40f692
mov rdx, r15
mov rcx, r13
call fcn.00644b30
mov r10, qword [rsp + 0x88]
cmp dword [rax], 5
sete byte [rsp + 0x97]
cmp qword [rsp + 0x38], 0
mov qword [rsp + 0x88], r10
je 0x40f730
test rbx, rbx
je 0x40f730
cmp qword [rsp + 0x50], 0
je 0x40f730
cmp qword [rsp + 0x58], 0
je 0x40f730
test rdi, rdi
sete al
cmp qword [rsp + 0x40], 0
sete dl
or eax, edx
cmp qword [rsp + 0x48], 0
sete dl
or eax, edx
mov r15d, eax
test al, 1
jne 0x40f730
mov rcx, rbx
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x40f730
mov rcx, rdi
call sub.msvcrt.dll_strlen
cmp rax, 8
jne 0x40f730
mov rcx, qword [rsp + 0x40]
call sub.msvcrt.dll_strlen
cmp rax, 8
jne 0x40f730
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_strlen
mov r10, qword [rsp + 0x88]
cmp rax, 8
je 0x41052b
nop word [rax + rax]
lea rdx, str.Stratum_notify:_invalid_parameters
mov ecx, 1
xor r15d, r15d
call fcn.0040a9d0
jmp 0x40f29f
mov r8, r15
lea rdx, [0x0068319e]
mov ecx, 5
call fcn.0040ab60
jmp 0x40ee36
xor edx, edx
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rcx, r13
mov edx, 1
mov rbx, rax
call fcn.00644b30
mov rcx, rax
test rax, rax
je 0x40f7a3
cmp dword [rax], 2
je 0x40fb27
call fcn.00644e60
mov esi, eax
test rbx, rbx
je 0x40eea0
test esi, esi
je 0x40eea0
mov rcx, rbx
call sub.msvcrt.dll_strlen
lea rcx, [rax + 0x20]
call sub.msvcrt.dll_malloc
mov rdx, qword [rbp]
mov r8d, 0xf
mov r13, rax
mov rcx, rax
call sub.msvcrt.dll_strncpy
lea rdx, [0x00683249]
mov rcx, r13
call sub.msvcrt.dll_strstr
mov r8, rbx
mov r9d, esi
lea rdx, str._s:_d
lea rcx, [rax + 3]
call sub.msvcrt.dll_sprintf
mov rax, qword [0x006dee90]
mov r8, r13
movzx r15d, byte [rax]
test r15b, r15b
je 0x40fb03
lea rdx, str.Server_requested_reconnection_to__s
mov ecx, 3
call fcn.0040afb0
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov qword [rbp], r13
lea r13, [rbp + 0x130]
mov rcx, r13
call fcn.0064b0b0
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x40f86b
call qword [sym.imp.libcurl_4.dll_curl_easy_cleanup]
mov rax, qword [rbp + 0x128]
mov qword [rbp + 8], 0
mov byte [rax], 0
mov rcx, r13
call fcn.0064bfe0
jmp 0x40eea3
lea rdx, str.Stratum_notify:_invalid_UTXO_root_parameter
mov ecx, 1
call fcn.0040a9d0
jmp 0x40f29f
mov r8, r14
lea rdx, [0x0068319e]
mov ecx, 5
call fcn.0040ab60
jmp 0x40f164
lea rdx, str.Pool_asked_your_algo_parameter
mov ecx, 3
call fcn.0040afb0
jmp 0x40f060
test r14, r14
je 0x40eea0
cmp dword [r14], 7
je 0x40eea0
call fcn.00644820
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f8f1
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006833b5]
mov rcx, r13
call fcn.00645490
mov rax, qword [0x006deeb0]
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x118], 0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 0
cmp byte [rax], 0
jne 0x40fbfb
call fcn.00644820
mov ecx, 1
mov rbx, rax
call fcn.00644e30
lea rdx, str.code
mov rcx, rbx
mov r8, rax
call fcn.00645490
lea rcx, str.disabled
jmp 0x40f4ec
test r14, r14
je 0x40eea0
cmp dword [r14], 7
je 0x40eea0
call fcn.00644820
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40fabf
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006833b5]
mov rcx, r13
call fcn.00645490
call fcn.00645070
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.00645490
lea rcx, str.cpuminer_opt_23.10_x64W
call fcn.00644ce0
lea rdx, str.result
mov r8, rax
jmp 0x40f13f
lea rdx, str.Ignoring_request_to_reconnect_to__s
mov ecx, 4
mov r15d, 1
call fcn.0040afb0
mov rcx, r13
call sub.msvcrt.dll_free
jmp 0x40eea3
call fcn.00644d50
mov rcx, rax
call sub.msvcrt.dll_atoi
mov esi, eax
jmp 0x40f7aa
mov rcx, r13
call fcn.00645080
jmp 0x40f1ad
mov r8, rbx
lea rdx, str.unknown_stratum_method__s_
mov ecx, 2
call fcn.0040afb0
jmp 0x40f46c
mov rcx, r13
xor edx, edx
call fcn.00644b30
mov rcx, rax
test rax, rax
je 0x40fb8c
call fcn.00644d50
lea rdx, str.MESSAGE_FROM_SERVER:__s
mov ecx, 3
mov r8, rax
call fcn.0040afb0
mov r15d, 1
test r14, r14
je 0x40eea3
cmp dword [r14], 7
je 0x40eea3
call fcn.00644820
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40fbbe
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006833b5]
mov rcx, r13
call fcn.00645490
call fcn.00645070
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.00645490
call fcn.00645050
lea rdx, str.result
mov r8, rax
jmp 0x40f13f
lea rax, [rsp + 0x120]
mov edx, 0x40
lea r14, [rsp + 0x100]
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.00404330
lea rdx, str.GCC__d._d._d_n
mov dword [rsp + 0x20], 0
mov r9d, 3
mov r8d, 9
mov rcx, r14
mov dword [rsp + 0xc8], 0x366e6977
mov word [rsp + 0xcc], 0x34
call sub.msvcrt.dll_sprintf
mov rdx, r14
mov ecx, dword [rdx]
add rdx, 4
lea eax, [rcx - 0x1010101]
andn eax, ecx, eax
and eax, 0x80808080
je 0x40fc58
mov ecx, eax
mov r9d, 1
shr ecx, 0x10
test eax, 0x8080
cmove eax, ecx
lea rcx, [rdx + 2]
mov esi, eax
cmove rdx, rcx
add sil, al
mov eax, r9d
sbb rdx, 3
xor r8d, r8d
mov dword [rdx], 0x58564120
mov word [rdx + 4], 0x32
mov ecx, r8d
cpuid
mov r10d, 7
mov ecx, r8d
mov eax, r10d
cpuid
mov eax, r9d
mov ecx, r8d
cpuid
and ecx, 0x1c000000
cmp ecx, 0x1c000000
je 0x4104c1
mov r8d, 1
xor r9d, r9d
mov eax, r8d
mov ecx, r9d
cpuid
and ecx, 0x1c000000
cmp ecx, 0x1c000000
je 0x410616
mov eax, r8d
mov ecx, r9d
cpuid
and ecx, 0x1c001000
cmp ecx, 0x1c001000
je 0x410636
mov eax, 0x80000001
mov ecx, r9d
cpuid
and ecx, 0x800
jne 0x410626
mov eax, r8d
cpuid
and ecx, 0x100000
jne 0x41064e
mov eax, r8d
cpuid
and edx, 0x4000000
mov ecx, edx
jne 0x410881
mov eax, r8d
cpuid
and edx, 0x2000000
jne 0x410b0d
mov byte [rsp + 0xd0], 0
mov r9d, 1
xor r8d, r8d
mov eax, r9d
mov ecx, r8d
cpuid
lea rax, [rsp + 0xd0]
and edx, 0x4000000
mov qword [rsp + 0x38], rax
jne 0x410488
lea rcx, str.NUMBER_OF_PROCESSORS
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
lea rsi, [rsp + 0xe0]
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
call sub.msvcrt.dll_getenv
lea rcx, str.PROCESSOR_REVISION
mov rdi, rax
call sub.msvcrt.dll_getenv
lea rcx, str.PROCESSOR_LEVEL
mov rbx, rax
call sub.msvcrt.dll_getenv
mov qword [rsp + 0x28], rdi
mov rcx, rsi
mov r9, rax
mov qword [rsp + 0x20], rbx
lea r8, str._s:_s:_s
mov edx, 0x20
lea rdi, [rsp + 0x2c0]
call fcn.0040a560
lea rax, [rsp + 0x160]
xor r8d, r8d
mov ecx, 0x1e
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2b8], 0
rep stosq qword [rdi], rax
mov eax, 0x80000000
mov ecx, r8d
cpuid
cmp eax, 0x80000003
jbe 0x4104ee
mov r9d, eax
and r9d, 0xf
test al, 0xe
je 0x4101bd
mov eax, 0x80000002
mov ecx, r8d
cpuid
vmovd xmm2, ecx
vmovd xmm3, eax
vpinsrd xmm1, xmm2, edx, 1
vpinsrd xmm0, xmm3, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x2b0], xmm0
cmp r9d, 2
jle 0x4101bd
mov eax, 0x80000003
mov ecx, r8d
cpuid
vmovd xmm4, ecx
vmovd xmm5, eax
vpinsrd xmm1, xmm4, edx, 1
vpinsrd xmm0, xmm5, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x2c0], xmm0
cmp r9d, 3
je 0x4101bd
mov eax, 0x80000004
mov ecx, r8d
cpuid
vmovd xmm2, ecx
vmovd xmm3, eax
vpinsrd xmm1, xmm2, edx, 1
vpinsrd xmm0, xmm3, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x2d0], xmm0
cmp r9d, 4
je 0x4101bd
mov eax, 0x80000005
mov ecx, r8d
cpuid
vmovd xmm4, ecx
vmovd xmm5, eax
vpinsrd xmm1, xmm4, edx, 1
vpinsrd xmm0, xmm5, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x2e0], xmm0
cmp r9d, 5
je 0x4101bd
mov eax, 0x80000006
mov ecx, r8d
cpuid
vmovd xmm2, ecx
vmovd xmm3, eax
vpinsrd xmm1, xmm2, edx, 1
vpinsrd xmm0, xmm3, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x2f0], xmm0
cmp r9d, 6
je 0x4101bd
mov eax, 0x80000007
mov ecx, r8d
cpuid
vmovd xmm4, ecx
vmovd xmm5, eax
vpinsrd xmm1, xmm4, edx, 1
vpinsrd xmm0, xmm5, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x300], xmm0
cmp r9d, 7
je 0x4101bd
mov eax, 0x80000008
mov ecx, r8d
cpuid
vmovd xmm7, ecx
vmovd xmm2, eax
vpinsrd xmm1, xmm7, edx, 1
vpinsrd xmm0, xmm2, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x310], xmm0
cmp r9d, 8
je 0x4101bd
mov eax, 0x80000009
mov ecx, r8d
cpuid
vmovd xmm3, ecx
vmovd xmm4, eax
vpinsrd xmm1, xmm3, edx, 1
vpinsrd xmm0, xmm4, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x320], xmm0
cmp r9d, 9
je 0x4101bd
xor r8d, r8d
mov eax, 0x8000000a
mov ecx, r8d
cpuid
vmovd xmm5, ecx
vmovd xmm7, eax
vpinsrd xmm1, xmm5, edx, 1
vpinsrd xmm0, xmm7, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x330], xmm0
cmp r9d, 0xa
je 0x4101bd
mov eax, 0x8000000b
mov ecx, r8d
cpuid
vmovd xmm2, ecx
vmovd xmm3, eax
vpinsrd xmm1, xmm2, edx, 1
vpinsrd xmm0, xmm3, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x340], xmm0
cmp r9d, 0xb
je 0x4101bd
mov eax, 0x8000000c
mov ecx, r8d
cpuid
vmovd xmm4, ecx
vmovd xmm5, eax
vpinsrd xmm1, xmm4, edx, 1
vpinsrd xmm0, xmm5, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x350], xmm0
cmp r9d, 0xc
je 0x4101bd
mov eax, 0x8000000d
mov ecx, r8d
cpuid
vmovd xmm7, ecx
vmovd xmm2, eax
vpinsrd xmm1, xmm7, edx, 1
vpinsrd xmm0, xmm2, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x360], xmm0
cmp r9d, 0xd
je 0x4101bd
mov eax, 0x8000000e
mov ecx, r8d
cpuid
vmovd xmm3, ecx
vmovd xmm4, eax
vpinsrd xmm1, xmm3, edx, 1
vpinsrd xmm0, xmm4, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x370], xmm0
cmp r9d, 0xf
jne 0x4101bd
mov eax, 0x8000000f
mov ecx, r8d
cpuid
vmovd xmm5, ecx
vmovd xmm7, eax
vpinsrd xmm1, xmm5, edx, 1
vpinsrd xmm0, xmm7, ebx, 1
vpunpcklqdq xmm0, xmm0, xmm1
vmovups xmmword [rsp + 0x380], xmm0
mov rcx, qword [rsp + 0x30]
lea r9, [rsp + 0x2b0]
lea r8, [0x00683628]
mov edx, 0x50
call fcn.0040a560
mov rcx, qword [rsp + 0x30]
lea rdx, [0x00683640]
call sub.msvcrt.dll_strstr
test rax, rax
je 0x410479
lea r15, [rsp + 0x2b0]
lea r9, [rax + 3]
lea r8, [0x00683628]
mov edx, 0x20
mov rcx, r15
mov byte [rax], 0
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2b8], 0
mov qword [rsp + 0x2c0], 0
mov qword [rsp + 0x2c8], 0
call fcn.0040a560
mov rcx, r15
call sub.msvcrt.dll_atof
lea rdx, [0x00683644]
mov rcx, r15
vmovups xmm6, xmm0
call sub.msvcrt.dll_strstr
vmovsd xmm7, qword [0x00684018]
test rax, rax
je 0x410274
vmulsd xmm6, xmm6, xmm7
mov r8, r15
lea rdx, str.sharing_CPU_stats_with_freq__s
mov ecx, 3
call fcn.0040afb0
vmovsd xmm0, qword [0x00684020]
vcomisd xmm6, xmm0
jae 0x410518
vcvttsd2si rdi, xmm6
mov byte [rsp + 0x11f], 0
call fcn.00644820
mov rcx, qword [rsp + 0x40]
mov rbx, rax
call fcn.00644ce0
lea rdx, str.algo
mov rcx, rbx
mov r8, rax
call fcn.00645490
lea rcx, [0x0068366c]
call fcn.00644ce0
lea rdx, str.type
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov rcx, qword [rsp + 0x30]
call fcn.00644ce0
lea rdx, str.device
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov rcx, rsi
call fcn.00644ce0
lea rdx, str.vendorid
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov rcx, qword [rsp + 0x38]
call fcn.00644ce0
lea rdx, str.arch
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov rcx, rdi
call fcn.00644e30
lea rdx, str.freq
mov rcx, rbx
mov r8, rax
call fcn.00645490
xor ecx, ecx
call fcn.00644e30
lea rdx, str.memf
mov rcx, rbx
mov r8, rax
call fcn.00645490
xor ecx, ecx
call fcn.00644e30
mov rcx, rbx
lea rdx, str.power
mov r8, rax
call fcn.00645490
mov rax, qword [0x006debe0]
vmovsd xmm0, qword [rax]
vdivsd xmm0, xmm0, xmm7
call fcn.00644eb0
mov rcx, rbx
lea rdx, str.khashes
mov r8, rax
call fcn.00645490
mov rax, qword [0x006dee30]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [rax]
call fcn.00644eb0
lea rdx, str.intensity
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov rax, qword [0x006dedf0]
movsxd rcx, dword [rax]
call fcn.00644e30
lea rdx, str.throughput
mov rcx, rbx
mov r8, rax
call fcn.00645490
lea rcx, str.cpuminer_opt_23.10
call fcn.00644ce0
lea rdx, str.client
mov rcx, rbx
mov r8, rax
call fcn.00645490
lea rcx, [rsp + 0xc8]
call fcn.00644ce0
lea rdx, [0x006836d1]
mov rcx, rbx
mov r8, rax
call fcn.00645490
mov rcx, r14
call fcn.00644ce0
mov rcx, rbx
lea rdx, str.driver
mov r8, rax
call fcn.00645490
mov r8, rbx
mov rcx, r13
lea rdx, str.result
call fcn.00645490
call fcn.00645070
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.00645490
jmp 0x40f147
vmovsd xmm7, qword [0x00684018]
xor edi, edi
jmp 0x41029f
mov eax, r9d
mov ecx, r8d
cpuid
and ecx, 0x2000000
je 0x40fd8d
mov rdi, qword [rsp + 0x38]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
mov rdi, qword [rsp + 0x38]
mov rax, rcx
not rax
mov dword [rdi + rax - 1], 0x494e20
jmp 0x40fd8d
mov eax, r10d
mov ecx, r8d
cpuid
mov r8d, ebx
and r8b, 0x20
je 0x40fcd3
mov dword [rsp + 0xd0], 0x32585641
mov byte [rsp + 0xd4], 0
jmp 0x40fd63
lea rcx, str.PROCESSOR_IDENTIFIER
call sub.msvcrt.dll_getenv
mov rcx, qword [rsp + 0x30]
lea r8, [0x00683628]
mov edx, 0x50
mov r9, rax
call fcn.0040a560
jmp 0x4101db
vsubsd xmm6, xmm6, xmm0
vcvttsd2si rdi, xmm6
btc rdi, 0x3f
jmp 0x41029f
lea rcx, [rbp + 0x1f0]
mov r8d, 4
mov rdx, rdi
mov qword [rsp + 0xa0], r10
call fcn.0040c830
mov qword [rsp + 0x88], 0
mov rax, qword [0x006deea0]
mov r10, qword [rsp + 0xa0]
cmp byte [rax], 0
jne 0x410ab8
cmp dword [rsp + 0x30], 0x4a
jne 0x410668
mov r11, qword [rsp + 0x68]
test r11, r11
je 0x410600
mov r9, qword [rsp + 0x70]
test r9, r9
je 0x410600
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x80]
test r8, r8
sete al
test r13, r13
sete dl
or eax, edx
test al, 1
jne 0x410600
cmp qword [rsp + 0x60], 0
je 0x410600
or rdx, 0xffffffffffffffff
xor eax, eax
mov rdi, r11
mov rcx, rdx
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410600
mov rcx, rdx
mov rdi, r9
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410600
mov rcx, rdx
mov rdi, r8
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410600
mov rcx, rdx
mov rdi, r13
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410600
mov rdi, qword [rsp + 0x60]
mov rcx, rdx
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
je 0x410668
lea rdx, str.Stratum_notify:_invalid_veil_parameters
mov ecx, 1
call fcn.0040a9d0
jmp 0x40f29f
mov dword [rsp + 0xd0], 0x585641
jmp 0x40fd63
mov dword [rsp + 0xd0], 0x504f58
jmp 0x40fd63
mov dword [rsp + 0xd0], 0x33414d46
mov byte [rsp + 0xd4], 0
jmp 0x40fd63
mov dword [rsp + 0xd0], 0x34455353
mov word [rsp + 0xd4], 0x32
jmp 0x40fd63
mov rdi, qword [rsp + 0x98]
lea r13, [rbp + 0x480]
mov qword [rsp + 0xa8], r10
mov rcx, r13
mov dword [rsp + 0xa0], edi
call fcn.0064b0b0
test edi, edi
mov r10, qword [rsp + 0xa8]
je 0x4108a3
mov eax, dword [rsp + 0x98]
cmp eax, dword [rbp + 0x1e4]
jle 0x410776
mov byte [rsp + 0xa8], r15b
xor edi, edi
mov r15, rbx
mov rbx, r10
jmp 0x4106cf
mov rcx, qword [rcx + rdi*8]
inc rdi
call sub.msvcrt.dll_free
mov rcx, qword [rbp + 0x1e8]
cmp dword [rbp + 0x1e0], edi
jg 0x4106c3
mov qword [rsp + 0xb0], rbx
mov rbx, r15
movzx r15d, byte [rsp + 0xa8]
call sub.msvcrt.dll_free
movsxd rcx, dword [rsp + 0x98]
shl rcx, 3
call sub.msvcrt.dll_malloc
mov r10, qword [rsp + 0xb0]
xor r8d, r8d
mov byte [rsp + 0xa8], r15b
mov qword [rsp + 0x420], rbp
mov r15, rbx
mov rdi, rax
mov rbx, r8
mov rbp, r10
jmp 0x410742
mov ecx, 0x20
call sub.msvcrt.dll_malloc
mov qword [rdi + rbx*8], rax
inc rbx
cmp dword [rsp + 0xa0], ebx
jg 0x410731
mov eax, dword [rsp + 0x98]
mov r10, rbp
mov rbp, qword [rsp + 0x420]
mov rbx, r15
movzx r15d, byte [rsp + 0xa8]
mov dword [rbp + 0x1e4], eax
mov qword [rbp + 0x1e8], rdi
cmp dword [rsp + 0x98], 0
jle 0x4108a3
mov rax, qword [rsp + 0x98]
xor edi, edi
mov dword [rsp + 0xb0], esi
mov rsi, rdi
mov rdi, rbx
mov rbx, r10
dec eax
mov qword [rsp + 0xa8], rax
jmp 0x4107fb
mov rcx, rdx
mov qword [rsp + 0xb8], rdx
call sub.msvcrt.dll_strlen
cmp rax, 0x40
mov rcx, qword [rbp + 0x1e8]
mov rdx, qword [rsp + 0xb8]
jne 0x41082d
mov rax, qword [rsp + 0xa0]
mov r8d, 0x20
mov rcx, qword [rcx + rax]
call fcn.0040c830
lea rax, [rsi + 1]
cmp qword [rsp + 0xa8], rsi
je 0x410899
mov rsi, rax
mov rdx, rsi
mov rcx, rbx
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rdx, rax
lea rax, [rsi*8]
mov qword [rsp + 0xa0], rax
test rdx, rdx
jne 0x4107aa
mov rcx, qword [rbp + 0x1e8]
mov ebx, dword [rbp + 0x1e4]
jmp 0x41084f
mov rax, qword [rsp + 0xa0]
dec ebx
mov rcx, qword [rcx + rax]
call sub.msvcrt.dll_free
mov rcx, qword [rbp + 0x1e8]
test ebx, ebx
jg 0x410835
call sub.msvcrt.dll_free
mov rcx, r13
mov qword [rbp + 0x1e0], 0
call fcn.0064bfe0
lea rdx, str.Stratum_notify:_invalid_Merkle_branch
mov ecx, 1
call fcn.0040a9d0
jmp 0x40f29f
mov dword [rsp + 0xd0], 0x32455353
mov byte [rsp + 0xd4], 0
jmp 0x40fd63
mov esi, dword [rsp + 0xb0]
mov rbx, rdi
mov eax, dword [rsp + 0x98]
mov rdi, qword [rsp + 0x50]
or rdx, 0xffffffffffffffff
mov rcx, rdx
mov dword [rbp + 0x1e0], eax
xor eax, eax
repne scasb al, byte [rdi]
mov rdi, qword [rsp + 0x58]
not rcx
mov r8, rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x160]
add rdx, qword [rbp + 0x150]
dec r8
repne scasb al, byte [rdi]
shr r8, 1
mov r15, r8
mov rax, rcx
mov rcx, qword [rbp + 0x1d0]
not rax
lea rdi, [rax - 1]
shr rdi, 1
lea rax, [r8 + rdi]
add rdx, rax
mov qword [rbp + 0x1c8], rdx
call sub.msvcrt.dll_realloc
mov r8, r15
mov rcx, rax
mov qword [rbp + 0x1d0], rax
mov rax, qword [rbp + 0x150]
mov rdx, qword [rsp + 0x50]
add rax, r15
add rax, rcx
mov qword [rbp + 0x1d8], rax
call fcn.0040c830
mov rcx, qword [rbp + 0x1d0]
mov rdx, qword [rbp + 0x158]
mov r8, qword [rbp + 0x150]
add rcx, r15
call sub.msvcrt.dll_memcpy
mov rcx, qword [rbp + 0x1c0]
test rcx, rcx
je 0x410970
mov rdx, qword [rsp + 0x38]
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x410985
mov rcx, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x160]
xor edx, edx
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x160]
add rcx, qword [rbp + 0x1d8]
mov r8, rdi
mov rdx, qword [rsp + 0x58]
call fcn.0040c830
mov rcx, qword [rbp + 0x1c0]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x38]
call sub.msvcrt.dll__strdup
lea rcx, [rbp + 0x180]
mov r8d, 0x20
mov rdx, rbx
mov qword [rbp + 0x1c0], rax
call fcn.0040c830
cmp dword [rsp + 0x90], 0
jne 0x410c1b
test esi, esi
jne 0x410c01
mov rax, qword [0x006deea0]
cmp byte [rax], 0
jne 0x410be2
cmp dword [rsp + 0x30], 0x4a
je 0x410b1d
mov rdx, qword [rbp + 0x1d0]
mov rcx, qword [rbp + 0x1c8]
lea rax, [rdx + 0x20]
lea rdx, [rdx + rcx - 2]
jmp 0x410a24
cmp rdx, rax
jbe 0x410a38
inc rax
movzx ecx, byte [rax]
cmp cx, 0xff
jne 0x410a1c
jmp 0x410a38
cmp rdx, rax
jbe 0x410a42
inc rax
movzx ecx, byte [rax]
cmp cx, 0xff
je 0x410a30
movzx ecx, byte [rax - 1]
xor edx, edx
cmp cx, 0xff
je 0x410b98
mov dword [rbp + 0x488], edx
mov rdx, qword [rsp + 0x40]
lea rcx, [rbp + 0x1f4]
mov r8d, 4
mov r15d, 1
call fcn.0040c830
mov rdx, qword [rsp + 0x48]
lea rcx, [rbp + 0x1f8]
mov r8d, 4
call fcn.0040c830
vmovsd xmm0, qword [rbp + 0x138]
mov rcx, r13
movzx eax, byte [rsp + 0x97]
mov byte [rbp + 0x208], al
vmovsd qword [rbp + 0x200], xmm0
call fcn.0064bfe0
jmp 0x40f29f
mov edx, 9
mov rcx, r13
call fcn.00644b30
mov rcx, rax
call fcn.00644d50
mov rdi, rax
mov qword [rsp + 0x88], rax
test rax, rax
je 0x410af7
or rcx, 0xffffffffffffffff
xor eax, eax
mov r10, qword [rsp + 0xa0]
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
je 0x41056c
lea rdx, str.Stratum_notify:_invalid_sapling_parameters
mov ecx, 1
call fcn.0040a9d0
jmp 0x40f29f
mov dword [rsp + 0xd0], 0x455353
jmp 0x40fd63
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp + 0x249]
mov r8d, 0x20
call fcn.0040c830
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp + 0x269]
mov r8d, 0x20
call fcn.0040c830
mov rdx, qword [rsp + 0x78]
lea rcx, [rbp + 0x289]
mov r8d, 0x20
call fcn.0040c830
mov rdx, qword [rsp + 0x80]
lea rcx, [rbp + 0x2a9]
mov r8d, 0x20
call fcn.0040c830
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp + 0x2c9]
mov r8d, 0x20
call fcn.0040c830
jmp 0x410a03
movzx ecx, byte [rax - 2]
cmp cx, 0xff
jne 0x410a53
movzx edx, byte [rax + 3]
movzx ecx, byte [rax + 2]
shl edx, 8
add edx, ecx
movzx ecx, byte [rax + 1]
movzx edx, dx
cmp cx, 3
je 0x410c35
cmp cx, 4
jne 0x410a53
movzx ecx, byte [rax + 5]
movzx eax, byte [rax + 4]
shl ecx, 8
add eax, ecx
shl eax, 0x10
add edx, eax
jmp 0x410a53
mov rdx, qword [rsp + 0x88]
lea rcx, [rbp + 0x1a0]
mov r8d, 0x20
call fcn.0040c830
jmp 0x4109f8
lea rcx, [rbp + 0x209]
mov r8d, 0x40
mov rdx, r14
call fcn.0040c830
jmp 0x4109e8
lea rcx, [rbp + 0x209]
mov r8d, 0x20
mov rdx, r14
call fcn.0040c830
jmp 0x4109e0
movzx eax, byte [rax + 4]
shl eax, 0x10
add edx, eax
jmp 0x410a53