joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1000a2610
Capabilities:
Get thread local storage value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rdi
push r14
push r15
sub rsp, 0x90
mov qword [rax - 0x70], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov r14, rcx
mov qword [rax - 0x78], 0
call fcn.100068a00
mov rdi, rax
mov rdx, qword gs:[0x30]
lea rbx, [rdx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2666
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2677
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a26af
call fcn.100063d30
call fcn.100068a00
mov rbx, rax
mov rcx, qword gs:[0x30]
lea rdi, [rcx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a26a8
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov rbx, qword [rdi + 0xd8]
mov r15, qword [rbx + 0x218]
mov eax, dword [r14 + 0xb8]
btr eax, 0xf
lea ecx, [rax + 0x8001]
lock cmpxchg dword [r14 + 0xb8], ecx
je 0x1000a26f0
lea r9, [r14 + 0xe0]
mov dword [rsp + 0x20], 0
mov r8, r15
mov rdx, rbx
lea rcx, [r14 + 0x68]
call fcn.100104bd0
mov rax, qword [rbx + 0x210]
mov qword [r14 + 0xd8], rax
mov qword [r14 + 0xc8], r15
xor edx, edx
lea rax, [0x100062030]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.10005b410
nop
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x68]
call fcn.10005b4f0
nop
jmp 0x1000a2742
call fcn.100068a00
mov rdi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a276d
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a277e
mov rax, qword [rbx + 0xd8]
test rax, rax
jne 0x1000a27b5
call fcn.100063d30
call fcn.100068a00
mov rdi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a27ae
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rax, qword [rbx + 0xd8]
cmp dword [rax + 0x204], 0
je 0x1000a27c3
call fcn.1000618f0
mov qword [r14 + 0xd8], 0
mov eax, 0xffff7fff
lock xadd dword [r14 + 0xb8], eax
cmp eax, 0x8001
je 0x1000a27f8
lea rcx, [r14 + 0x90]
call fcn.1000931d0
lea rcx, [r14 + 0x68]
call fcn.1000931d0
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r15
pop r14
pop rdi
ret
Function at 0x1000a2820
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0xb8], rbx
mov rsi, rcx
call fcn.100068a00
mov rdi, rax
mov rdx, qword gs:[0x30]
lea rbx, [rdx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2870
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2881
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a28b9
call fcn.100063d30
call fcn.100068a00
mov rbx, rax
mov rcx, qword gs:[0x30]
lea rdi, [rcx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a28b2
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov rbx, qword [rdi + 0xd8]
mov r14, qword [rbx + 0x218]
mov eax, dword [rsi + 0xb8]
btr eax, 0xf
lea ecx, [rax + 0x8001]
lock cmpxchg dword [rsi + 0xb8], ecx
je 0x1000a28f8
lea r9, [rsi + 0xe0]
mov dword [rsp + 0x20], 0
mov r8, r14
mov rdx, rbx
lea rcx, [rsi + 0x68]
call fcn.100104bd0
mov rax, qword [rbx + 0x210]
mov qword [rsi + 0xd8], rax
mov qword [rsi + 0xc8], r14
xor edx, edx
lea rax, [0x100062030]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x60]
call fcn.10005b410
nop
lea rcx, [rsp + 0x60]
call fcn.10005b4f0
nop
jmp 0x1000a2941
call fcn.100068a00
mov rdi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a296c
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a297d
mov rax, qword [rbx + 0xd8]
test rax, rax
jne 0x1000a29b4
call fcn.100063d30
call fcn.100068a00
mov rdi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a29ad
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rax, qword [rbx + 0xd8]
cmp dword [rax + 0x204], 0
je 0x1000a29c2
call fcn.1000618f0
mov qword [rsi + 0xd8], 0
mov eax, 0xffff7fff
lock xadd dword [rsi + 0xb8], eax
cmp eax, 0x8001
je 0x1000a29f6
lea rcx, [rsi + 0x90]
call fcn.1000931d0
lea rcx, [rsi + 0x68]
call fcn.1000931d0
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r14
pop rdi
pop rsi
ret
Function at 0x1000a2a10
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rsp + 0xb8], rbx
mov rsi, rcx
call fcn.100068a00
mov rdi, rax
mov rdx, qword gs:[0x30]
lea rbx, [rdx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2a60
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2a71
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a2aa9
call fcn.100063d30
call fcn.100068a00
mov rbx, rax
mov rcx, qword gs:[0x30]
lea rdi, [rcx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2aa2
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov rbx, qword [rdi + 0xd8]
mov r14, qword [rbx + 0x218]
mov eax, dword [rsi + 0xb8]
btr eax, 0xf
lea ecx, [rax + 0x8001]
lock cmpxchg dword [rsi + 0xb8], ecx
je 0x1000a2ae8
lea r9, [rsi + 0xe0]
mov dword [rsp + 0x20], 0
mov r8, r14
mov rdx, rbx
lea rcx, [rsi + 0x68]
call fcn.100104bd0
mov rax, qword [rbx + 0x210]
mov qword [rsi + 0xd8], rax
mov qword [rsi + 0xc8], r14
mov dword [rsp + 0x30], 0
xor edx, edx
lea rax, [0x100062030]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.10005b410
nop
mov dword [rsp + 0x30], 1
lea rcx, [rsp + 0x68]
call fcn.10005b4f0
nop
jmp 0x1000a2b41
call fcn.100068a00
mov rdi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2b6c
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2b7d
mov rax, qword [rbx + 0xd8]
test rax, rax
jne 0x1000a2bb4
call fcn.100063d30
call fcn.100068a00
mov rdi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2bad
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rax, qword [rbx + 0xd8]
cmp dword [rax + 0x204], 0
je 0x1000a2bc2
call fcn.1000618f0
mov qword [rsi + 0xd8], 0
mov eax, 0xffff7fff
lock xadd dword [rsi + 0xb8], eax
cmp eax, 0x8001
je 0x1000a2bf6
lea rcx, [rsi + 0x90]
call fcn.1000931d0
lea rcx, [rsi + 0x68]
call fcn.1000931d0
mov eax, dword [rsp + 0x30]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r14
pop rdi
pop rsi
ret
Function at 0x1000a2c20
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov r14, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2c60
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2c71
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a2ca8
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2ca1
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
mov rbp, qword [rbx + 0x218]
lea rax, [0x1000610e0]
mov qword [rbx + 0x3f8], rax
mov eax, dword [r14 + 0xb8]
btr eax, 0xf
lea ecx, [rax + 0x8001]
lock cmpxchg dword [r14 + 0xb8], ecx
je 0x1000a2cfe
lea r9, [r14 + 0xe0]
lea rcx, [r14 + 0x68]
mov r8, rbp
mov rdx, rbx
mov dword [rsp + 0x20], 0
call fcn.100104bd0
mov qword [r14 + 0xc8], rbp
mov eax, 0xffff7fff
mov qword [r14 + 0xd8], 0
lock xadd dword [r14 + 0xb8], eax
cmp eax, 0x8001
je 0x1000a2d3a
lea rcx, [r14 + 0x90]
call fcn.1000931d0
lea rcx, [r14 + 0x68]
call fcn.1000931d0
mov rbp, qword [rsp + 0x60]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x58]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret

Function at 0x1000a2d60
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov rbp, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2da0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2db1
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a2de8
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2de1
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
mov r14, qword [rbx + 0x218]
lea rax, [0x1000610e0]
mov qword [rbx + 0x3f8], rax
mov eax, dword [rbp + 0xb8]
btr eax, 0xf
lea ecx, [rax + 0x8001]
lock cmpxchg dword [rbp + 0xb8], ecx
je 0x1000a2e3c
lea r9, [rbp + 0xe0]
lea rcx, [rbp + 0x68]
mov r8, r14
mov rdx, rbx
mov dword [rsp + 0x20], 0
call fcn.100104bd0
mov rax, qword [rbx + 0x210]
mov rcx, rbp
mov qword [rbp + 0xc8], r14
mov qword [rbp + 0xd8], rax
call fcn.10010e9c0
mov qword [rbp + 0xd8], 0
mov eax, 0xffff7fff
lock xadd dword [rbp + 0xb8], eax
cmp eax, 0x8001
je 0x1000a2e8d
lea rcx, [rbp + 0x90]
call fcn.1000931d0
lea rcx, [rbp + 0x68]
call fcn.1000931d0
mov rbp, qword [rsp + 0x60]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x58]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
Function at 0x1000a2eb0
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov r14, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2ef0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a2f01
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a2f38
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a2f31
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
mov rbp, qword [rbx + 0x218]
lea rax, [0x1000610e0]
mov qword [rbx + 0x3f8], rax
mov eax, dword [r14 + 0xb8]
btr eax, 0xf
lea ecx, [rax + 0x8001]
lock cmpxchg dword [r14 + 0xb8], ecx
je 0x1000a2f8e
lea r9, [r14 + 0xe0]
lea rcx, [r14 + 0x68]
mov r8, rbp
mov rdx, rbx
mov dword [rsp + 0x20], 0
call fcn.100104bd0
mov qword [r14 + 0xc8], rbp
mov eax, 0xffff7fff
mov qword [r14 + 0xd8], 0
lock xadd dword [r14 + 0xb8], eax
cmp eax, 0x8001
je 0x1000a2fca
lea rcx, [r14 + 0x90]
call fcn.1000931d0
lea rcx, [r14 + 0x68]
call fcn.1000931d0
mov rbp, qword [rsp + 0x60]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x58]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret

