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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
sub rsp, 0x28
lea r8, [rcx + 0x48]
lea rdx, [rcx + 0x40]
mov rcx, qword [rcx + 0x38]
add rsp, 0x28
jmp 0x140096e60
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov rsi, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140096ec8
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140096eb0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140096ea0
jmp 0x140096ec8
cmp qword [rax + 8], 0
je 0x140096ec8
mov rdx, rdi
mov rcx, rdi
call fcn.14005bcc0
nop
jmp 0x140096ff1
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, reloc.WS2_32.dll_WSASetLastError
call fcn.1400274a0
mov rbx, rax
mov qword [rsp + 0x68], rax
xor r14d, r14d
mov qword [rsp + 0x70], r14
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140096f55
mov qword [rax + 0x20], r14
lea rax, [fcn.1400970b0]
mov qword [rbx + 0x28], rax
mov qword [rbx], r14
mov qword [rbx + 8], r14
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], r14
mov dword [rbx + 0x30], r14d
lea rcx, [rbx + 0x38]
mov qword [rsp + 0xb8], rcx
mov rax, qword [rdi]
mov qword [rcx], rax
add rcx, 8
mov qword [rsp + 0xb8], rcx
mov rax, qword [rdi + 8]
mov qword [rcx], rax
add rcx, 8
mov qword [rsp + 0xb8], rcx
lea rdx, [rdi + 0x10]
call fcn.1400cc700
jmp 0x140096f58
mov rbx, r14
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x68], r14
test al, al
je 0x140096ff1
mov rax, qword [rsi]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.1400970b0
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x140096070
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov r14, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x1400960d8
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x1400960c0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400960b0
jmp 0x1400960d8
cmp qword [rax + 8], 0
je 0x1400960d8
mov rdx, rdi
mov rcx, rdi
call fcn.1400975d0
nop
jmp 0x140096207
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, 0xb0
call fcn.1400274a0
mov rbx, rax
xor esi, esi
test rax, rax
je 0x14009616b
mov qword [rax + 0x20], rsi
lea rax, [fcn.140096a90]
mov qword [rbx + 0x28], rax
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rsi
mov dword [rbx + 0x30], esi
movups xmm0, xmmword [rdi]
movups xmmword [rbx + 0x38], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rbx + 0x48], rax
mov rax, qword [rdi + 0x18]
mov qword [rbx + 0x50], rax
mov eax, dword [rdi + 0x24]
mov dword [rbx + 0x5c], eax
mov eax, dword [rdi + 0x28]
mov dword [rbx + 0x60], eax
movups xmm0, xmmword [rdi + 0x30]
movups xmmword [rbx + 0x68], xmm0
mov rax, qword [rdi + 0x40]
mov qword [rbx + 0x78], rax
movups xmm0, xmmword [rdi + 0x48]
movups xmmword [rbx + 0x80], xmm0
movups xmm0, xmmword [rdi + 0x58]
movups xmmword [rbx + 0x90], xmm0
movups xmm0, xmmword [rdi + 0x68]
movups xmmword [rbx + 0xa0], xmm0
jmp 0x14009616e
mov rbx, rsi
mov r8, rbx
mov rdx, r14
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rsi
test al, al
je 0x140096207
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140096a90
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x140096220
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov r14, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140096288
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140096270
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140096260
jmp 0x140096288
cmp qword [rax + 8], 0
je 0x140096288
mov rdx, rdi
mov rcx, rdi
call fcn.140097610
nop
jmp 0x1400963c6
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, 0xb8
call fcn.1400274a0
mov rbx, rax
xor esi, esi
test rax, rax
je 0x14009632a
mov qword [rax + 0x20], rsi
lea rax, [fcn.140096950]
mov qword [rbx + 0x28], rax
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rsi
mov dword [rbx + 0x30], esi
movups xmm0, xmmword [rdi]
movups xmmword [rbx + 0x38], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rbx + 0x48], rax
mov rax, qword [rdi + 0x18]
mov qword [rbx + 0x50], rax
mov eax, dword [rdi + 0x24]
mov dword [rbx + 0x5c], eax
mov eax, dword [rdi + 0x28]
mov dword [rbx + 0x60], eax
movups xmm0, xmmword [rdi + 0x30]
movups xmmword [rbx + 0x68], xmm0
mov rax, qword [rdi + 0x40]
mov qword [rbx + 0x78], rax
movups xmm0, xmmword [rdi + 0x48]
movups xmmword [rbx + 0x80], xmm0
movups xmm0, xmmword [rdi + 0x58]
movups xmmword [rbx + 0x90], xmm0
movups xmm0, xmmword [rdi + 0x68]
movups xmmword [rbx + 0xa0], xmm0
mov rax, qword [rdi + 0x78]
mov qword [rbx + 0xb0], rax
jmp 0x14009632d
mov rbx, rsi
mov r8, rbx
mov rdx, r14
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rsi
test al, al
je 0x1400963c6
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140096950
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x1400963e0
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov r14, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140096448
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140096430
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140096420
jmp 0x140096448
cmp qword [rax + 8], 0
je 0x140096448
mov rdx, rdi
mov rcx, rdi
call fcn.140097650
nop
jmp 0x140096579
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, 0xa8
call fcn.1400274a0
mov rbx, rax
xor esi, esi
test rax, rax
je 0x1400964dd
mov qword [rax + 0x20], rsi
lea rax, [fcn.140096820]
mov qword [rbx + 0x28], rax
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rsi
mov dword [rbx + 0x30], esi
movups xmm0, xmmword [rdi]
movups xmmword [rbx + 0x38], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rbx + 0x48], rax
mov rax, qword [rdi + 0x18]
mov qword [rbx + 0x50], rax
mov rax, qword [rdi + 0x20]
mov qword [rbx + 0x58], rax
mov eax, dword [rdi + 0x28]
mov dword [rbx + 0x60], eax
mov rax, qword [rdi + 0x30]
mov qword [rbx + 0x68], rax
movups xmm0, xmmword [rdi + 0x38]
movups xmmword [rbx + 0x70], xmm0
movups xmm0, xmmword [rdi + 0x48]
movups xmmword [rbx + 0x80], xmm0
movups xmm0, xmmword [rdi + 0x58]
movups xmmword [rbx + 0x90], xmm0
mov rax, qword [rdi + 0x68]
mov qword [rbx + 0xa0], rax
jmp 0x1400964e0
mov rbx, rsi
mov r8, rbx
mov rdx, r14
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rsi
test al, al
je 0x140096579
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140096820
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x140096e60
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
sub rsp, 0x28
lea r8, [rcx + 0x48]
lea rdx, [rcx + 0x40]
mov rcx, qword [rcx + 0x38]
add rsp, 0x28
jmp 0x140096e60
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov rsi, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140096ec8
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140096eb0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140096ea0
jmp 0x140096ec8
cmp qword [rax + 8], 0
je 0x140096ec8
mov rdx, rdi
mov rcx, rdi
call fcn.14005bcc0
nop
jmp 0x140096ff1
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, reloc.WS2_32.dll_WSASetLastError
call fcn.1400274a0
mov rbx, rax
mov qword [rsp + 0x68], rax
xor r14d, r14d
mov qword [rsp + 0x70], r14
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140096f55
mov qword [rax + 0x20], r14
lea rax, [fcn.1400970b0]
mov qword [rbx + 0x28], rax
mov qword [rbx], r14
mov qword [rbx + 8], r14
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], r14
mov dword [rbx + 0x30], r14d
lea rcx, [rbx + 0x38]
mov qword [rsp + 0xb8], rcx
mov rax, qword [rdi]
mov qword [rcx], rax
add rcx, 8
mov qword [rsp + 0xb8], rcx
mov rax, qword [rdi + 8]
mov qword [rcx], rax
add rcx, 8
mov qword [rsp + 0xb8], rcx
lea rdx, [rdi + 0x10]
call fcn.1400cc700
jmp 0x140096f58
mov rbx, r14
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x68], r14
test al, al
je 0x140096ff1
mov rax, qword [rsi]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.1400970b0
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x140097210
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov r14, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140097278
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140097260
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140097250
jmp 0x140097278
cmp qword [rax + 8], 0
je 0x140097278
mov rdx, rdi
mov rcx, rdi
call fcn.1400984d0
nop
jmp 0x140097386
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, reloc.WS2_32.dll_WSASetLastError
call fcn.1400274a0
mov rbx, rax
xor esi, esi
test rax, rax
je 0x1400972ea
mov qword [rax + 0x20], rsi
lea rax, [fcn.1400973b0]
mov qword [rbx + 0x28], rax
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rsi
mov dword [rbx + 0x30], esi
movups xmm0, xmmword [rdi]
movups xmmword [rbx + 0x38], xmm0
movups xmm0, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x48], xmm0
mov rax, qword [rdi + 0x20]
mov qword [rbx + 0x58], rax
mov rax, qword [rdi + 0x28]
mov qword [rbx + 0x60], rax
mov qword [rdi + 0x20], rsi
mov qword [rdi + 0x28], rsi
mov rax, qword [rdi + 0x30]
mov qword [rbx + 0x68], rax
mov qword [rdi + 0x30], rsi
jmp 0x1400972ed
mov rbx, rsi
mov r8, rbx
mov rdx, r14
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rsi
test al, al
je 0x140097386
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.1400973b0
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x140097680
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x80
mov qword [rax - 0x68], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
mov rdi, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x1400976e8
nop dword [rax]
cmp qword [rax], rdi
je 0x1400976d0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400976c0
jmp 0x1400976e8
cmp qword [rax + 8], 0
je 0x1400976e8
mov rdx, rbx
mov rcx, rbx
call fcn.140098610
nop
jmp 0x1400977ae
mov qword [rsp + 0x60], rbx
mov rdx, rbx
mov ecx, 0xe0
call fcn.1400274a0
nop
xor edi, edi
test rax, rax
je 0x140097712
mov rdx, rbx
mov rcx, rax
call fcn.140098030
mov rbx, rax
jmp 0x140097715
mov rbx, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x68], rdi
test al, al
je 0x1400977ae
mov rax, qword [rsi]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140097f00
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x1400977d0
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x80
mov qword [rax - 0x68], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
mov rdi, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140097838
nop dword [rax]
cmp qword [rax], rdi
je 0x140097820
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140097810
jmp 0x140097838
cmp qword [rax + 8], 0
je 0x140097838
mov rdx, rbx
mov rcx, rbx
call fcn.140098650
nop
jmp 0x1400978fe
mov qword [rsp + 0x60], rbx
mov rdx, rbx
mov ecx, 0xe8
call fcn.1400274a0
nop
xor edi, edi
test rax, rax
je 0x140097862
mov rdx, rbx
mov rcx, rax
call fcn.140097e20
mov rbx, rax
jmp 0x140097865
mov rbx, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x68], rdi
test al, al
je 0x1400978fe
mov rax, qword [rsi]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140097ce0
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x140097920
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x80
mov qword [rax - 0x68], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
mov rdi, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140097988
nop dword [rax]
cmp qword [rax], rdi
je 0x140097970
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140097960
jmp 0x140097988
cmp qword [rax + 8], 0
je 0x140097988
mov rdx, rbx
mov rcx, rbx
call fcn.140098690
nop
jmp 0x140097a4e
mov qword [rsp + 0x60], rbx
mov rdx, rbx
mov ecx, 0xe0
call fcn.1400274a0
nop
xor edi, edi
test rax, rax
je 0x1400979b2
mov rdx, rbx
mov rcx, rax
call fcn.140097be0
mov rbx, rax
jmp 0x1400979b5
mov rbx, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x68], rdi
test al, al
je 0x140097a4e
mov rax, qword [rsi]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140097ab0
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x140098100
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov rax, rsp
push rsi
push rdi
push r14
sub rsp, 0x80
mov qword [rax - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov rdi, r8
mov r14, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140098168
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140098150
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140098140
jmp 0x140098168
cmp qword [rax + 8], 0
je 0x140098168
mov rdx, rdi
mov rcx, rdi
call fcn.140098930
nop
jmp 0x1400982ad
mov qword [rsp + 0x60], rdi
mov rdx, rdi
mov ecx, 0xc0
call fcn.1400274a0
mov rbx, rax
xor esi, esi
test rax, rax
je 0x140098211
mov qword [rax + 0x20], rsi
lea rax, [fcn.140098310]
mov qword [rbx + 0x28], rax
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rsi
mov dword [rbx + 0x30], esi
movups xmm0, xmmword [rdi]
movups xmmword [rbx + 0x38], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rbx + 0x48], rax
movups xmm0, xmmword [rdi + 0x18]
movups xmmword [rbx + 0x50], xmm0
movsd xmm1, qword [rdi + 0x28]
movsd qword [rbx + 0x60], xmm1
mov eax, dword [rdi + 0x30]
mov dword [rbx + 0x68], eax
mov rax, qword [rdi + 0x38]
mov qword [rbx + 0x70], rax
mov rax, qword [rdi + 0x40]
mov qword [rbx + 0x78], rax
movups xmm0, xmmword [rdi + 0x50]
movups xmmword [rbx + 0x88], xmm0
movups xmm0, xmmword [rdi + 0x60]
movups xmmword [rbx + 0x98], xmm0
movups xmm0, xmmword [rdi + 0x70]
movups xmmword [rbx + 0xa8], xmm0
mov rax, qword [rdi + 0x80]
mov qword [rbx + 0xb8], rax
jmp 0x140098214
mov rbx, rsi
mov r8, rbx
mov rdx, r14
mov rcx, rbp
call fcn.14002a4e0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rsi
test al, al
je 0x1400982ad
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x48]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x30], rax
call fcn.1400cba50
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140098310
nop
lea rcx, [rsp + 0x28]
call fcn.14002a0e0
nop
mov rdx, qword [rsp + 0x58]
mov ecx, dword [0x1402ca5ac]
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
nop
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret