joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14005d990
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x50
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rsi
mov rsi, rdx
mov r11, rcx
movabs r9, 0xcbf29ce484222325
mov qword [rsp + 0x20], r9
xor r10d, r10d
movabs rcx, 0x100000001b3
mov qword [rsp + 0x28], r10
cmp r10, 8
jae 0x14005d9fa
movzx eax, byte [r10 + r8]
xor r9, rax
mov qword [rsp + 0x20], r9
imul r9, rcx
mov qword [rsp + 0x20], r9
inc r10
jmp 0x14005d9d4
mov r10, qword [r11 + 0x30]
and r10, r9
mov qword [rsp + 0x48], r10
mov rbx, qword [r11 + 8]
shl r10, 4
mov rcx, qword [r11 + 0x18]
cmp qword [rcx + r10], rbx
je 0x14005da25
mov rbx, qword [rcx + r10 + 8]
mov rbx, qword [rbx]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
nop word [rax + rax]
cmp rbx, qword [rcx + r10]
je 0x14005da66
mov rbx, qword [rbx + 8]
mov qword [rsp + 0x30], rbx
mov rax, qword [rbx + 0x10]
cmp qword [r8], rax
je 0x14005da4a
jmp 0x14005da30
mov rdx, qword [rsp + 0x78]
mov rcx, r11
call fcn.1400767e0
mov qword [rsi], rbx
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x14005db02
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0x38], rdi
mov rax, qword [rdi]
cmp rbx, rax
je 0x14005daa5
mov rcx, qword [rdi + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rbx
mov rcx, qword [rbx + 8]
mov qword [rcx], rdi
mov rdx, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [rbx + 8], rcx
mov rcx, qword [rdi + 8]
mov qword [rax + 8], rcx
mov qword [rdi + 8], rdx
mov rdx, qword [r11 + 0x18]
add rdx, r10
mov rax, qword [rdx]
cmp rax, qword [r11 + 8]
jne 0x14005dac3
mov qword [rdx], rdi
mov rax, qword [r11 + 0x18]
mov qword [r10 + rax + 8], rdi
jmp 0x14005daef
cmp rax, rbx
jne 0x14005dacd
mov qword [rdx], rdi
jmp 0x14005daef
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rdx + 8], rcx
cmp rcx, rdi
je 0x14005daef
mov rdx, qword [r11 + 0x18]
mov rax, qword [rdx + r10 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r10 + 8], rcx
mov rcx, r11
call fcn.140075fa0
nop
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret

Function at 0x140061c10
Capabilities:
Encode data using xor

Disassembly:
cmp rcx, rdx
je 0x140061c61
mov rax, qword [rsp + 0x28]
and eax, 3
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
nop dword [rax]
movzx edx, byte [rax + r9]
xor dl, byte [rcx]
mov byte [r8], dl
inc rax
mov r8, qword [rsp + 0x18]
and eax, 3
mov rcx, qword [rsp + 8]
inc r8
inc rcx
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
cmp rcx, qword [rsp + 0x10]
jne 0x140061c30
ret
Function at 0x1400620e0
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 [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140062152
nop dword [rax]
cmp qword [rax], rdi
je 0x140062130
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140062120
jmp 0x140062152
cmp qword [rax + 8], 0
je 0x140062152
lock or dword [rsp], 0
mov rdx, rbx
mov rcx, rbx
call fcn.14005f650
nop
lock or dword [rsp], 0
jmp 0x14006222e
mov qword [rsp + 0x48], rbx
mov rdx, rbx
mov ecx, 0xb8
call fcn.14007b390
mov qword [rsp + 0x50], rax
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x98], rax
test rax, rax
je 0x14006218d
mov rdx, rbx
mov rcx, rax
call fcn.1400699a0
mov rbx, rax
jmp 0x140062190
mov rbx, rdi
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
test al, al
je 0x14006222e
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140080910
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x140062360
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 [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x1400623d2
nop dword [rax]
cmp qword [rax], rdi
je 0x1400623b0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400623a0
jmp 0x1400623d2
cmp qword [rax + 8], 0
je 0x1400623d2
lock or dword [rsp], 0
mov rdx, rbx
mov rcx, rbx
call fcn.14005f690
nop
lock or dword [rsp], 0
jmp 0x1400624ae
mov qword [rsp + 0x48], rbx
mov rdx, rbx
mov ecx, 0xa0
call fcn.14007b390
mov qword [rsp + 0x50], rax
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x98], rax
test rax, rax
je 0x14006240d
mov rdx, rbx
mov rcx, rax
call fcn.140069a20
mov rbx, rax
jmp 0x140062410
mov rbx, rdi
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
test al, al
je 0x1400624ae
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140080a70
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x1400625a0
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 [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140062612
nop dword [rax]
cmp qword [rax], rdi
je 0x1400625f0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400625e0
jmp 0x140062612
cmp qword [rax + 8], 0
je 0x140062612
lock or dword [rsp], 0
mov rdx, rbx
mov rcx, rbx
call fcn.14005f7c0
nop
lock or dword [rsp], 0
jmp 0x1400626ee
mov qword [rsp + 0x48], rbx
mov rdx, rbx
mov ecx, 0xb0
call fcn.14007b390
mov qword [rsp + 0x50], rax
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x98], rax
test rax, rax
je 0x14006264d
mov rdx, rbx
mov rcx, rax
call fcn.140069ac0
mov rbx, rax
jmp 0x140062650
mov rbx, rdi
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
test al, al
je 0x1400626ee
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140080c70
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x1400627f0
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 [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140062862
nop dword [rax]
cmp qword [rax], rdi
je 0x140062840
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140062830
jmp 0x140062862
cmp qword [rax + 8], 0
je 0x140062862
lock or dword [rsp], 0
mov rdx, rbx
mov rcx, rbx
call fcn.14005f7e0
nop
lock or dword [rsp], 0
jmp 0x14006293e
mov qword [rsp + 0x48], rbx
mov rdx, rbx
mov ecx, 0xb0
call fcn.14007b390
mov qword [rsp + 0x50], rax
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x98], rax
test rax, rax
je 0x14006289d
mov rdx, rbx
mov rcx, rax
call fcn.140069b30
mov rbx, rax
jmp 0x1400628a0
mov rbx, rdi
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
test al, al
je 0x14006293e
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140080dd0
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x140062a40
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 [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140062ab2
nop dword [rax]
cmp qword [rax], rdi
je 0x140062a90
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140062a80
jmp 0x140062ab2
cmp qword [rax + 8], 0
je 0x140062ab2
lock or dword [rsp], 0
mov rdx, rbx
mov rcx, rbx
call fcn.14005f810
nop
lock or dword [rsp], 0
jmp 0x140062ba0
mov qword [rsp + 0x48], rbx
mov rax, qword [rbx]
cmp byte [rax + 0x400], 0
jne 0x140062acc
mov byte [rax + 0x400], 1
jmp 0x140062ad6
mov ecx, 0xb8
call fcn.1400dba80
mov qword [rsp + 0x50], rax
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x98], rax
test rax, rax
je 0x140062aff
mov rdx, rbx
mov rcx, rax
call fcn.140069bb0
mov rbx, rax
jmp 0x140062b02
mov rbx, rdi
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
test al, al
je 0x140062ba0
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140080f40
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x140062ca0
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 [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140062d12
nop dword [rax]
cmp qword [rax], rdi
je 0x140062cf0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140062ce0
jmp 0x140062d12
cmp qword [rax + 8], 0
je 0x140062d12
lock or dword [rsp], 0
mov rdx, rbx
mov rcx, rbx
call fcn.14005f830
nop
lock or dword [rsp], 0
jmp 0x140062e00
mov qword [rsp + 0x48], rbx
mov rax, qword [rbx]
cmp byte [rax + 0x400], 0
jne 0x140062d2c
mov byte [rax + 0x400], 1
jmp 0x140062d36
mov ecx, 0xb8
call fcn.1400dba80
mov qword [rsp + 0x50], rax
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x98], rax
test rax, rax
je 0x140062d5f
mov rdx, rbx
mov rcx, rax
call fcn.140069c40
mov rbx, rax
jmp 0x140062d62
mov rbx, rdi
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
test al, al
je 0x140062e00
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140081100
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x140062eb0
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 rsi, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140062f22
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140062f00
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140062ef0
jmp 0x140062f22
cmp qword [rax + 8], 0
je 0x140062f22
lock or dword [rsp], 0
mov rdx, rdi
mov rcx, rdi
call fcn.14005fd20
nop
lock or dword [rsp], 0
jmp 0x140063023
mov qword [rsp + 0x48], rdi
mov rdx, rdi
mov ecx, 0x78
call fcn.14007b390
mov rbx, rax
mov qword [rsp + 0x50], rax
xor r14d, r14d
mov qword [rsp + 0x58], r14
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140062f82
mov qword [rax + 0x20], r14
lea rax, [fcn.1400812c0]
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 rdx, rdi
call fcn.14003dfd0
nop
jmp 0x140062f85
mov rbx, r14
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
test al, al
je 0x140063023
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.1400812c0
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x140063110
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 rsi, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140063182
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140063160
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140063150
jmp 0x140063182
cmp qword [rax + 8], 0
je 0x140063182
lock or dword [rsp], 0
mov rdx, rdi
mov rcx, rdi
call fcn.14005fd50
nop
lock or dword [rsp], 0
jmp 0x140063283
mov qword [rsp + 0x48], rdi
mov rdx, rdi
mov ecx, 0x138
call fcn.14007b390
mov rbx, rax
mov qword [rsp + 0x50], rax
xor r14d, r14d
mov qword [rsp + 0x58], r14
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x1400631e2
mov qword [rax + 0x20], r14
lea rax, [fcn.140081450]
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 rdx, rdi
call fcn.14006aed0
nop
jmp 0x1400631e5
mov rbx, r14
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
test al, al
je 0x140063283
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140081450
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x1400632a0
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 rsi, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140063312
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x1400632f0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400632e0
jmp 0x140063312
cmp qword [rax + 8], 0
je 0x140063312
lock or dword [rsp], 0
mov rdx, rdi
mov rcx, rdi
call fcn.14005fd80
nop
lock or dword [rsp], 0
jmp 0x140063413
mov qword [rsp + 0x48], rdi
mov rdx, rdi
mov ecx, 0x108
call fcn.14007b390
mov rbx, rax
mov qword [rsp + 0x50], rax
xor r14d, r14d
mov qword [rsp + 0x58], r14
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140063372
mov qword [rax + 0x20], r14
lea rax, [fcn.1400816a0]
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 rdx, rdi
call fcn.14006af60
nop
jmp 0x140063375
mov rbx, r14
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
test al, al
je 0x140063413
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.1400816a0
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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 0x140063430
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 rsi, rdx
mov rbp, rcx
mov rbx, qword [rdx]
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x1400634a2
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x140063480
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140063470
jmp 0x1400634a2
cmp qword [rax + 8], 0
je 0x1400634a2
lock or dword [rsp], 0
mov rdx, rdi
mov rcx, rdi
call fcn.14005fdb0
nop
lock or dword [rsp], 0
jmp 0x1400635b5
mov qword [rsp + 0x48], rdi
mov rbx, qword [rdi]
cmp byte [rbx + 0x400], 0
jne 0x1400634bc
mov byte [rbx + 0x400], 1
jmp 0x1400634c9
mov ecx, 0x160
call fcn.1400dba80
mov rbx, rax
mov qword [rsp + 0x50], rbx
xor r14d, r14d
mov qword [rsp + 0x58], r14
mov qword [rsp + 0xa8], rbx
test rbx, rbx
je 0x140063514
mov qword [rbx + 0x20], r14
lea rax, [fcn.140081820]
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 rdx, rdi
call fcn.14006afd0
nop
jmp 0x140063517
mov rbx, r14
mov qword [rsp + 0x58], rbx
mov r8, rbx
mov rdx, rsi
mov rcx, rbp
call fcn.140082fd0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
test al, al
je 0x1400635b5
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140311a40]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
mov ecx, dword [0x140311a40]
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.14005d8e0
xor r9d, r9d
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [rbp + 0x28]
call fcn.140081820
nop
lea rcx, [rsp + 0x28]
call fcn.140071b70
nop
mov rdx, qword [rsp + 0x70]
mov ecx, dword [0x140311a40]
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