Function at 0x1000a3dd0
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
mov rbp, rdx
mov r14, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a3e1b
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a3e2c
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a3e63
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a3e5c
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
lea rax, [0x1000610e0]
mov rdx, rbx
mov rcx, r14
mov qword [rbx + 0x3f8], rax
call fcn.1000a5800
mov rdx, rbp
mov rcx, r14
call fcn.100112b10
mov qword [r14 + 0x4a8], 0
mov edx, 0xffff7fff
mov ebp, eax
lock xadd dword [r14 + 0x488], edx
cmp edx, 0x8001
je 0x1000a3ecb
lea rcx, [r14 + 0x460]
call fcn.1000931d0
lea rcx, [r14 + 0x438]
call fcn.1000931d0
mov eax, ebp
mov rbp, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x48]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
Function at 0x1000a3f00
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbp, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a3f42
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a3f53
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a3f8a
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a3f83
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
lea rax, [0x1000610e0]
mov rdx, rbx
mov rcx, rbp
mov qword [rbx + 0x3f8], rax
call fcn.1000a5800
mov rcx, rbp
call fcn.100112b90
mov qword [rbp + 0x4a8], 0
mov eax, 0xffff7fff
lock xadd dword [rbp + 0x488], eax
cmp eax, 0x8001
je 0x1000a3fe9
lea rcx, [rbp + 0x460]
call fcn.1000931d0
lea rcx, [rbp + 0x438]
call fcn.1000931d0
mov rbp, qword [rsp + 0x38]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret

