Function at 0x40e710
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.006adf80
mov r12, rax
test rax, rax
je 0x40ec98
lea rdx, str.method
mov rcx, rax
call fcn.006aefe0
mov rcx, rax
call fcn.006af450
mov rsi, rax
test rax, rax
je 0x40e890
lea rdx, str.params
mov rcx, r12
call fcn.006aefe0
lea rdx, [0x006ee3a5]
mov rcx, r12
mov r13, rax
call fcn.006aefe0
mov rdi, qword [sym.imp.msvcrt.dll__stricmp]
lea rdx, str.mining.notify
mov rcx, rsi
mov r14, rax
call rdi
mov ebx, eax
test eax, eax
je 0x40e8b8
lea rdx, str.mining.ping
mov rcx, rsi
call rdi
test eax, eax
jne 0x40e9e0
mov rax, qword [0x00748f10]
cmp byte [rax], 0
jne 0x40ed60
xor r15d, r15d
test r14, r14
je 0x40e893
cmp dword [r14], 7
je 0x40e893
mov rcx, r14
call fcn.006af550
lea r15, [rsp + 0x2b0]
mov r8d, eax
lea rdx, str._id_:_d__result_:_pong___error_:null
mov rcx, r15
call sub.msvcrt.dll_sprintf
mov rax, qword [0x00748f80]
cmp byte [rax], 0
jne 0x40f128
lea r13, [rbp + 0x130]
mov rcx, r13
call fcn.006b5820
lea rdx, [rbp + 0x118]
mov r8, r15
lea rcx, [rbp + 8]
call fcn.0040a710
mov rcx, r13
mov r15d, eax
call fcn.006b6750
mov rdx, qword [r12 + 8]
cmp rdx, 0xffffffffffffffff
jne 0x40e89e
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 rdx, qword [r12 + 8]
cmp rdx, 0xffffffffffffffff
je 0x40e85e
dec rdx
mov qword [r12 + 8], rdx
jne 0x40e85e
mov rcx, r12
call fcn.006af760
jmp 0x40e85e
mov rcx, r13
call fcn.006af210
mov rdx, rax
mov rax, qword [0x00748ea0]
mov esi, dword [rax]
cmp esi, 0x18
sete r9b
cmp edx, 0xa
sete al
and r9b, al
mov r15d, r9d
jne 0x40ecc8
cmp esi, 0x27
je 0x40eba0
xor edx, edx
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov qword [rsp + 0x40], rax
cmp esi, 0x4c
jne 0x40ebda
mov edx, 2
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x68], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 4
mov rcx, r13
mov qword [rsp + 0x70], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 5
mov rcx, r13
mov qword [rsp + 0x78], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 6
mov rcx, r13
mov qword [rsp + 0x80], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x98], 0
mov dword [rsp + 0x48], 0xa
mov r8d, 9
mov r15d, 8
mov edx, 7
xor r14d, r14d
mov edi, 7
jmp 0x40ec36
lea rdx, str.mining.set_difficulty
mov rcx, rsi
call rdi
test eax, eax
je 0x40ed80
lea rdx, str.mining.set_extranonce
mov rcx, rsi
call rdi
test eax, eax
je 0x40ef90
lea rdx, str.client.reconnect
mov rcx, rsi
call rdi
test eax, eax
je 0x40f148
lea rdx, str.client.get_algo
mov rcx, rsi
call rdi
test eax, eax
jne 0x40ee00
mov rax, qword [0x00748fb0]
cmp byte [rax], 0
je 0x40f27f
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2b8], 0
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
xor r15d, r15d
test r14, r14
je 0x40e893
cmp dword [r14], 7
je 0x40e893
lea r15, [rsp + 0x2b0]
mov edx, 0x40
mov rcx, r15
call fcn.00404240
call fcn.006aef50
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40eae4
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006ee3a5]
mov rcx, r13
call fcn.006afb60
call fcn.006af750
mov r8, rax
lea rdx, str.error
mov rcx, r13
call fcn.006afb60
mov rcx, r15
call fcn.006af3e0
mov r8, rax
lea rdx, str.result
mov rcx, r13
call fcn.006afb60
xor edx, edx
mov rcx, r13
call fcn.006abb50
mov r14, rax
mov rax, qword [0x00748f80]
cmp byte [rax], 0
jne 0x40f266
lea rbx, [rbp + 0x130]
mov rcx, rbx
call fcn.006b5820
lea rcx, [rbp + 8]
lea rdx, [rbp + 0x118]
mov r8, r14
call fcn.0040a710
mov rcx, rbx
mov r15d, eax
call fcn.006b6750
test r13, r13
je 0x40eb8d
mov rax, qword [r13 + 8]
cmp rax, 0xffffffffffffffff
je 0x40eb8d
dec rax
mov qword [r13 + 8], rax
je 0x40f50b
mov rcx, r14
call sub.msvcrt.dll_free
jmp 0x40e893
cmp edx, 0xa
je 0x40eef8
xor edx, edx
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x98], 0
mov dword [rsp + 0x48], 5
mov r8d, 4
mov r15d, 3
mov edx, 2
xor r14d, r14d
mov edi, 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
mov qword [rsp + 0x30], r8
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov rdx, r15
mov rcx, r13
mov qword [rsp + 0x50], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov r8, qword [rsp + 0x30]
mov rcx, r13
mov rdx, r8
mov qword [rsp + 0x58], rax
call fcn.006af230
xor r15d, r15d
test rax, rax
je 0x40ec89
cmp dword [rax], 1
je 0x40efb0
mov byte [rbp + 0x48c], 1
jmp 0x40e893
mov r8d, dword [rsp + 0x1b0]
lea r9, [rsp + 0x20c]
lea rdx, str.JSON_decode_failed__d_:__s
mov ecx, 1
call fcn.0040a7e0
xor r15d, r15d
jmp 0x40e85e
xor edx, edx
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 2
mov rcx, r13
mov qword [rsp + 0x40], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov r14, rax
test rax, rax
je 0x40ede0
mov rcx, r14
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x40ede0
mov dword [rsp + 0x48], 6
mov dword [rsp + 0x98], 1
mov r8d, 5
mov r15d, 4
mov edx, 3
mov edi, 3
jmp 0x40ec06
lea rdx, str.Pool_ping
mov ecx, 5
call fcn.0040a940
jmp 0x40e7de
xor edx, edx
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af6f0
vucomisd xmm0, qword [0x006ef0a8]
vmovupd xmm6, xmm0
jp 0x40edb0
je 0x40e890
nop word cs:[rax + rax]
lea r13, [rbp + 0x480]
mov rcx, r13
call fcn.006b5820
vmovsd qword [rbp + 0x138], xmm6
mov rcx, r13
call fcn.006b6750
mov r15d, 1
jmp 0x40e893
lea rdx, str.Stratum_notify:_invalid_claim_parameter
mov ecx, 1
call fcn.0040a7e0
xor r15d, r15d
jmp 0x40ec89
lea rdx, str.client.get_stats
mov rcx, rsi
call rdi
test eax, eax
je 0x40f295
lea rdx, str.client.get_version
mov rcx, rsi
call rdi
test eax, eax
je 0x40f463
lea rdx, str.client.show_message
mov rcx, rsi
call rdi
test eax, eax
je 0x40f531
mov rax, qword [0x00748f10]
cmp byte [rax], 0
jne 0x40f518
test r14, r14
je 0x40e890
cmp dword [r14], 7
je 0x40e890
call fcn.006aef50
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40ee78
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006ee3a5]
mov rcx, r13
call fcn.006afb60
call fcn.006af740
mov r8, rax
lea rdx, str.result
mov rcx, r13
call fcn.006afb60
call fcn.006aef50
mov ecx, 0x26
mov rbx, rax
call fcn.006af520
mov r8, rax
mov rcx, rbx
lea rdx, str.code
call fcn.006afb60
lea rcx, str.unknown_method
call fcn.006af3e0
mov r8, rax
lea rdx, str.message
mov rcx, rbx
call fcn.006afb60
mov r8, rbx
lea rdx, str.error
jmp 0x40eb1f
xor edx, edx
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov edx, 2
mov rcx, r13
mov qword [rsp + 0x40], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov r14, rax
test rax, rax
je 0x40f250
mov rcx, r14
call sub.msvcrt.dll_strlen
cmp rax, 0x80
jne 0x40f250
mov dword [rsp + 0x98], 0
mov dword [rsp + 0x48], 6
mov r8d, 5
mov r15d, 4
mov edx, 3
mov ebx, 1
jmp 0x40ed50
xor r8d, r8d
mov rdx, r13
mov rcx, rbp
call fcn.0040c5b0
mov r15d, eax
jmp 0x40e893
mov rcx, rax
mov qword [rsp + 0x30], rax
call fcn.006af210
movsxd rdx, dword [rsp + 0x48]
mov rcx, r13
mov qword [rsp + 0xa0], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
lea edx, [rdi + 4]
movsxd rdx, edx
mov rcx, r13
mov qword [rsp + 0x90], rax
call fcn.006af230
mov rcx, rax
call fcn.006af450
lea edx, [rdi + 5]
movsxd rdx, edx
mov rcx, r13
add edi, 6
mov qword [rsp + 0x48], rax
call fcn.006af230
mov rcx, rax
movsxd r15, edi
call fcn.006af450
mov rdx, r15
mov rcx, r13
mov qword [rsp + 0x88], rax
call fcn.006af230
test rax, rax
mov byte [rsp + 0x9f], 0
mov r10, qword [rsp + 0x30]
je 0x40f059
mov rdx, r15
mov rcx, r13
call fcn.006af230
cmp dword [rax], 5
mov r10, qword [rsp + 0x30]
sete byte [rsp + 0x9f]
cmp qword [rsp + 0x38], 0
mov qword [rsp + 0x30], r10
je 0x40f108
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x40f108
cmp qword [rsp + 0x50], 0
je 0x40f108
cmp qword [rsp + 0x58], 0
je 0x40f108
mov rdi, qword [rsp + 0x90]
test rdi, rdi
sete al
cmp qword [rsp + 0x48], 0
sete r9b
or eax, r9d
cmp qword [rsp + 0x88], 0
sete r9b
or al, r9b
mov r15d, eax
jne 0x40f108
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x40f108
mov rcx, rdi
call sub.msvcrt.dll_strlen
cmp rax, 8
jne 0x40f108
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_strlen
cmp rax, 8
jne 0x40f108
mov rcx, qword [rsp + 0x88]
call sub.msvcrt.dll_strlen
cmp rax, 8
mov r10, qword [rsp + 0x30]
je 0x410030
nop dword [rax]
lea rdx, str.Stratum_notify:_invalid_parameters
mov ecx, 1
call fcn.0040a7e0
xor r15d, r15d
jmp 0x40ec89
mov r8, r15
lea rdx, [0x006ee196]
mov ecx, 5
call fcn.0040a940
jmp 0x40e826
xor edx, edx
mov rcx, r13
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov rcx, r13
mov edx, 1
mov rbx, rax
call fcn.006af230
mov rcx, rax
test rax, rax
je 0x40f17b
cmp dword [rax], 2
je 0x40f4f7
call fcn.006af550
mov esi, eax
test rbx, rbx
je 0x40e890
test esi, esi
je 0x40e890
mov rcx, rbx
call sub.msvcrt.dll_strlen
lea rcx, [rax + 0x20]
call sub.msvcrt.dll_malloc
mov rdx, qword [rbp]
mov r13, rax
mov r8d, 0xf
mov rcx, rax
call sub.msvcrt.dll_strncpy
lea rdx, [0x006ee241]
mov rcx, r13
call sub.msvcrt.dll_strstr
lea rcx, [rax + 3]
mov r8, rbx
mov r9d, esi
lea rdx, str._s:_d
call sub.msvcrt.dll_sprintf
mov rax, qword [0x00748fd0]
mov r8, r13
movzx r15d, byte [rax]
test r15b, r15b
je 0x40f4d3
lea rdx, str.Server_requested_reconnection_to__s
mov ecx, 3
call fcn.0040ac70
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov qword [rbp], r13
lea r13, [rbp + 0x130]
mov rcx, r13
call fcn.006b5820
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x40f243
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.006b6750
jmp 0x40e893
lea rdx, str.Stratum_notify:_invalid_UTXO_root_parameter
mov ecx, 1
call fcn.0040a7e0
jmp 0x40ec89
mov r8, r14
lea rdx, [0x006ee196]
mov ecx, 5
call fcn.0040a940
jmp 0x40eb44
lea rdx, str.Pool_asked_your_algo_parameter
mov ecx, 3
call fcn.0040ac70
jmp 0x40ea40
test r14, r14
je 0x40e890
cmp dword [r14], 7
je 0x40e890
call fcn.006aef50
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f2c1
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006ee3a5]
mov rcx, r13
call fcn.006afb60
mov rax, qword [0x00748ff0]
mov qword [rsp + 0x120], 0
cmp byte [rax], 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
jne 0x40f5cb
call fcn.006aef50
mov ecx, 1
mov rbx, rax
call fcn.006af520
mov r8, rax
mov rcx, rbx
lea rdx, str.code
call fcn.006afb60
lea rcx, str.disabled
jmp 0x40eecc
test r14, r14
je 0x40e890
cmp dword [r14], 7
je 0x40e890
call fcn.006aef50
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f48f
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006ee3a5]
mov rcx, r13
call fcn.006afb60
call fcn.006af750
mov r8, rax
lea rdx, str.error
mov rcx, r13
call fcn.006afb60
lea rcx, str.cpuminer_opt_3.23.3
call fcn.006af3e0
mov r8, rax
lea rdx, str.result
jmp 0x40eb1f
lea rdx, str.Ignoring_request_to_reconnect_to__s
mov ecx, 4
call fcn.0040ac70
mov rcx, r13
call sub.msvcrt.dll_free
mov r15d, 1
jmp 0x40e893
call fcn.006af450
mov rcx, rax
call sub.msvcrt.dll_atoi
mov esi, eax
jmp 0x40f182
mov rcx, r13
call fcn.006af760
jmp 0x40eb8d
mov r8, rsi
lea rdx, str.unknown_stratum_method__s_
mov ecx, 2
call fcn.0040ac70
jmp 0x40ee4c
mov rcx, r13
xor edx, edx
call fcn.006af230
mov rcx, rax
test rax, rax
je 0x40f55c
call fcn.006af450
mov r8, rax
lea rdx, str.MESSAGE_FROM_SERVER:__s
mov ecx, 3
call fcn.0040ac70
mov r15d, 1
test r14, r14
je 0x40e893
cmp dword [r14], 7
je 0x40e893
call fcn.006aef50
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f58e
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006ee3a5]
mov rcx, r13
call fcn.006afb60
call fcn.006af750
mov r8, rax
lea rdx, str.error
mov rcx, r13
call fcn.006afb60
call fcn.006af730
mov r8, rax
lea rdx, str.result
jmp 0x40eb1f
lea rsi, [rsp + 0x120]
mov edx, 0x40
mov rcx, rsi
call fcn.00404240
mov dword [rsp + 0x20], 0
mov edx, 0x34
lea r14, [rsp + 0x100]
mov word [rsp + 0xcc], dx
mov r9d, 3
lea rdx, str.GCC__d._d._d_n
mov r8d, 9
mov rcx, r14
mov dword [rsp + 0xc8], 0x366e6977
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 0x40f626
mov ecx, eax
shr ecx, 0x10
test eax, 0x8080
cmove eax, ecx
lea rcx, [rdx + 2]
cmove rdx, rcx
mov ebx, eax
add bl, al
sbb rdx, 3
mov eax, 0x32
mov r9d, 1
xor r8d, r8d
mov word [rdx + 4], ax
mov dword [rdx], 0x58564120
mov eax, r9d
mov ecx, r8d
cpuid
mov r10d, 7
mov eax, r10d
mov ecx, r8d
cpuid
mov eax, r9d
mov ecx, r8d
cpuid
and ecx, 0x1c000000
cmp ecx, 0x1c000000
je 0x40ffb4
mov r8d, 1
xor r9d, r9d
mov eax, r8d
mov ecx, r9d
cpuid
and ecx, 0x1c000000
cmp ecx, 0x1c000000
je 0x41011a
mov eax, r8d
mov ecx, r9d
cpuid
and ecx, 0x1c001000
cmp ecx, 0x1c001000
je 0x41013a
mov eax, 0x80000001
mov ecx, r9d
cpuid
and ecx, 0x800
jne 0x41012a
mov eax, r8d
cpuid
and ecx, 0x100000
jne 0x410152
mov eax, r8d
cpuid
and edx, 0x4000000
mov ecx, edx
jne 0x410366
mov eax, r8d
cpuid
and edx, 0x2000000
jne 0x4105e9
mov byte [rsp + 0xd0], 0
mov eax, 1
xor ecx, ecx
cpuid
lea rax, [rsp + 0xd0]
and ecx, 0x2000000
mov qword [rsp + 0x38], rax
jne 0x41000b
lea rcx, str.NUMBER_OF_PROCESSORS
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
call sub.msvcrt.dll_getenv
lea rcx, str.PROCESSOR_REVISION
mov r15, rax
call sub.msvcrt.dll_getenv
mov rbx, rax
lea rcx, str.PROCESSOR_LEVEL
call sub.msvcrt.dll_getenv
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rbx
lea rdi, [rsp + 0xe0]
mov rcx, rdi
mov r9, rax
lea r8, str._s:_s:_s
mov edx, 0x20
call fcn.0040a370
lea rax, [rsp + 0x160]
xor r8d, r8d
mov qword [rsp + 0x30], rax
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
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
mov qword [rsp + 0x2f0], 0
mov qword [rsp + 0x2f8], 0
mov qword [rsp + 0x300], 0
mov qword [rsp + 0x308], 0
mov qword [rsp + 0x310], 0
mov qword [rsp + 0x318], 0
mov qword [rsp + 0x320], 0
mov qword [rsp + 0x328], 0
mov qword [rsp + 0x330], 0
mov qword [rsp + 0x338], 0
mov qword [rsp + 0x340], 0
mov qword [rsp + 0x348], 0
mov qword [rsp + 0x350], 0
mov eax, 0x80000000
mov qword [rsp + 0x358], 0
mov ecx, r8d
mov qword [rsp + 0x360], 0
mov qword [rsp + 0x368], 0
mov qword [rsp + 0x370], 0
mov qword [rsp + 0x378], 0
mov qword [rsp + 0x380], 0
mov qword [rsp + 0x388], 0
mov qword [rsp + 0x390], 0
mov qword [rsp + 0x398], 0
mov qword [rsp + 0x3a0], 0
mov qword [rsp + 0x3a8], 0
cpuid
vmovd xmm0, eax
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
cmp eax, 0x80000003
jbe 0x40ffe1
mov r9d, eax
and r9d, 0xf
test al, 0xe
je 0x40fcf1
mov eax, 0x80000002
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x2b0], xmm0
cmp r9d, 2
jle 0x40fcf1
mov eax, 0x80000003
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x2c0], xmm0
cmp r9d, 3
je 0x40fcf1
mov eax, 0x80000004
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x2d0], xmm0
cmp r9d, 4
je 0x40fcf1
mov eax, 0x80000005
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x2e0], xmm0
cmp r9d, 5
je 0x40fcf1
mov eax, 0x80000006
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x2f0], xmm0
cmp r9d, 6
je 0x40fcf1
mov eax, 0x80000007
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x300], xmm0
cmp r9d, 7
je 0x40fcf1
mov eax, 0x80000008
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x310], xmm0
cmp r9d, 8
je 0x40fcf1
mov eax, 0x80000009
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x320], xmm0
cmp r9d, 9
je 0x40fcf1
xor r8d, r8d
mov eax, 0x8000000a
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x330], xmm0
cmp r9d, 0xa
je 0x40fcf1
mov eax, 0x8000000b
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x340], xmm0
cmp r9d, 0xb
je 0x40fcf1
mov eax, 0x8000000c
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x350], xmm0
cmp r9d, 0xc
je 0x40fcf1
mov eax, 0x8000000d
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x360], xmm0
cmp r9d, 0xd
je 0x40fcf1
mov eax, 0x8000000e
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x370], xmm0
cmp r9d, 0xf
jne 0x40fcf1
mov eax, 0x8000000f
mov ecx, r8d
cpuid
vpinsrd xmm0, xmm0, eax, 0
vpinsrd xmm0, xmm0, ebx, 1
vpinsrd xmm0, xmm0, ecx, 2
vpinsrd xmm0, xmm0, edx, 3
vmovups xmmword [rsp + 0x380], xmm0
mov rcx, qword [rsp + 0x30]
lea r9, [rsp + 0x2b0]
lea r8, [0x006ee618]
mov edx, 0x50
call fcn.0040a370
mov rcx, qword [rsp + 0x30]
lea rdx, [0x006ee630]
call sub.msvcrt.dll_strstr
test rax, rax
je 0x40ffa4
mov byte [rax], 0
lea r15, [rsp + 0x2b0]
lea r9, [rax + 3]
lea r8, [0x006ee618]
mov edx, 0x20
mov rcx, r15
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2b8], 0
mov qword [rsp + 0x2c0], 0
mov qword [rsp + 0x2c8], 0
call fcn.0040a370
mov rcx, r15
call sub.msvcrt.dll_atof
lea rdx, [0x006ee634]
mov rcx, r15
vmovupd xmm6, xmm0
call sub.msvcrt.dll_strstr
vmovsd xmm7, qword [0x006ef0b8]
test rax, rax
je 0x40fda8
vmulsd xmm6, xmm6, xmm7
mov r8, r15
lea rdx, str.sharing_CPU_stats_with_freq__s
mov ecx, 3
call fcn.0040ac70
vcvttsd2usi r9, xmm6
mov qword [rsp + 0x40], r9
mov byte [rsp + 0x11f], 0
call fcn.006aef50
mov rcx, rsi
mov rbx, rax
call fcn.006af3e0
mov r8, rax
lea rdx, str.algo
mov rcx, rbx
call fcn.006afb60
lea rcx, [0x006ee65c]
call fcn.006af3e0
mov r8, rax
lea rdx, str.type
mov rcx, rbx
call fcn.006afb60
mov rcx, qword [rsp + 0x30]
call fcn.006af3e0
mov r8, rax
lea rdx, str.device
mov rcx, rbx
call fcn.006afb60
mov rcx, rdi
call fcn.006af3e0
mov r8, rax
lea rdx, str.vendorid
mov rcx, rbx
call fcn.006afb60
mov rcx, qword [rsp + 0x38]
call fcn.006af3e0
mov r8, rax
lea rdx, str.arch
mov rcx, rbx
call fcn.006afb60
mov r9, qword [rsp + 0x40]
mov rcx, r9
call fcn.006af520
mov r8, rax
lea rdx, str.freq
mov rcx, rbx
call fcn.006afb60
xor ecx, ecx
call fcn.006af520
mov r8, rax
lea rdx, str.memf
mov rcx, rbx
call fcn.006afb60
xor ecx, ecx
call fcn.006af520
mov r8, rax
mov rcx, rbx
lea rdx, str.power
call fcn.006afb60
mov rax, qword [0x00748d00]
vmovsd xmm0, qword [rax]
vdivsd xmm0, xmm0, xmm7
call fcn.006af5a0
mov r8, rax
mov rcx, rbx
lea rdx, str.khashes
call fcn.006afb60
mov rax, qword [0x00748f70]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [rax]
call fcn.006af5a0
mov r8, rax
lea rdx, str.intensity
mov rcx, rbx
call fcn.006afb60
mov rax, qword [0x00748f30]
movsxd rcx, dword [rax]
call fcn.006af520
mov r8, rax
lea rdx, str.throughput
mov rcx, rbx
call fcn.006afb60
lea rcx, str.cpuminer_opt_3.23.3
call fcn.006af3e0
mov r8, rax
lea rdx, str.client
mov rcx, rbx
call fcn.006afb60
lea rcx, [rsp + 0xc8]
call fcn.006af3e0
mov r8, rax
lea rdx, [0x006ee6c2]
mov rcx, rbx
call fcn.006afb60
mov rcx, r14
call fcn.006af3e0
mov r8, rax
mov rcx, rbx
lea rdx, str.driver
call fcn.006afb60
mov r8, rbx
mov rcx, r13
lea rdx, str.result
call fcn.006afb60
call fcn.006af750
mov r8, rax
lea rdx, str.error
mov rcx, r13
call fcn.006afb60
jmp 0x40eb27
vmovsd xmm7, qword [0x006ef0b8]
xor r9d, r9d
jmp 0x40fdc2
mov eax, r10d
mov ecx, r8d
cpuid
mov r8d, ebx
and r8b, 0x20
je 0x40f6a3
mov dword [rsp + 0xd0], 0x32585641
mov byte [rsp + 0xd4], 0
jmp 0x40f733
lea rcx, str.PROCESSOR_IDENTIFIER
call sub.msvcrt.dll_getenv
mov rcx, qword [rsp + 0x30]
mov r9, rax
lea r8, [0x006ee618]
mov edx, 0x50
call fcn.0040a370
jmp 0x40fd0f
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 0x40f755
mov rdx, qword [rsp + 0x90]
lea rcx, [rbp + 0x1f0]
mov r8d, 4
mov qword [rsp + 0xa8], r10
call fcn.0040c490
mov rax, qword [0x00748fe0]
mov qword [rsp + 0x30], 0
cmp byte [rax], 0
mov r10, qword [rsp + 0xa8]
jne 0x41058f
cmp esi, 0x4c
jne 0x41016c
mov r11, qword [rsp + 0x68]
test r11, r11
je 0x410104
mov r9, qword [rsp + 0x70]
test r9, r9
je 0x410104
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x80]
test r8, r8
sete dl
test r13, r13
sete al
or dl, al
jne 0x410104
cmp qword [rsp + 0x60], 0
sete al
je 0x410104
or rdx, 0xffffffffffffffff
mov rcx, rdx
mov rdi, r11
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410104
mov rcx, rdx
mov rdi, r9
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410104
mov rcx, rdx
mov rdi, r8
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410104
mov rcx, rdx
mov rdi, r13
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
jne 0x410104
mov rdi, qword [rsp + 0x60]
mov rcx, rdx
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffbe
je 0x41016c
lea rdx, str.Stratum_notify:_invalid_veil_parameters
mov ecx, 1
call fcn.0040a7e0
jmp 0x40ec89
mov dword [rsp + 0xd0], 0x585641
jmp 0x40f733
mov dword [rsp + 0xd0], 0x504f58
jmp 0x40f733
mov dword [rsp + 0xd0], 0x33414d46
mov byte [rsp + 0xd4], 0
jmp 0x40f733
mov dword [rsp + 0xd0], 0x34455353
mov word [rsp + 0xd4], 0x32
jmp 0x40f733
mov rdi, qword [rsp + 0xa0]
lea r13, [rbp + 0x480]
mov rcx, r13
mov qword [rsp + 0xa8], r10
mov dword [rsp + 0x90], edi
call fcn.006b5820
test edi, edi
mov r10, qword [rsp + 0xa8]
je 0x410387
mov eax, dword [rsp + 0xa0]
cmp eax, dword [rbp + 0x1e4]
jle 0x410259
xor edi, edi
jmp 0x4101cd
mov rcx, qword [rcx + rdi*8]
inc rdi
call sub.msvcrt.dll_free
mov r10, qword [rsp + 0xa8]
cmp dword [rbp + 0x1e0], edi
mov qword [rsp + 0xa8], r10
mov rcx, qword [rbp + 0x1e8]
jg 0x4101b9
call sub.msvcrt.dll_free
movsxd rcx, dword [rsp + 0xa0]
shl rcx, 3
call sub.msvcrt.dll_malloc
mov rdi, rax
mov r10, qword [rsp + 0xa8]
xor r8d, r8d
jmp 0x41023b
mov ecx, 0x20
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0xa8], r10
call sub.msvcrt.dll_malloc
mov r8, qword [rsp + 0xb0]
mov r10, qword [rsp + 0xa8]
mov qword [rdi + r8*8], rax
inc r8
cmp dword [rsp + 0x90], r8d
jg 0x41020a
mov eax, dword [rsp + 0xa0]
mov qword [rbp + 0x1e8], rdi
mov dword [rbp + 0x1e4], eax
cmp dword [rsp + 0xa0], 0
jle 0x410387
mov rax, qword [rsp + 0xa0]
xor edi, edi
dec eax
mov qword [rsp + 0xa8], rax
mov rax, rdi
mov dword [rsp + 0xb0], ebx
mov edi, esi
mov rbx, r10
mov rsi, rax
jmp 0x4102e0
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 0x410312
mov rax, qword [rsp + 0x90]
mov r8d, 0x20
mov rcx, qword [rcx + rax]
call fcn.0040c490
lea rax, [rsi + 1]
cmp qword [rsp + 0xa8], rsi
je 0x41037e
mov rsi, rax
mov rdx, rsi
mov rcx, rbx
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov rdx, rax
lea rax, [rsi*8]
mov qword [rsp + 0x90], rax
test rdx, rdx
jne 0x41028f
mov rcx, qword [rbp + 0x1e8]
mov ebx, dword [rbp + 0x1e4]
jmp 0x410334
mov rax, qword [rsp + 0x90]
dec ebx
mov rcx, qword [rcx + rax]
call sub.msvcrt.dll_free
mov rcx, qword [rbp + 0x1e8]
test ebx, ebx
jg 0x41031a
call sub.msvcrt.dll_free
mov qword [rbp + 0x1e0], 0
mov rcx, r13
call fcn.006b6750
lea rdx, str.Stratum_notify:_invalid_Merkle_branch
mov ecx, 1
call fcn.0040a7e0
jmp 0x40ec89
mov dword [rsp + 0xd0], 0x32455353
mov byte [rsp + 0xd4], 0
jmp 0x40f733
mov ebx, dword [rsp + 0xb0]
mov esi, edi
mov eax, dword [rsp + 0xa0]
mov rdi, qword [rsp + 0x50]
mov dword [rbp + 0x1e0], eax
or rdx, 0xffffffffffffffff
xor eax, eax
mov rcx, rdx
repne scasb al, byte [rdi]
mov rdi, qword [rsp + 0x58]
not rcx
mov r8, rcx
mov rcx, rdx
repne scasb al, byte [rdi]
mov rdx, qword [rbp + 0x160]
dec r8
shr r8, 1
add rdx, qword [rbp + 0x150]
add rdx, r8
mov rax, rcx
not rax
lea rdi, [rax - 1]
shr rdi, 1
add rdx, rdi
mov qword [rbp + 0x1c8], rdx
mov rcx, qword [rbp + 0x1d0]
mov r15, r8
call sub.msvcrt.dll_realloc
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
mov r8, r15
call fcn.0040c490
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 0x410453
mov rdx, qword [rsp + 0x38]
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x410468
mov rcx, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x160]
xor edx, edx
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x160]
mov rdx, qword [rsp + 0x58]
mov r8, rdi
add rcx, qword [rbp + 0x1d8]
call fcn.0040c490
mov rcx, qword [rbp + 0x1c0]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x38]
call sub.msvcrt.dll__strdup
mov qword [rbp + 0x1c0], rax
mov rdx, qword [rsp + 0x40]
lea rcx, [rbp + 0x180]
mov r8d, 0x20
call fcn.0040c490
cmp dword [rsp + 0x98], 0
jne 0x4106ef
test ebx, ebx
jne 0x4106d5
mov rax, qword [0x00748fe0]
cmp byte [rax], 0
jne 0x4106b9
cmp esi, 0x4c
je 0x4105f9
mov rdx, qword [rbp + 0x1d0]
mov rcx, qword [rbp + 0x1c8]
lea rax, [rdx + 0x20]
lea rdx, [rdx + rcx - 2]
jmp 0x410507
cmp rdx, rax
jbe 0x410516
inc rax
cmp byte [rax], 0xff
jne 0x4104ff
jmp 0x410516
cmp rdx, rax
jbe 0x41051b
inc rax
cmp byte [rax], 0xff
je 0x41050e
xor edx, edx
cmp byte [rax - 1], 0xff
je 0x410674
mov dword [rbp + 0x488], edx
mov rdx, qword [rsp + 0x48]
lea rcx, [rbp + 0x1f4]
mov r8d, 4
call fcn.0040c490
mov rdx, qword [rsp + 0x88]
lea rcx, [rbp + 0x1f8]
mov r8d, 4
call fcn.0040c490
movzx eax, byte [rsp + 0x9f]
vmovsd xmm0, qword [rbp + 0x138]
mov byte [rbp + 0x208], al
vmovsd qword [rbp + 0x200], xmm0
mov rcx, r13
call fcn.006b6750
mov r15d, 1
jmp 0x40ec89
mov edx, 9
mov rcx, r13
mov qword [rsp + 0x90], r10
call fcn.006af230
mov rcx, rax
call fcn.006af450
mov qword [rsp + 0x30], rax
mov rdi, rax
test rax, rax
je 0x4105d3
or rcx, 0xffffffffffffffff
xor eax, eax
repne scasb al, byte [rdi]
mov r10, qword [rsp + 0x90]
cmp rcx, 0xffffffffffffffbe
je 0x410073
lea rdx, str.Stratum_notify:_invalid_sapling_parameters
mov ecx, 1
call fcn.0040a7e0
jmp 0x40ec89
mov dword [rsp + 0xd0], 0x455353
jmp 0x40f733
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp + 0x249]
mov r8d, 0x20
call fcn.0040c490
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp + 0x269]
mov r8d, 0x20
call fcn.0040c490
mov rdx, qword [rsp + 0x78]
lea rcx, [rbp + 0x289]
mov r8d, 0x20
call fcn.0040c490
mov rdx, qword [rsp + 0x80]
lea rcx, [rbp + 0x2a9]
mov r8d, 0x20
call fcn.0040c490
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp + 0x2c9]
mov r8d, 0x20
call fcn.0040c490
jmp 0x4104e6
cmp byte [rax - 2], 0xff
jne 0x410527
movzx edx, byte [rax + 3]
movzx r8d, byte [rax + 2]
shl edx, 8
movzx ecx, byte [rax + 1]
add edx, r8d
movzx edx, dx
cmp cl, 3
je 0x410709
cmp cl, 4
jne 0x410527
movzx ecx, byte [rax + 5]
movzx eax, byte [rax + 4]
shl ecx, 8
add eax, ecx
shl eax, 0x10
add edx, eax
jmp 0x410527
mov rdx, qword [rsp + 0x30]
lea rcx, [rbp + 0x1a0]
mov r8d, 0x20
call fcn.0040c490
jmp 0x4104dd
lea rcx, [rbp + 0x209]
mov r8d, 0x40
mov rdx, r14
call fcn.0040c490
jmp 0x4104cd
lea rcx, [rbp + 0x209]
mov r8d, 0x20
mov rdx, r14
call fcn.0040c490
jmp 0x4104c5
movzx eax, byte [rax + 4]
shl eax, 0x10
add edx, eax
jmp 0x410527