joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14018c320
Capabilities:
Check for software breakpoints

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x460
mov rax, qword [0x1402581e0]
xor rax, rsp
mov qword [rsp + 0x450], rax
mov rsi, rcx
mov rbx, r8
mov rdi, rdx
lea rcx, [rsp + 0x151]
xor edx, edx
mov r8d, 0xff
mov byte [rsp + 0x150], 0
call sub.MSVCR120.dll_memset
lea rcx, [rsp + 0x51]
xorps xmm0, xmm0
xor edx, edx
mov r8d, 0xff
movdqu xmmword [rsp + 0x38], xmm0
mov byte [rsp + 0x50], 0
call sub.MSVCR120.dll_memset
cmp dword [0x1402c7ad4], 0
je 0x14018c39c
mov edx, 0x50
mov rcx, rbx
call fcn.140045b70
lea rax, [rdi + 0x308]
lea rcx, [rdi + 0x288]
lea r9, [rdi + 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r8, [0x1401c1ae0]
lea rcx, [rsp + 0x250]
mov edx, 0x200
call sub.MSVCR120.dll__snprintf
cmp dword [0x1402c7ad4], 0
je 0x14018c3eb
mov edx, 0x29
mov rcx, rsi
lea r8d, [rdx - 0x28]
call fcn.1400abfb0
lea r8, [rsp + 0x250]
mov edx, 0x2712
mov rcx, rsi
call fcn.1400abfb0
lea r8, [0x1401c1b05]
mov edx, 0x2776
mov rcx, rsi
call fcn.1400abfb0
xor r8d, r8d
mov rcx, rsi
lea edx, [r8 + 0x2d]
call fcn.1400abfb0
mov edx, 0x63
mov rcx, rsi
lea r8d, [rdx - 0x62]
call fcn.1400abfb0
mov edx, 0x79
mov rcx, rsi
lea r8d, [rdx - 0x78]
call fcn.1400abfb0
lea r8, [rsp + 0x150]
mov edx, 0x271a
mov rcx, rsi
call fcn.1400abfb0
mov edx, 0x34
mov rcx, rsi
lea r8d, [rdx - 0x33]
call fcn.1400abfb0
mov edx, reloc.WS2_32.dll_listen
mov rcx, rsi
lea r8d, [rdx - 3]
call fcn.1400abfb0
lea r8, [rsp + 0x38]
mov edx, 0x2711
mov rcx, rsi
call fcn.1400abfb0
lea r8, [0x14018bee0]
mov edx, 0x4e2b
mov rcx, rsi
call fcn.1400abfb0
mov edx, 0x2f
mov rcx, rsi
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
lea r8d, [rdx - 0x2e]
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x60], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmm1, xmmword [rbx + 0x30]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm1
movups xmm0, xmmword [rbx + 0x40]
movaps xmmword [rsp + 0x90], xmm0
call fcn.1400abfb0
mov edx, 0x3c
lea r8d, [rdx + 0x14]
mov rcx, rsi
call fcn.1400abfb0
lea r8, [rsp + 0x50]
mov edx, 0x271f
mov rcx, rsi
call fcn.1400abfb0
lea rdx, [0x1401c1b08]
xor ecx, ecx
call fcn.1400abc90
lea rdx, [0x1401c1b10]
mov rcx, rax
call fcn.1400abc90
lea rdx, [0x1401c1b18]
mov rcx, rax
call fcn.1400abc90
mov edx, 0x2727
mov rcx, rsi
mov r8, rax
mov rbp, rax
call fcn.1400abfb0
mov rcx, rsi
call fcn.1400ac280
xor r14d, r14d
test eax, eax
mov edi, r14d
lea r8, [rsp + 0x30]
mov edx, 0x200002
mov rcx, rsi
sete dil
call fcn.1400ac290
mov r8d, dword [rsp + 0x30]
cmp r8d, 0xcc
je 0x14018c5ae
lea rcx, [rsp + 0x150]
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r14b
jne 0x14018c587
test rax, rax
je 0x14018c5ab
lea r9, [rsp + 0x150]
lea rdx, str.submit_err__ld__s
xor ecx, ecx
call fcn.140040950
mov edi, r14d
mov r9, qword [rsp + 0x38]
movzx edx, byte [rbx + 0x1cc]
movsd xmm2, qword [rbx + 0x1b8]
test edi, edi
mov ecx, edi
cmovne r9, r14
call fcn.14002fbe0
mov rcx, rbp
call fcn.1400abcf0
mov eax, 1
mov rcx, qword [rsp + 0x450]
xor rcx, rsp
call fcn.1401bddc0
add rsp, 0x460
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x14018ed80
Capabilities:
Hash data using sha256

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rdi
sub rsp, 0x50
xor edi, edi
lea r9, [0x1401c2248]
lea r8, str._Z18skeincoin_gpu_hashjjPjj
mov qword [rax - 0x10], rdi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], rdi
mov qword [rax - 0x30], rdi
lea rdx, [0x14018d570]
mov dword [rax - 0x38], 0xffffffff
mov rbx, rcx
mov qword [0x1402b1b88], rcx
mov qword [0x1402b1698], rcx
call fcn.140003580
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c2288]
lea r8, str.c_message16
lea rdx, [0x1402b17a0]
mov rcx, rbx
mov dword [rsp + 0x28], reloc.WS2_32.dll_recv
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c22a8]
lea r8, [0x1401c22c0]
lea rdx, [0x1402b17b0]
mov rcx, rbx
mov dword [rsp + 0x28], 0x1c0
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c216c]
lea r8, [0x1401c2184]
lea rdx, reloc.WS2_32.dll_htonl
mov rcx, rbx
mov dword [rsp + 0x28], 0x28
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c22b4]
lea r8, [0x1401c22cc]
lea rdx, reloc.WS2_32.dll_accept
mov rcx, rbx
mov dword [rsp + 0x28], __WSAFDIsSet
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c22d8]
lea r8, str.sha256_hashTable
lea rdx, [0x1401c2100]
mov rcx, rbx
mov dword [rsp + 0x28], 0x20
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c2308]
lea r8, str.sha256_endingTable
lea rdx, [0x1402b1970]
mov rcx, rbx
mov dword [rsp + 0x28], 0x100
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c2338]
lea r8, str.sha256_constantTable
lea rdx, [0x1402b1a70]
mov rcx, rbx
mov dword [rsp + 0x28], 0x100
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
Function at 0x1401949f0
Capabilities:
Hash data using sha512

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rdi
sub rsp, 0x50
xor edi, edi
lea r9, [0x1401c37e8]
lea r8, str._Z26quark_blake512_gpu_hash_80jjP6uint28
mov qword [rax - 0x10], rdi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], rdi
mov qword [rax - 0x30], rdi
lea rdx, [fcn.140193a30]
mov dword [rax - 0x38], 0xffffffff
mov rbx, rcx
mov qword [0x1402bb190], rcx
mov qword [0x1402babe8], rcx
call fcn.140003580
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea r9, [0x1401c3848]
lea r8, str._Z26quark_blake512_gpu_hash_64jPKjP5uint2
lea rdx, [fcn.1401939c0]
mov rcx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xffffffff
call fcn.140003580
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c3844]
lea r8, [0x1401c3874]
lea rdx, [0x1402babf0]
mov rcx, rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c38a4]
lea r8, [0x1401c38a8]
lea rdx, [0x1402bac70]
mov rcx, rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c38ac]
lea r8, [0x1401c38b0]
lea rdx, [0x1402bacf0]
mov rcx, rbx
mov dword [rsp + 0x28], 0x400
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, str.zzhh
lea r8, [0x1401c38b8]
lea rdx, [0x1402bb0f0]
mov rcx, rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c38bc]
lea r8, [0x1401c38c0]
lea rdx, [0x1401c38c8]
mov rcx, rbx
mov dword [rsp + 0x28], 0x40
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
Function at 0x1401ade80
Capabilities:
Hash data using sha512

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rdi
sub rsp, 0x50
xor edi, edi
lea r9, [0x1401c6600]
lea r8, str._Z19lyra2_gpu_hash_32_3jP5uint2
mov qword [rax - 0x10], rdi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], rdi
mov qword [rax - 0x30], rdi
lea rdx, [0x1401ad9b0]
mov dword [rax - 0x38], 0xffffffff
mov rbx, rcx
mov qword [0x1402c0000], rcx
mov qword [0x1402bffc0], rcx
call fcn.140003580
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea r9, [0x1401c6640]
lea r8, str._Z19lyra2_gpu_hash_32_2j
lea rdx, [0x1401ad970]
mov rcx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xffffffff
call fcn.140003580
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea r9, [0x1401c6680]
lea r8, str._Z19lyra2_gpu_hash_32_1jPK5uint2
lea rdx, [0x1401ad910]
mov rcx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xffffffff
call fcn.140003580
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea r9, [0x1401c66d0]
lea r8, str._Z17lyra2_gpu_hash_32jP5uint2
lea rdx, [0x1401ad870]
mov rcx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xffffffff
call fcn.140003580
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c6710]
lea r8, [0x1401c6720]
lea rdx, [0x1401c6740]
mov rcx, rbx
mov dword [rsp + 0x28], 0x40
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], edi
lea r9, [0x1401c6730]
lea r8, str.DMatrix
lea rdx, [0x1402bffc8]
mov rcx, rbx
mov dword [rsp + 0x28], 8
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
Function at 0x1401aece0
Capabilities:
Hash data using sha512

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rdi
sub rsp, 0x50
xor edi, edi
lea r9, [0x1401c6890]
lea r8, str._Z21lyra2v2_gpu_hash_32_3jPK5uint2PS_
mov qword [rax - 0x10], rdi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], rdi
mov qword [rax - 0x30], rdi
lea rdx, [fcn.1401ae970]
mov dword [rax - 0x38], 0xffffffff
mov rbx, rcx
mov qword [0x1402c01b0], rcx
mov qword [0x1402c0180], rcx
call fcn.140003580
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea r9, [0x1401c68e0]
lea r8, str._Z21lyra2v2_gpu_hash_32_2jP5uint2
lea rdx, [0x1401ae910]
mov rcx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xffffffff
call fcn.140003580
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea r9, [0x1401c6930]
lea r8, str._Z21lyra2v2_gpu_hash_32_1jP5uint2PKS_
lea rdx, [fcn.1401ae8a0]
mov rcx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xffffffff
call fcn.140003580
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c6980]
lea r8, str.blake2b_IV
lea rdx, [0x1401c69c0]
mov rcx, rbx
mov dword [rsp + 0x28], 0x40
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], 1
lea r9, [0x1401c699c]
lea r8, str.Mask
lea rdx, [0x1401c6a00]
mov rcx, rbx
mov dword [rsp + 0x28], 0x40
mov dword [rsp + 0x20], edi
call fcn.1400034d0
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
Function at 0x1401b88c0
Capabilities:
Get thread local storage value

