Function at 0x40eaa0
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x3a8
vmovups xmmword [rsp + 0x380], xmm6
vmovups xmmword [rsp + 0x390], xmm7
mov rbp, rcx
lea r8, [rsp + 0x280]
mov rcx, rdx
xor edx, edx
call fcn.00672680
mov r12, rax
test rax, rax
je 0x40f020
lea rdx, str.method
mov rcx, rax
call fcn.00673780
mov rcx, rax
call fcn.00673c10
mov rsi, rax
test rax, rax
je 0x40ec10
lea rdx, str.params
mov rcx, r12
call fcn.00673780
lea rdx, [0x006bb3ba]
mov rcx, r12
mov r13, rax
call fcn.00673780
mov rdi, qword [sym.imp.msvcrt.dll__stricmp]
lea rdx, str.mining.notify
mov r14, rax
mov rcx, rsi
call rdi
mov ebx, eax
test eax, eax
je 0x40ec40
lea rdx, str.mining.ping
mov rcx, rsi
call rdi
test eax, eax
jne 0x40ed70
mov rax, qword [0x00725710]
cmp byte [rax], 0
jne 0x40f0f0
xor r15d, r15d
test r14, r14
je 0x40ec13
cmp dword [r14], 7
je 0x40ec13
mov rcx, r14
lea r15, [rsp + 0x1c0]
call fcn.00673d20
lea rdx, str._id_:_d__result_:_pong___error_:null
mov rcx, r15
mov r8d, eax
call fcn.0040ab90
mov rax, qword [0x00725790]
cmp byte [rax], 0
jne 0x40f4a0
lea r13, [rbp + 0x130]
mov rcx, r13
call fcn.00679e60
mov rdx, r15
mov rcx, rbp
call fcn.0040aef0
mov rcx, r13
mov r15d, eax
call fcn.0067ad90
mov rax, qword [r12 + 8]
cmp rax, 0xffffffffffffffff
jne 0x40ec1e
vmovups xmm6, xmmword [rsp + 0x380]
vmovups xmm7, xmmword [rsp + 0x390]
mov eax, r15d
add rsp, 0x3a8
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 0x40ebe6
dec rax
mov qword [r12 + 8], rax
jne 0x40ebe6
mov rcx, r12
call fcn.00673f20
jmp 0x40ebe6
mov rcx, r13
call fcn.006739d0
mov rdx, rax
mov rax, qword [0x007256a0]
mov esi, dword [rax]
cmp esi, 0x1a
sete al
cmp edx, 0xa
sete cl
and eax, ecx
mov r15d, eax
test al, 1
jne 0x40f050
cmp esi, 0x28
je 0x40ef30
xor edx, edx
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x30], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov qword [rsp + 0x38], rax
cmp esi, 0x4b
jne 0x40ef6a
mov edx, 2
mov rcx, r13
mov edi, 9
mov r15d, 8
call fcn.006739f0
xor r14d, r14d
mov rcx, rax
call fcn.00673c10
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x78], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 4
mov rcx, r13
mov qword [rsp + 0x80], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 5
mov rcx, r13
mov qword [rsp + 0x60], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 6
mov rcx, r13
mov qword [rsp + 0x68], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov dword [rsp + 0x8c], 0
mov dword [rsp + 0x48], 0xa
mov edx, 7
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x40], 7
jmp 0x40efc8
lea rdx, str.mining.set_difficulty
mov rcx, rsi
call rdi
test eax, eax
je 0x40f110
lea rdx, str.mining.set_extranonce
mov rcx, rsi
call rdi
test eax, eax
je 0x40f330
lea rdx, str.client.reconnect
mov rcx, rsi
call rdi
test eax, eax
je 0x40f4c0
lea rdx, str.client.get_algo
mov rcx, rsi
call rdi
test eax, eax
jne 0x40f190
mov rax, qword [0x007257c0]
cmp byte [rax], 0
je 0x40f5fc
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c8], 0
xor r15d, r15d
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1d8], 0
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1e8], 0
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x1f8], 0
test r14, r14
je 0x40ec13
cmp dword [r14], 7
je 0x40ec13
lea r15, [rsp + 0x1c0]
mov edx, 0x40
mov rcx, r15
call fcn.00404370
call fcn.006736f0
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40ee74
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006bb3ba]
mov rcx, r13
call fcn.006743b0
call fcn.00673f10
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.006743b0
mov rcx, r15
call fcn.00673ba0
lea rdx, str.result
mov r8, rax
mov rcx, r13
call fcn.006743b0
xor edx, edx
mov rcx, r13
call fcn.00670210
mov r14, rax
mov rax, qword [0x00725790]
cmp byte [rax], 0
jne 0x40f5e3
lea rbx, [rbp + 0x130]
mov rcx, rbx
call fcn.00679e60
mov rcx, rbp
mov rdx, r14
call fcn.0040aef0
mov rcx, rbx
mov r15d, eax
call fcn.0067ad90
test r13, r13
je 0x40ef15
mov rax, qword [r13 + 8]
cmp rax, 0xffffffffffffffff
je 0x40ef15
dec rax
mov qword [r13 + 8], rax
je 0x40f888
mov rcx, r14
call sub.msvcrt.dll_free
jmp 0x40ec13
cmp edx, 0xa
je 0x40f290
xor edx, edx
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x30], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x8c], 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 + 0x70], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x78], 0
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov rdx, r15
mov rcx, r13
xor r15d, r15d
mov qword [rsp + 0x50], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov rdx, rdi
mov rcx, r13
mov qword [rsp + 0x58], rax
call fcn.006739f0
mov rdi, rax
test rax, rax
je 0x40f014
cmp dword [rax], 1
je 0x40f350
mov byte [rbp + 0x48c], 1
jmp 0x40ec13
mov r8d, dword [rsp + 0x280]
lea r9, [rsp + 0x2dc]
lea rdx, str.JSON_decode_failed__d_:__s
xor ecx, ecx
xor r15d, r15d
call fcn.0040b000
jmp 0x40ebe6
xor edx, edx
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x30], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 2
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov r14, rax
test rax, rax
je 0x40f170
mov rcx, r14
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x40f170
mov edi, 5
mov dword [rsp + 0x48], 6
mov r15d, 4
mov edx, 3
mov dword [rsp + 0x8c], 1
mov dword [rsp + 0x40], 3
jmp 0x40ef98
lea rdx, str.Pool_ping
mov ecx, 4
call fcn.0040b2f0
jmp 0x40eb6e
xor edx, edx
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673eb0
vucomisd xmm0, qword [0x006bc060]
vmovsd xmm6, xmm0, xmm0
jp 0x40f140
je 0x40ec10
nop word cs:[rax + rax]
lea r13, [rbp + 0x480]
mov r15d, 1
mov rcx, r13
call fcn.00679e60
mov rcx, r13
vmovsd qword [rbp + 0x138], xmm6
call fcn.0067ad90
jmp 0x40ec13
lea rdx, str.Stratum_notify:_invalid_claim_parameter
xor ecx, ecx
xor r15d, r15d
call fcn.0040b000
jmp 0x40f014
lea rdx, str.client.get_stats
mov rcx, rsi
call rdi
test eax, eax
je 0x40f612
lea rdx, str.client.get_version
mov rcx, rsi
call rdi
test eax, eax
je 0x40f7e0
lea rdx, str.client.show_message
mov rcx, rsi
call rdi
test eax, eax
je 0x40f8ae
mov rax, qword [0x00725710]
cmp byte [rax], 0
jne 0x40f895
test r14, r14
je 0x40ec10
cmp dword [r14], 7
je 0x40ec10
call fcn.006736f0
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f208
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006bb3ba]
mov rcx, r13
call fcn.006743b0
call fcn.00673f00
lea rdx, str.result
mov rcx, r13
mov r8, rax
call fcn.006743b0
call fcn.006736f0
mov ecx, 0x26
mov rbx, rax
call fcn.00673cf0
lea rdx, str.code
mov rcx, rbx
mov r8, rax
call fcn.006743b0
lea rcx, str.unknown_method
call fcn.00673ba0
lea rdx, str.message
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov r8, rbx
lea rdx, str.error
jmp 0x40eeaf
xor edx, edx
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 1
mov rcx, r13
mov qword [rsp + 0x30], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov edx, 2
mov rcx, r13
mov qword [rsp + 0x38], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov r14, rax
test rax, rax
je 0x40f5d0
mov rcx, r14
call sub.msvcrt.dll_strlen
cmp rax, 0x80
jne 0x40f5d0
mov dword [rsp + 0x8c], 0
mov edi, 5
mov dword [rsp + 0x48], 6
mov r15d, 4
mov edx, 3
mov ebx, 1
jmp 0x40f0d7
xor r8d, r8d
mov rdx, r13
mov rcx, rbp
call fcn.0040b4c0
mov r15d, eax
jmp 0x40ec13
mov rcx, rax
call fcn.006739d0
movsxd rdx, dword [rsp + 0x48]
mov rcx, r13
mov qword [rsp + 0x98], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov r15d, dword [rsp + 0x40]
mov rcx, r13
mov qword [rsp + 0x48], rax
lea edx, [r15 + 4]
movsxd rdx, edx
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
lea edx, [r15 + 5]
mov rcx, r13
movsxd rdx, edx
mov qword [rsp + 0x40], rax
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov rcx, r13
mov qword [rsp + 0x90], rax
lea eax, [r15 + 6]
movsxd r15, eax
mov rdx, r15
call fcn.006739f0
mov byte [rsp + 0xbb], 0
test rax, rax
je 0x40f3ef
mov rdx, r15
mov rcx, r13
call fcn.006739f0
cmp dword [rax], 5
sete byte [rsp + 0xbb]
cmp qword [rsp + 0x30], 0
je 0x40f480
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x40f480
cmp qword [rsp + 0x50], 0
je 0x40f480
cmp qword [rsp + 0x58], 0
je 0x40f480
cmp qword [rsp + 0x48], 0
sete al
cmp qword [rsp + 0x40], 0
sete dl
or eax, edx
cmp qword [rsp + 0x90], 0
sete dl
or eax, edx
mov r15d, eax
test al, 1
jne 0x40f480
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x40f480
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_strlen
cmp rax, 8
jne 0x40f480
mov rcx, qword [rsp + 0x40]
call sub.msvcrt.dll_strlen
cmp rax, 8
jne 0x40f480
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_strlen
cmp rax, 8
je 0x41021f
lea rdx, str.Stratum_notify:_invalid_parameters
xor ecx, ecx
xor r15d, r15d
call fcn.0040b000
jmp 0x40f014
mov r8, r15
lea rdx, [0x006bb1a0]
mov ecx, 4
call fcn.0040b2f0
jmp 0x40ebb6
xor edx, edx
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov rcx, r13
mov edx, 1
mov rbx, rax
call fcn.006739f0
mov rcx, rax
test rax, rax
je 0x40f4f3
cmp dword [rax], 2
je 0x40f874
call fcn.00673d20
mov esi, eax
test rbx, rbx
je 0x40ec10
test esi, esi
je 0x40ec10
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, [0x006bb243]
mov rcx, r13
call sub.msvcrt.dll_strstr
mov r8, rbx
mov r9d, esi
lea rdx, str._s:_d
lea rcx, [rax + 3]
call fcn.0040ab90
mov rax, qword [0x007257e0]
mov r8, r13
movzx r15d, byte [rax]
test r15b, r15b
je 0x40f850
lea rdx, str.Server_requested_reconnection_to__s
mov ecx, 2
call fcn.0040b2f0
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov qword [rbp], r13
lea r13, [rbp + 0x130]
mov rcx, r13
call fcn.00679e60
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x40f5bb
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.0067ad90
jmp 0x40ec13
lea rdx, str.Stratum_notify:_invalid_UTXO_root_parameter
xor ecx, ecx
call fcn.0040b000
jmp 0x40f014
mov r8, r14
lea rdx, [0x006bb1a0]
mov ecx, 4
call fcn.0040b2f0
jmp 0x40eed4
lea rdx, str.Pool_asked_your_algo_parameter
mov ecx, 2
call fcn.0040b2f0
jmp 0x40edd0
test r14, r14
je 0x40ec10
cmp dword [r14], 7
je 0x40ec10
call fcn.006736f0
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f63e
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006bb3ba]
mov rcx, r13
call fcn.006743b0
mov rax, qword [0x00725800]
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 + 0x1b0], 0
mov qword [rsp + 0x1b8], 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 + 0x120], 0
mov qword [rsp + 0x128], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
cmp byte [rax], 0
jne 0x40f948
call fcn.006736f0
mov ecx, 1
mov rbx, rax
call fcn.00673cf0
lea rdx, str.code
mov rcx, rbx
mov r8, rax
call fcn.006743b0
lea rcx, str.disabled
jmp 0x40f25c
test r14, r14
je 0x40ec10
cmp dword [r14], 7
je 0x40ec10
call fcn.006736f0
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f80c
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006bb3ba]
mov rcx, r13
call fcn.006743b0
call fcn.00673f10
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.006743b0
lea rcx, str.cpuminer_opt_gr_1.1.0
call fcn.00673ba0
lea rdx, str.result
mov r8, rax
jmp 0x40eeaf
lea rdx, str.Ignoring_request_to_reconnect_to__s
mov ecx, 3
mov r15d, 1
call fcn.0040b2f0
mov rcx, r13
call sub.msvcrt.dll_free
jmp 0x40ec13
call fcn.00673c10
mov rcx, rax
call sub.msvcrt.dll_atoi
mov esi, eax
jmp 0x40f4fa
mov rcx, r13
call fcn.00673f20
jmp 0x40ef15
mov r8, rsi
lea rdx, str.unknown_stratum_method__s_
mov ecx, 1
call fcn.0040b2f0
jmp 0x40f1dc
mov rcx, r13
xor edx, edx
call fcn.006739f0
mov rcx, rax
test rax, rax
je 0x40f8d9
call fcn.00673c10
lea rdx, str.MESSAGE_FROM_SERVER:__s
mov ecx, 2
mov r8, rax
call fcn.0040b2f0
mov r15d, 1
test r14, r14
je 0x40ec13
cmp dword [r14], 7
je 0x40ec13
call fcn.006736f0
mov r13, rax
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x40f90b
inc rax
mov qword [r14 + 8], rax
mov r8, r14
lea rdx, [0x006bb3ba]
mov rcx, r13
call fcn.006743b0
call fcn.00673f10
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.006743b0
call fcn.00673ef0
lea rdx, str.result
mov r8, rax
jmp 0x40eeaf
lea rax, [rsp + 0x130]
mov edx, 0x40
mov rcx, rax
mov qword [rsp + 0x38], rax
call fcn.00404370
lea rax, [rsp + 0x110]
xor r9d, r9d
mov r8d, 0xa
mov rbx, rax
lea rdx, str.GCC__d._d._d_n
mov dword [rsp + 0x20], 0
mov rcx, rax
mov dword [rsp + 0xd8], 0x366e6977
mov word [rsp + 0xdc], 0x34
mov qword [rsp + 0x30], rax
call fcn.0040ab90
mov rcx, rbx
call sub.msvcrt.dll_strlen
mov r9d, 1
xor r8d, r8d
add rax, rbx
mov ecx, r8d
mov dword [rax], 0x58564120
mov word [rax + 4], 0x32
mov eax, r9d
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 0x4101a2
mov r9d, 1
xor r8d, r8d
mov eax, r9d
mov ecx, r8d
cpuid
and ecx, 0x1c000000
cmp ecx, 0x1c000000
je 0x41057d
mov eax, r9d
mov ecx, r8d
cpuid
and ecx, 0x1c001000
cmp ecx, 0x1c001000
je 0x4105d1
mov eax, 0x80000001
mov ecx, r8d
cpuid
and ecx, 0x800
jne 0x410599
mov eax, r9d
cpuid
and ecx, 0x100000
jne 0x4105b5
mov eax, r9d
cpuid
and edx, 0x4000000
mov ecx, edx
jne 0x4105ed
mov eax, r9d
cpuid
and edx, 0x2000000
jne 0x4108ec
mov byte [rsp + 0xe0], 0
lea r14, [rsp + 0xe0]
mov eax, 1
xor ecx, ecx
cpuid
and ecx, 0x2000000
jne 0x4101f7
lea rcx, str.NUMBER_OF_PROCESSORS
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
lea rdi, [rsp + 0xf0]
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
call sub.msvcrt.dll_getenv
lea rcx, str.PROCESSOR_REVISION
mov rbx, rax
call sub.msvcrt.dll_getenv
lea rcx, str.PROCESSOR_LEVEL
mov rsi, rax
call sub.msvcrt.dll_getenv
mov rcx, rdi
mov qword [rsp + 0x28], rbx
mov r9, rax
mov qword [rsp + 0x20], rsi
lea r8, str._s:_s:_s
mov edx, 0x20
lea rsi, [rsp + 0x170]
call fcn.0040abc0
lea rcx, [rsp + 0x1d0]
mov r8d, 0xb0
xor edx, edx
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 + 0x1b0], 0
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c8], 0
call sub.msvcrt.dll_memset
xor r8d, r8d
mov eax, 0x80000000
mov ecx, r8d
cpuid
cmp eax, 0x80000003
jbe 0x4101cf
mov r9d, eax
and r9d, 0xf
test al, 0xe
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x1c0], xmm0
cmp r9d, 2
jle 0x40fed2
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
vmovdqu xmmword [rsp + 0x1d0], xmm0
cmp r9d, 3
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x1e0], xmm0
cmp r9d, 4
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x1f0], xmm0
cmp r9d, 5
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x200], xmm0
cmp r9d, 6
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x210], xmm0
cmp r9d, 7
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x220], xmm0
cmp r9d, 8
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x230], xmm0
cmp r9d, 9
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x240], xmm0
cmp r9d, 0xa
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x250], xmm0
cmp r9d, 0xb
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x260], xmm0
cmp r9d, 0xc
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x270], xmm0
cmp r9d, 0xd
je 0x40fed2
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
vmovdqu xmmword [rsp + 0x280], xmm0
cmp r9d, 0xf
jne 0x40fed2
mov eax, 0x8000000f
mov ecx, r8d
cpuid
vmovd xmm5, ecx
vmovd xmm7, eax
vpinsrd xmm0, xmm5, edx, 1
vpinsrd xmm1, xmm7, ebx, 1
vpunpcklqdq xmm0, xmm1, xmm0
vmovdqu xmmword [rsp + 0x290], xmm0
lea r9, [rsp + 0x1c0]
lea r8, [0x006bb651]
mov edx, 0x50
mov rcx, rsi
call fcn.0040abc0
lea rdx, [0x006bb669]
mov rcx, rsi
call sub.msvcrt.dll_strstr
test rax, rax
je 0x410192
lea r15, [rsp + 0x1c0]
lea r9, [rax + 3]
lea r8, [0x006bb651]
mov edx, 0x20
mov rcx, r15
mov byte [rax], 0
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c8], 0
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1d8], 0
call fcn.0040abc0
mov rcx, r15
call sub.msvcrt.dll_atof
lea rdx, [0x006bb66d]
mov rcx, r15
vmovsd xmm6, xmm0, xmm0
call sub.msvcrt.dll_strstr
vmovsd xmm7, qword [0x006bc068]
test rax, rax
je 0x40ff85
vmulsd xmm6, xmm6, xmm7
mov r8, r15
lea rdx, str.sharing_CPU_stats_with_freq__s
mov ecx, 2
call fcn.0040b2f0
vmovsd xmm0, qword [0x006bc070]
vcomisd xmm6, xmm0
jae 0x41020c
vcvttsd2si r9, xmm6
mov qword [rsp + 0x40], r9
mov byte [rsp + 0x12f], 0
call fcn.006736f0
mov rcx, qword [rsp + 0x38]
mov rbx, rax
call fcn.00673ba0
lea rdx, str.algo
mov rcx, rbx
mov r8, rax
call fcn.006743b0
lea rcx, [0x006bb69c]
call fcn.00673ba0
lea rdx, str.type
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov rcx, rsi
call fcn.00673ba0
lea rdx, str.device
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov rcx, rdi
call fcn.00673ba0
lea rdx, str.vendorid
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov rcx, r14
call fcn.00673ba0
lea rdx, str.arch
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov r9, qword [rsp + 0x40]
mov rcx, r9
call fcn.00673cf0
lea rdx, str.freq
mov rcx, rbx
mov r8, rax
call fcn.006743b0
xor ecx, ecx
call fcn.00673cf0
lea rdx, str.memf
mov rcx, rbx
mov r8, rax
call fcn.006743b0
xor ecx, ecx
call fcn.00673cf0
mov rcx, rbx
lea rdx, str.power
mov r8, rax
call fcn.006743b0
mov rax, qword [0x007254d0]
vmovsd xmm0, qword [rax]
vdivsd xmm0, xmm0, xmm7
call fcn.00673d70
mov rcx, rbx
lea rdx, str.khashes
mov r8, rax
call fcn.006743b0
mov rax, qword [0x00725780]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [rax]
call fcn.00673d70
lea rdx, str.intensity
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov rax, qword [0x00725740]
movsxd rcx, dword [rax]
call fcn.00673cf0
lea rdx, str.throughput
mov rcx, rbx
mov r8, rax
call fcn.006743b0
lea rcx, str.cpuminer_opt_gr_1.1.0
call fcn.00673ba0
lea rdx, str.client
mov rcx, rbx
mov r8, rax
call fcn.006743b0
lea rcx, [rsp + 0xd8]
call fcn.00673ba0
lea rdx, [0x006bb704]
mov rcx, rbx
mov r8, rax
call fcn.006743b0
mov rcx, qword [rsp + 0x30]
call fcn.00673ba0
mov rcx, rbx
lea rdx, str.driver
mov r8, rax
call fcn.006743b0
mov r8, rbx
mov rcx, r13
lea rdx, str.result
call fcn.006743b0
call fcn.00673f10
lea rdx, str.error
mov rcx, r13
mov r8, rax
call fcn.006743b0
jmp 0x40eeb7
vmovsd xmm7, qword [0x006bc068]
xor r9d, r9d
jmp 0x40ffb0
mov eax, r10d
mov ecx, r8d
cpuid
and bl, 0x20
je 0x40f9f7
lea r14, [rsp + 0xe0]
lea rdx, str.AVX2
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
lea rcx, str.PROCESSOR_IDENTIFIER
call sub.msvcrt.dll_getenv
lea r8, [0x006bb651]
mov edx, 0x50
mov rcx, rsi
mov r9, rax
call fcn.0040abc0
jmp 0x40feee
mov rcx, r14
call sub.msvcrt.dll_strlen
mov dword [r14 + rax], 0x494e20
jmp 0x40faa4
vsubsd xmm6, xmm6, xmm0
vcvttsd2si r9, xmm6
btc r9, 0x3f
jmp 0x40ffb0
mov rax, qword [rsp + 0x48]
mov byte [rsp + 0x172], 0
xor r11d, r11d
lea r10, [rsp + 0x1c0]
lea rcx, [rsp + 0x170]
movzx edx, byte [rax]
test dl, dl
je 0x4102ec
mov qword [rsp + 0x48], r12
mov dword [rsp + 0xa0], ebx
mov r12, rcx
mov rbx, rax
mov dword [rsp + 0xa8], esi
mov qword [rsp + 0xb0], rdi
mov rsi, r11
mov rdi, r10
movzx ecx, byte [rbx + rsi*2 + 1]
test cl, cl
je 0x41093c
xor eax, eax
mov r8d, 0x10
mov al, dl
mov rdx, rdi
mov ah, cl
mov rcx, r12
mov word [rsp + 0x170], ax
call sub.msvcrt.dll_strtol
mov byte [rbp + rsi + 0x1f0], al
mov rax, qword [rsp + 0x1c0]
cmp byte [rax], 0
jne 0x410908
movzx edx, byte [rbx + rsi*2 + 2]
cmp rsi, 3
setne al
test dl, dl
setne r8b
inc rsi
and eax, r8d
test al, 1
jne 0x410271
mov r12, qword [rsp + 0x48]
mov ebx, dword [rsp + 0xa0]
mov esi, dword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
mov rax, qword [0x007257f0]
mov qword [rsp + 0xa8], 0
cmp byte [rax], 0
jne 0x41080b
cmp esi, 0x4b
je 0x410852
cmp dword [rsp + 0x98], 0
mov qword [rsp + 0x48], 0
jne 0x410609
lea r13, [rbp + 0x480]
mov rcx, r13
call fcn.00679e60
mov rcx, qword [rsp + 0x50]
call sub.msvcrt.dll_strlen
mov rcx, qword [rsp + 0x58]
shr rax, 1
mov rdi, rax
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp + 0x160]
add rdx, qword [rbp + 0x150]
mov rcx, qword [rbp + 0x1d0]
shr rax, 1
mov r15, rax
add rax, rdi
add rdx, rax
mov qword [rbp + 0x1c8], rdx
call sub.msvcrt.dll_realloc
mov r8, rdi
mov rcx, rax
mov qword [rbp + 0x1d0], rax
mov rax, qword [rbp + 0x150]
mov rdx, qword [rsp + 0x50]
add rax, rdi
add rax, rcx
mov qword [rbp + 0x1d8], rax
call fcn.0040cac0
add rdi, qword [rbp + 0x1d0]
mov rdx, qword [rbp + 0x158]
mov r8, qword [rbp + 0x150]
mov rcx, rdi
call sub.msvcrt.dll_memcpy
mov rcx, qword [rbp + 0x1c0]
test rcx, rcx
je 0x4103e0
mov rdx, qword [rsp + 0x30]
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x4103f5
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, r15
mov rdx, qword [rsp + 0x58]
call fcn.0040cac0
mov rcx, qword [rbp + 0x1c0]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x30]
call sub.msvcrt.dll__strdup
mov rdx, qword [rsp + 0x38]
lea rcx, [rbp + 0x180]
mov r8d, 0x20
mov qword [rbp + 0x1c0], rax
call fcn.0040cac0
cmp dword [rsp + 0x8c], 0
jne 0x410a4d
test ebx, ebx
jne 0x410a33
mov rax, qword [0x007257f0]
cmp byte [rax], 0
jne 0x410a67
cmp esi, 0x4b
je 0x4109b8
mov rcx, qword [rbp + 0x1d0]
lea rax, [rcx + 0x20]
lea rdx, [rcx + 0xa0]
movzx ecx, byte [rcx + 0x20]
cmp cx, 0xff
je 0x4104bd
cmp rax, rdx
jb 0x4104a5
jmp 0x4104bd
cmp rdx, rax
jbe 0x4104bd
movzx ecx, byte [rax + 1]
inc rax
cmp cx, 0xff
jne 0x4104a0
jmp 0x4104bd
cmp rdx, rax
jbe 0x4104c7
inc rax
movzx ecx, byte [rax]
cmp cx, 0xff
je 0x4104b5
movzx ecx, byte [rax - 1]
xor edx, edx
cmp cx, 0xff
je 0x41096a
mov dword [rbp + 0x488], edx
xor ebx, ebx
jmp 0x4104ee
mov rcx, qword [rcx + rbx*8]
inc rbx
call sub.msvcrt.dll_free
mov rcx, qword [rbp + 0x1e8]
cmp dword [rbp + 0x1e0], ebx
jg 0x4104e2
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x1f4]
mov r8d, 4
mov rdx, qword [rsp + 0x40]
mov r15d, 1
mov qword [rbp + 0x1e8], rax
mov eax, dword [rsp + 0x98]
mov dword [rbp + 0x1e0], eax
call fcn.0040cac0
lea rcx, [rbp + 0x1f8]
mov r8d, 4
mov rdx, qword [rsp + 0x90]
call fcn.0040cac0
vmovsd xmm0, qword [rbp + 0x138]
mov rcx, r13
movzx eax, byte [rsp + 0xbb]
mov byte [rbp + 0x208], al
vmovsd qword [rbp + 0x200], xmm0
call fcn.0067ad90
jmp 0x40f014
lea r14, [rsp + 0xe0]
lea rdx, [0x006bb5f4]
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
lea r14, [rsp + 0xe0]
lea rdx, [0x006bb5fd]
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
lea r14, [rsp + 0xe0]
lea rdx, str.SSE42
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
lea r14, [rsp + 0xe0]
lea rdx, str.FMA3
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
lea r14, [rsp + 0xe0]
lea rdx, str.SSE2
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
mov r13, qword [rsp + 0x98]
movsxd rcx, r13d
shl rcx, 3
call sub.msvcrt.dll_malloc
mov qword [rsp + 0x48], rax
test r13d, r13d
jle 0x410328
lea eax, [r13 - 1]
xor ecx, ecx
lea rdx, [rsp + 0x170]
mov qword [rsp + 0xa0], r12
mov qword [rsp + 0xb0], rax
lea rax, [rsp + 0x1c0]
mov qword [rsp + 0xc8], r14
mov r12, rdx
mov qword [rsp + 0x3f0], rbp
mov dword [rsp + 0xc0], ebx
mov rbp, rdi
mov r14, rax
mov dword [rsp + 0xc4], esi
mov rdi, rcx
mov rdx, rdi
mov rcx, rbp
mov dword [rsp + 0xbc], edi
mov esi, edi
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov rbx, rax
test rax, rax
je 0x410772
mov rcx, rax
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x410772
mov ecx, 0x20
xor r13d, r13d
call sub.msvcrt.dll_malloc
mov byte [rsp + 0x172], 0
mov rsi, rax
mov rax, qword [rsp + 0x48]
mov qword [rax + rdi*8], rsi
movzx edx, byte [rbx]
test dl, dl
je 0x410735
nop dword [rax]
movzx ecx, byte [rbx + r13*2 + 1]
test cl, cl
je 0x410762
xor eax, eax
mov r8d, 0x10
mov al, dl
mov rdx, r14
mov ah, cl
mov rcx, r12
mov word [rsp + 0x170], ax
call sub.msvcrt.dll_strtol
mov byte [rsi + r13], al
mov rax, qword [rsp + 0x1c0]
cmp byte [rax], 0
jne 0x41074f
movzx edx, byte [rbx + r13*2 + 2]
cmp r13, 0x1f
setne al
test dl, dl
setne cl
inc r13
and eax, ecx
test al, 1
jne 0x4106e0
lea rax, [rdi + 1]
cmp qword [rsp + 0xb0], rdi
je 0x4107e0
mov rdi, rax
jmp 0x41067b
mov r8, r12
lea rdx, str.hex2bin_failed_on__s
xor ecx, ecx
call fcn.0040b000
jmp 0x410735
lea rdx, str.hex2bin_str_truncated
xor ecx, ecx
call fcn.0040b000
jmp 0x410735
mov r12, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0x3f0]
lea eax, [rsi - 1]
test esi, esi
je 0x4107c3
mov esi, dword [rsp + 0xbc]
mov rdi, qword [rsp + 0x48]
cdqe
shl rax, 3
lea edx, [rsi - 1]
lea rbx, [rdi + rax]
add rax, 8
shl rdx, 3
sub rax, rdx
lea rsi, [rdi + rax - 0x10]
mov rcx, qword [rbx]
sub rbx, 8
call sub.msvcrt.dll_free
cmp rsi, rbx
jne 0x4107b2
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_free
lea rdx, str.Stratum_notify:_invalid_Merkle_branch
xor ecx, ecx
call fcn.0040b000
jmp 0x40f014
mov r12, qword [rsp + 0xa0]
mov ebx, dword [rsp + 0xc0]
mov esi, dword [rsp + 0xc4]
mov r14, qword [rsp + 0xc8]
mov rbp, qword [rsp + 0x3f0]
jmp 0x410328
mov edx, 9
mov rcx, r13
call fcn.006739f0
mov rcx, rax
call fcn.00673c10
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x41083f
mov rcx, rax
call sub.msvcrt.dll_strlen
cmp rax, 0x40
je 0x410308
lea rdx, str.Stratum_notify:_invalid_sapling_parameters
xor ecx, ecx
call fcn.0040b000
jmp 0x40f014
mov r10, qword [rsp + 0x78]
test r10, r10
je 0x4108d9
mov r13, qword [rsp + 0x80]
test r13, r13
je 0x4108d9
cmp qword [rsp + 0x60], 0
sete al
cmp qword [rsp + 0x68], 0
sete dl
or eax, edx
test al, 1
jne 0x4108d9
cmp qword [rsp + 0x70], 0
je 0x4108d9
mov rcx, r10
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x4108d9
mov rcx, r13
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x4108d9
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x4108d9
mov rcx, qword [rsp + 0x68]
call sub.msvcrt.dll_strlen
cmp rax, 0x40
jne 0x4108d9
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_strlen
cmp rax, 0x40
je 0x410311
lea rdx, str.Stratum_notify:_invalid_veil_parameters
xor ecx, ecx
call fcn.0040b000
jmp 0x40f014
lea r14, [rsp + 0xe0]
lea rdx, [0x006bb60c]
mov rcx, r14
call fcn.0040ab90
jmp 0x40fa8f
mov rcx, r12
lea rdx, str.hex2bin_failed_on__s
mov ebx, dword [rsp + 0xa0]
mov esi, dword [rsp + 0xa8]
mov r8, rcx
xor ecx, ecx
mov rdi, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x48]
call fcn.0040b000
jmp 0x4102ec
lea rdx, str.hex2bin_str_truncated
xor ecx, ecx
mov r12, qword [rsp + 0x48]
mov ebx, dword [rsp + 0xa0]
mov esi, dword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
call fcn.0040b000
jmp 0x4102ec
movzx ecx, byte [rax - 2]
cmp cx, 0xff
jne 0x4104d8
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 0x410a86
cmp cx, 4
jne 0x4104d8
movzx ecx, byte [rax + 5]
movzx eax, byte [rax + 4]
shl ecx, 8
add eax, ecx
shl eax, 0x10
add edx, eax
jmp 0x4104d8
mov rdx, qword [rsp + 0x78]
lea rcx, [rbp + 0x249]
mov r8d, 0x20
call fcn.0040cac0
mov rdx, qword [rsp + 0x80]
lea rcx, [rbp + 0x269]
mov r8d, 0x20
call fcn.0040cac0
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp + 0x289]
mov r8d, 0x20
call fcn.0040cac0
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp + 0x2a9]
mov r8d, 0x20
call fcn.0040cac0
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp + 0x2c9]
mov r8d, 0x20
call fcn.0040cac0
jmp 0x410473
lea rcx, [rbp + 0x209]
mov r8d, 0x40
mov rdx, r14
call fcn.0040cac0
jmp 0x41045a
lea rcx, [rbp + 0x209]
mov r8d, 0x20
mov rdx, r14
call fcn.0040cac0
jmp 0x410452
mov rdx, qword [rsp + 0xa8]
lea rcx, [rbp + 0x1a0]
mov r8d, 0x20
call fcn.0040cac0
jmp 0x41046a
movzx eax, byte [rax + 4]
shl eax, 0x10
add edx, eax
jmp 0x4104d8