Function at 0x1000a4450
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov ebp, r9d
mov r15, r8
mov r12, rdx
mov r14, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a44a5
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a44b6
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a44ed
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a44e6
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
lea rax, [0x1000610e0]
mov rdx, rbx
mov rcx, r14
mov qword [rbx + 0x3f8], rax
call fcn.1000a5740
movzx r11d, byte [rsp + 0x70]
mov r9d, ebp
mov r8, r15
mov rdx, r12
mov rcx, r14
mov byte [rsp + 0x20], r11b
call fcn.1001120f0
lea rdi, [r14 + 0x438]
mov rbp, rax
xor eax, eax
mov edx, 0x7ffe7fff
mov qword [rdi + 0x70], rax
mov qword [rdi + 0x68], rax
lock xadd dword [rdi + 0x50], edx
cmp edx, 0x80018001
je 0x1000a4560
lea rcx, [rdi + 0x28]
call fcn.1000931d0
mov rcx, rdi
call fcn.1000931d0
mov rdi, qword [rsp + 0x68]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
mov rax, rbp
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x1000a4590
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov rbp, r9
mov r15, r8
mov r12, rdx
mov r14, rcx
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a45e5
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a45f6
mov rbx, qword [rbx + 0xd8]
test rbx, rbx
jne 0x1000a462d
call fcn.100063d30
call fcn.100068a00
mov rbx, qword gs:[0x30]
mov rcx, rax
mov rdi, rax
add rbx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4626
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rbx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0x3f8]
lea rax, [0x1000610e0]
mov rdx, rbx
mov rcx, r14
mov qword [rbx + 0x3f8], rax
call fcn.1000a5740
movzx r11d, byte [rsp + 0x78]
mov eax, dword [rsp + 0x70]
mov byte [rsp + 0x28], r11b
mov r9, rbp
mov r8, r15
mov rdx, r12
mov rcx, r14
mov dword [rsp + 0x20], eax
call fcn.1001122d0
lea rdi, [r14 + 0x438]
mov edx, 0x7ffe7fff
mov rbp, rax
xor eax, eax
mov qword [rdi + 0x70], rax
mov qword [rdi + 0x68], rax
lock xadd dword [rdi + 0x50], edx
cmp edx, 0x80018001
je 0x1000a46a8
lea rcx, [rdi + 0x28]
call fcn.1000931d0
mov rcx, rdi
call fcn.1000931d0
mov rdi, qword [rsp + 0x68]
mov qword [rbx + 0x3f8], rsi
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
mov rax, rbp
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x1000a46e0
Capabilities:
Get thread local storage value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [rax - 0x70], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
movzx r14d, dl
mov rdi, rcx
mov qword [rax - 0x78], 0
call fcn.100068a00
mov rsi, rax
mov r8, qword gs:[0x30]
lea rbx, [r8 + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4739
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a474a
mov rdx, qword [rbx + 0xd8]
test rdx, rdx
jne 0x1000a4782
call fcn.100063d30
call fcn.100068a00
mov rbx, rax
mov rcx, qword gs:[0x30]
lea rsi, [rcx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a477b
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
mov rdx, qword [rsi + 0xd8]
mov rcx, rdi
call fcn.1000a5800
nop
xor edx, edx
lea rax, [0x100062030]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.10005b410
nop
movzx eax, r14b
mov rcx, qword [rdi + rax*8 + 0x1b0]
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x68]
call fcn.10005b4f0
nop
jmp 0x1000a47d8
call fcn.100068a00
mov rsi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4803
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a4814
mov rax, qword [rbx + 0xd8]
test rax, rax
jne 0x1000a484b
call fcn.100063d30
call fcn.100068a00
mov rsi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4844
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rax, qword [rbx + 0xd8]
cmp dword [rax + 0x204], 0
je 0x1000a4859
call fcn.1000618f0
mov qword [rdi + 0x4a8], 0
mov eax, 0xffff7fff
lock xadd dword [rdi + 0x488], eax
cmp eax, 0x8001
je 0x1000a4890
lea rcx, [rdi + 0x460]
call fcn.1000931d0
lea rcx, [rdi + 0x438]
call fcn.1000931d0
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r14
pop rdi
pop rsi
ret
Function at 0x1000a48b0
Capabilities:
Get thread local storage value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [rax - 0x70], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
movzx r14d, dl
mov rdi, rcx
mov qword [rax - 0x78], 0
call fcn.100068a00
mov rsi, rax
mov r8, qword gs:[0x30]
lea rbx, [r8 + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4909
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a491a
mov rdx, qword [rbx + 0xd8]
test rdx, rdx
jne 0x1000a4952
call fcn.100063d30
call fcn.100068a00
mov rbx, rax
mov rcx, qword gs:[0x30]
lea rsi, [rcx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a494b
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
mov rdx, qword [rsi + 0xd8]
mov rcx, rdi
call fcn.1000a5800
nop
xor edx, edx
lea rax, [0x100062030]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.10005b410
nop
movzx eax, r14b
mov rcx, qword [rdi + rax*8 + 0x2b0]
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x68]
call fcn.10005b4f0
nop
jmp 0x1000a49a8
call fcn.100068a00
mov rsi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a49d3
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a49e4
mov rax, qword [rbx + 0xd8]
test rax, rax
jne 0x1000a4a1b
call fcn.100063d30
call fcn.100068a00
mov rsi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4a14
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rax, qword [rbx + 0xd8]
cmp dword [rax + 0x204], 0
je 0x1000a4a29
call fcn.1000618f0
mov qword [rdi + 0x4a8], 0
mov eax, 0xffff7fff
lock xadd dword [rdi + 0x488], eax
cmp eax, 0x8001
je 0x1000a4a60
lea rcx, [rdi + 0x460]
call fcn.1000931d0
lea rcx, [rdi + 0x438]
call fcn.1000931d0
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r14
pop rdi
pop rsi
ret
Function at 0x1000a4a80
Capabilities:
Get thread local storage value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [rax - 0x70], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
movzx r14d, dl
mov rdi, rcx
mov qword [rax - 0x78], 0
call fcn.100068a00
mov rsi, rax
mov r8, qword gs:[0x30]
lea rbx, [r8 + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4ad9
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a4aea
mov rdx, qword [rbx + 0xd8]
test rdx, rdx
jne 0x1000a4b22
call fcn.100063d30
call fcn.100068a00
mov rbx, rax
mov rcx, qword gs:[0x30]
lea rsi, [rcx + rax]
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4b1b
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
mov rdx, qword [rsi + 0xd8]
mov rcx, rdi
call fcn.1000a5800
nop
xor edx, edx
lea rax, [0x100062030]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.10005b410
nop
movzx edx, r14b
mov qword [rsp + 0xc0], rdx
lea rcx, [rdi + 0x78]
mov qword [rsp + 0xc8], rcx
mov rax, qword [rcx + rdx*8 + 0x138]
sub rax, qword [rcx + rdx*8 + 0x238]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x68]
call fcn.10005b4f0
nop
jmp 0x1000a4b8c
call fcn.100068a00
mov rsi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4bb7
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
test rbx, rbx
je 0x1000a4bc8
mov rax, qword [rbx + 0xd8]
test rax, rax
jne 0x1000a4bff
call fcn.100063d30
call fcn.100068a00
mov rsi, rax
mov rbx, qword gs:[0x30]
add rbx, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x1000a4bf8
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov rax, qword [rbx + 0xd8]
cmp dword [rax + 0x204], 0
je 0x1000a4c0d
call fcn.1000618f0
mov qword [rdi + 0x4a8], 0
mov eax, 0xffff7fff
lock xadd dword [rdi + 0x488], eax
cmp eax, 0x8001
je 0x1000a4c44
lea rcx, [rdi + 0x460]
call fcn.1000931d0
lea rcx, [rdi + 0x438]
call fcn.1000931d0
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r14
pop rdi
pop rsi
ret