Disassembly:
xor r8d, r8d
jmp 0x1401bad50
mov qword [rsp + 0x20], rbx
push rbp
push r14
push r15
sub rsp, 0x50
xor ebp, ebp
mov r15, r8
mov r14, rdx
mov rbx, rcx
mov dword [rsp + 0x70], ebp
test rcx, rcx
je 0x1401bae94
mov rax, qword [rcx]
test rax, rax
je 0x1401bae94
cmp rax, 0xffffffffffffffff
jne 0x1401bad98
call fcn.1401bac20
mov dword [rsp + 0x70], eax
test eax, 0xffffffef
jne 0x1401badcf
mov qword [rsp + 0x80], rdi
mov rdi, qword [rbx]
lea rcx, [rdi + 0x18]
call fcn.1401bc770
test eax, eax
jne 0x1401badbf
inc dword [rdi]
lea rcx, [rdi + 0x18]
call fcn.1401bc4b0
test eax, eax
je 0x1401bade1
call qword [sym.imp.MSVCR120.dll__errno]
mov eax, dword [rax]
mov rdi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
add rsp, 0x50
pop r15
pop r14
pop rbp
ret
lea rax, [rsp + 0x70]
mov qword [rsp + 0x78], rsi
mov rsi, qword [0x1402c5758]
mov qword [rsp + 0x30], rax
lea rax, [0x1401baff0]
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x40], rax
test rsi, rsi
je 0x1401bae3e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [rsi]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, ebx
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rsi, qword [0x1402c5758]
lea rdx, [rsp + 0x38]
mov rcx, rsi
mov qword [rsp + 0x48], rbp
call fcn.1401b9bf0
mov rcx, r14
call fcn.1401b9960
mov rsi, qword [rsp + 0x78]
mov dword [rsp + 0x70], eax
test eax, eax
jne 0x1401bae81
lea rcx, [rdi + 0x10]
mov rdx, r15
call fcn.1401bc630
test eax, eax
je 0x1401bae81
call qword [sym.imp.MSVCR120.dll__errno]
mov ecx, dword [rax]
mov dword [rsp + 0x70], ecx
mov ecx, 1
call fcn.1401bb4c0
mov eax, dword [rsp + 0x70]
jmp 0x1401badc7
mov eax, reloc.WS2_32.dll_shutdown
mov rbx, qword [rsp + 0x88]
add rsp, 0x50
pop r15
pop r14
pop rbp
ret
Function at 0x1401b88d0
Capabilities:
Create thread
Resume thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x80
xor eax, eax
movaps xmmword [rsp + 0x70], xmm6
mov r14, r9
mov r12, r8
mov r13, rcx
mov ebx, reloc.WS2_32.dll_inet_addr
mov esi, eax
mov dword [rcx + 8], eax
test rdx, rdx
je 0x1401b890d
mov rdi, qword [rdx]
jmp 0x1401b8910
mov rdi, rax
lea rcx, [rsp + 0x50]
mov qword [rsp + 0xb0], r15
call fcn.1401bb3d0
movups xmm6, xmmword [rax]
movq rbp, xmm6
test rbp, rbp
je 0x1401b8a0d
mov r15d, dword [rbp + 0x188]
mov ecx, 0x20
call qword [sym.imp.MSVCR120.dll_malloc]
mov rsi, rax
test rax, rax
je 0x1401b8a0d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r14
movups xmmword [rax], xmm6
test rdi, rdi
je 0x1401b8a05
mov eax, dword [rdi + 0x18]
mov r14d, dword [rdi + 0x10]
mov dword [rbp + 0x184], eax
cmp dword [rdi + 0x20], 0
mov r15d, dword [rdi + 0x1c]
jne 0x1401b8990
lea rcx, [rsp + 0x60]
call fcn.1401b9ab0
mov rax, qword [rax]
mov r15d, dword [rax + 0x188]
xor r12d, r12d
lea rax, [rbp + 0x198]
lea r8, [0x1401bbf10]
mov r9, rsi
mov qword [rsp + 0x28], rax
mov edx, r14d
xor ecx, ecx
mov dword [rbp + 0x28], r12d
mov qword [rbp + 0x58], r12
mov dword [rsp + 0x20], 4
call qword [sym.imp.MSVCR120.dll__beginthreadex]
mov r14, rax
mov qword [rbp + 8], rax
test rax, rax
je 0x1401b89f3
test rdi, rdi
je 0x1401b89ea
lea rcx, [rsp + 0x30]
mov r8d, r15d
xor edx, edx
movdqa xmmword [rsp + 0x30], xmm6
call fcn.1401bb9e0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ResumeThread]
test r14, r14
cmovne ebx, r12d
test ebx, ebx
jne 0x1401b8a0d
movups xmmword [r13], xmm6
jmp 0x1401b8a2b
xor r12d, r12d
mov r14d, r12d
jmp 0x1401b8993
lea rcx, [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm6
call fcn.1401bbb90
test rsi, rsi
je 0x1401b8a2b
mov rcx, rsi
call qword [sym.imp.MSVCR120.dll_free]
mov r15, qword [rsp + 0xb0]
movaps xmm6, xmmword [rsp + 0x70]
lea r11, [rsp + 0x80]
mov rbp, qword [r11 + 0x40]
mov eax, ebx
mov rbx, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
Function at 0x1401b9ab0
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x70
mov rdi, qword [0x1402c5750]
xor r15d, r15d
movaps xmmword [rsp + 0x60], xmm6
mov rsi, rcx
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x48], r15d
test rdi, rdi
je 0x1401b9b12
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [rdi]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, ebx
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
test rdi, rdi
je 0x1401b9b12
movups xmm6, xmmword [rdi + 0x10]
jmp 0x1401b9bc4
lea rcx, [rsp + 0x50]
call fcn.1401bb3d0
movups xmm6, xmmword [rax]
movq rbp, xmm6
test rbp, rbp
je 0x1401b9bc4
or dword [rbp + 0x194], 1
mov dword [rbp + 0x184], 1
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [rbp + 0x198], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x30], 2
lea r9, [rbp + 8]
mov r8, rdi
mov rdx, rbx
mov rcx, rax
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
test eax, eax
jne 0x1401b9ba5
lea rcx, [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm6
call fcn.1401bbdb0
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rsi], xmm0
jmp 0x1401b9bc7
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_GetThreadPriority]
mov rdx, rbp
mov dword [rbp + 0x188], eax
mov rcx, qword [0x1402c5750]
call fcn.1401b9bf0
movups xmmword [rsi], xmm6
movaps xmm6, xmmword [rsp + 0x60]
lea r11, [rsp + 0x70]
mov rax, rsi
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
Function at 0x1401b9bf0
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x70
mov rsi, qword [0x1402c5750]
mov r14, rdx
mov rdi, rcx
cmp rcx, rsi
je 0x1401b9c32
lea rcx, [rbp - 0x50]
call fcn.1401b9ab0
mov rbx, qword [rax]
test rbx, rbx
jne 0x1401b9c6e
mov eax, 2
jmp 0x1401b9d99
test rsi, rsi
je 0x1401b9c5d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [rsi]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, ebx
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
test rsi, rsi
je 0x1401b9c5d
movups xmm0, xmmword [rsi + 0x10]
jmp 0x1401b9c66
test r14, r14
je 0x1401b9c28
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x50], xmm0
mov rbx, qword [rbp - 0x50]
mov qword [rsp + 0x90], r15
xor r15d, r15d
mov esi, r15d
test rdi, rdi
je 0x1401b9d8f
test rbx, rbx
je 0x1401b9d7a
cmp qword [rdi + 8], rsi
je 0x1401b9d7a
test r14, r14
je 0x1401b9d7a
lea rcx, [rdi + 0x10]
lea rdx, [rbp - 0x20]
call fcn.1401bb120
lea rcx, [rbx + 0x30]
lea rdx, [rbp - 0x40]
call fcn.1401bb120
mov rax, qword [rbx + 0x58]
test rax, rax
je 0x1401b9cd3
cmp qword [rax + 8], rdi
je 0x1401b9ce0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401b9cc4
mov rdx, rdi
mov rcx, rbx
call fcn.1401bc1d0
mov esi, eax
mov rdx, qword [rbp - 0x40]
mov rcx, r15
lock xadd qword [rbp - 0x38], rcx
or rbx, 0xffffffffffffffff
test rcx, rcx
jne 0x1401b9d1a
lea rax, [rbp - 0x40]
lock cmpxchg qword [rdx], r15
lea rcx, [rbp - 0x40]
cmp rcx, rax
je 0x1401b9d2d
lea rcx, [rbp - 0x28]
call fcn.1401bb0c0
mov rcx, r15
lock xadd qword [rbp - 0x38], rcx
xor eax, eax
lock cmpxchg qword [rcx + 0x10], rbx
je 0x1401b9d2d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rdx, qword [rbp - 0x20]
mov rcx, r15
lock xadd qword [rbp - 0x18], rcx
test rcx, rcx
jne 0x1401b9d63
lea rax, [rbp - 0x20]
lock cmpxchg qword [rdx], r15
lea rcx, [rbp - 0x20]
cmp rcx, rax
je 0x1401b9d76
lea rcx, [rbp - 8]
call fcn.1401bb0c0
mov rcx, r15
lock xadd qword [rbp - 0x18], rcx
xor eax, eax
lock cmpxchg qword [rcx + 0x10], rbx
je 0x1401b9d76
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEvent]
test esi, esi
jne 0x1401b9d8f
mov ecx, dword [rdi]
mov rdx, r14
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
mov ecx, reloc.WS2_32.dll_inet_addr
test eax, eax
cmove esi, ecx
mov r15, qword [rsp + 0x90]
mov eax, esi
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x1401ba150
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
cmp dword [0x1402c5748], 0
je 0x1401ba378
mov qword [rsp + 0x80], rdi
mov rdi, qword [0x1402c5750]
test rdi, rdi
je 0x1401ba365
mov qword [rsp + 0x70], rbx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [rdi]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, ebx
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
test rdi, rdi
je 0x1401ba34d
movups xmm0, xmmword [rdi + 0x10]
lea rcx, [rbp - 0x40]
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x88], r14
movaps xmmword [rbp - 0x40], xmm0
call fcn.1401ba400
xor esi, esi
lea rcx, [rdi + 0x38]
lea rdx, [rbp - 0x20]
mov qword [rbp - 8], rsi
mov qword [rbp - 0x10], rsi
mov qword [rbp - 0x18], rsi
mov qword [rbp - 0x20], rcx
xchg qword [rcx], rdx
or r14, 0xffffffffffffffff
test rdx, rdx
je 0x1401ba246
lea rax, [rbp - 0x20]
mov qword [rdx + 8], rax
xor eax, eax
lock cmpxchg qword [rdx + 0x18], r14
je 0x1401ba206
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rax, rsi
lock xadd qword [rbp - 0x10], rax
test rax, rax
jne 0x1401ba246
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov rbx, rax
xor eax, eax
lock cmpxchg qword [rbp - 0x10], rbx
jne 0x1401ba23d
or edx, 0xffffffff
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbp - 0x20]
mov dword [rdi + 0x28], 6
mov rcx, rsi
lock xadd qword [rbp - 0x18], rcx
test rcx, rcx
jne 0x1401ba283
lea rax, [rbp - 0x20]
lock cmpxchg qword [rdx], rsi
lea rcx, [rbp - 0x20]
cmp rcx, rax
je 0x1401ba296
lea rcx, [rbp - 8]
call fcn.1401bb0c0
mov rcx, rsi
lock xadd qword [rbp - 0x18], rcx
xor eax, eax
lock cmpxchg qword [rcx + 0x10], r14
je 0x1401ba296
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEvent]
cmp qword [rdi + 0x178], 0
mov rsi, qword [rsp + 0x78]
je 0x1401ba31a
nop word [rax + rax]
mov rax, qword [rdi + 0x178]
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x28]
mov r8, qword [rcx + 0x10]
mov qword [rcx + 0x10], rdi
mov r9, qword [rdx + 0x18]
test r9, r9
je 0x1401ba2d7
mov rax, qword [rdx + 0x10]
mov qword [r9 + 0x10], rax
mov r9, qword [rdx + 0x10]
test r9, r9
je 0x1401ba2e8
mov rax, qword [rdx + 0x18]
mov qword [r9 + 0x18], rax
cmp qword [r8 + 0x178], rdx
jne 0x1401ba2fc
mov rax, qword [rdx + 0x18]
mov qword [r8 + 0x178], rax
mov rdx, qword [rcx + 0x28]
mov eax, r14d
xchg dword [rdx + 8], eax
mov rcx, qword [rcx + 0x20]
call qword [sym.imp.KERNEL32.dll_SetEvent]
cmp qword [rdi + 0x178], 0
jne 0x1401ba2b0
cmp dword [rdi + 0x184], 1
mov r14, qword [rsp + 0x88]
jne 0x1401ba34d
movups xmm0, xmmword [rdi + 0x10]
lea rcx, [rbp - 0x30]
movaps xmmword [rbp - 0x30], xmm0
call fcn.1401bbb90
mov rax, qword [0x1402c5750]
mov ecx, dword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x80]
mov eax, 1
add rsp, 0x60
pop rbp
ret
mov eax, 1
mov rdi, qword [rsp + 0x80]
add rsp, 0x60
pop rbp
ret
mov eax, 1
add rsp, 0x60
pop rbp
ret