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

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
movzx eax, byte [rdx]
mov r13, rcx
mov r12, rdx
cmp al, 2
je 0x1400080f0
cmp al, 3
je 0x140008188
cmp al, 1
je 0x140008160
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov rdi, qword [rdx + 0x20]
movzx esi, r8b
xor ebx, ebx
mov ebp, 0x11400000
test rdi, rdi
jle 0x1400080d9
mov rax, qword [r12 + 0x28]
mov rdx, qword [rax + rbx*8]
cmp byte [rdx], 1
je 0x140008134
mov r8d, esi
mov rcx, r13
call sym.forAllSlotsAux__system_6187
add rbx, 1
cmp rdi, rbx
je 0x1400080d9
mov rax, qword [r12 + 0x28]
mov rdx, qword [rax + rbx*8]
cmp byte [rdx], 1
jne 0x140008112
mov r9, qword [rdx + 0x10]
mov r10, qword [rdx + 8]
mov rax, rbp
movzx ecx, byte [r9 + 0x10]
add r10, r13
shr rax, cl
test al, 1
jne 0x1400081b8
mov r8d, esi
mov rdx, r9
mov rcx, r10
call sym.forAllChildrenAux__system_5902
jmp 0x14000811d
mov rcx, qword [r12 + 8]
mov rdx, qword [rdx + 0x10]
movzx r8d, r8b
add rcx, r13
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp sym.forAllChildrenAux__system_5902
call sym.selectBranch__system_4223
mov rdx, rax
test rax, rax
je 0x1400080d9
movzx r8d, r8b
mov rcx, r13
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp sym.forAllSlotsAux__system_6187
mov rcx, qword [r10]
mov edx, esi
call sym.doOperation__system_5899
jmp 0x14000811d

Function at 0x140008320
Capabilities:
Get thread local storage value

Disassembly:
mov r8, qword [rcx + 8]
mov rax, qword [r8 + 0x30]
test rax, rax
je 0x140008340
movzx edx, dl
add rcx, 0x10
jmp rax
movzx eax, byte [r8 + 0x10]
cmp al, 0x16
je 0x140008360
cmp al, 0x18
je 0x140008350
ret
movzx edx, dl
jmp sym.forAllChildren__system_5896.part.0
mov r9, qword [r8 + 0x18]
add rcx, 0x10
movzx r8d, dl
mov rdx, r9
jmp sym.forAllChildrenAux__system_5902
Function at 0x140008380
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov r13, qword [sym.imp.KERNEL32.dll_GetLastError]
mov rbp, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rcx
mov rax, qword [rbx + 0x18]
nop dword [rax]
test rax, rax
jle 0x14000845a
mov rax, qword [rbx + 0x28]
mov r12, qword [rax]
and qword [r12], 0xfffffffffffffffb
mov rax, qword [rbx + 0x28]
mov rdx, qword [rbx + 0x18]
mov rdx, qword [rax + rdx*8 - 8]
mov qword [rax], rdx
mov rax, qword [rbx + 0x18]
sub rax, 1
mov qword [rbx + 0x18], rax
cmp qword [r12], 7
ja 0x1400083b0
mov r15d, dword [0x1400707a8]
call r13
mov r14d, eax
mov ecx, r15d
call rbp
mov ecx, r14d
mov rsi, rax
call rdi
mov rax, qword [r12 + 8]
cmp qword [rax + 0x28], 0
je 0x14000842b
add qword [rsi + 0x98], 1
lea rcx, [r12 + 0x10]
call qword [rax + 0x28]
sub qword [rsi + 0x98], 1
mov rax, qword [r12 + 8]
mov r8, qword [rax + 0x30]
test r8, r8
je 0x140008470
lea rcx, [r12 + 0x10]
mov edx, 2
call r8
lea rcx, [rbx + 0x68]
mov rdx, r12
call sym.rawDealloc__system_5267
mov rax, qword [rbx + 0x18]
test rax, rax
jg 0x1400083b9
mov eax, 1
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movzx edx, byte [rax + 0x10]
cmp dl, 0x16
je 0x140008490
cmp dl, 0x18
jne 0x140008441
mov edx, 2
mov rcx, r12
call sym.forAllChildren__system_5896.part.0
jmp 0x140008441
mov rdx, qword [rax + 0x18]
lea rcx, [r12 + 0x10]
mov r8d, 2
call sym.forAllChildrenAux__system_5902
jmp 0x140008441
Function at 0x140008a00
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov r14, rcx
call sym.stackSize__system_6028
mov r8, rax
mov rax, qword [r14 + 0x2b70]
cmp rax, r8
cmovl rax, r8
mov qword [r14 + 0x2b70], rax
mov rax, qword [r14 + 0x2910]
mov rdx, qword [rax]
mov r8, rax
cmp rax, rdx
jne 0x140008a53
jmp 0x140008bb8
mov r8, rcx
mov rcx, rdx
mov rdx, qword [rdx]
cmp rdx, rcx
jne 0x140008a50
mov rdx, qword [r8 + 0x10]
mov qword [r14 + 0x68], rdx
cmp rax, qword [rax]
je 0x140008bd0
nop
mov rdx, rax
mov rax, qword [rax + 8]
cmp qword [rax], rax
jne 0x140008a70
mov rax, qword [rdx + 0x18]
mov qword [r14 + 0x70], rax
mov rcx, r14
call sym.markStackAndRegisters__system_6452
mov rax, qword [r14 + 0x2b78]
mov rdx, qword [r14 + 0x30]
mov rcx, r14
cmp rax, rdx
cmovl rax, rdx
add qword [r14 + 0x2b58], 1
mov qword [r14 + 0x2b78], rax
call sym.collectZCT__system_6410
test al, al
je 0x140008aca
mov rax, qword [r14 + 0x2100]
cmp qword [r14 + 8], rax
jle 0x140008b48
mov rbp, qword [r14 + 0x30]
mov rdi, qword [r14 + 0x40]
xor ebx, ebx
test rbp, rbp
jle 0x140008b2b
mov r13, qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12, qword [rdi + rbx*8]
mov rax, qword [r12]
sub rax, 8
mov qword [r12], rax
cmp rax, 7
ja 0x140008b22
mov esi, dword [0x1400707a8]
call r13
mov r15d, eax
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r15d
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsi + 0x50]
mov rdx, r12
call sym.addZCT__system_5862
add rbx, 1
cmp rbp, rbx
jne 0x140008ae0
mov qword [r14 + 0x30], 0
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r14
call sym.collectCycles__system_6412
mov r13d, dword [0x1400707a8]
add qword [r14 + 0x2b60], 1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12d, eax
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r12d
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, qword [rbx + 0x2138]
mov edx, 0x400000
add rax, rax
cmp rax, rdx
cmovl rax, rdx
mov rdx, qword [r14 + 0x2b68]
cmp rdx, rax
mov qword [r14 + 8], rax
cmovl rdx, rax
mov qword [r14 + 0x2b68], rdx
jmp 0x140008aca
xor edx, edx
mov qword [r14 + 0x68], rdx
cmp rax, qword [rax]
jne 0x140008a70
nop word [rax + rax]
mov rax, 0xffffffffffffffff
jmp 0x140008a80
Function at 0x140008c30
Capabilities:
Get thread local storage value

Disassembly:
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x20
mov r13d, dword [0x1400707a8]
mov rsi, rdx
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r13d
mov r12d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r12d
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, qword [rbx + 0x50]
cmp qword [rbx + 0x48], rax
jle 0x140008c7d
mov rax, qword [rbx + 0x40]
cmp qword [rbx + 0x2138], rax
jl 0x140008ca7
cmp qword [rbx + 0x98], 0
jne 0x140008ca7
lea rcx, [rbx + 0x38]
call sym.collectCTBody__system_6506
mov rax, qword [rbx + 0x50]
mov edx, 0x1f4
add rax, rax
cmp rax, rdx
cmovl rax, rdx
mov qword [rbx + 0x48], rax
lea rdx, [rsi + 0x10]
lea rcx, [rbx + 0xa0]
call sym.rawAlloc__system_5138
mov r8, rsi
xor edx, edx
mov qword [rax + 8], rdi
lea r9, [rax + 0x10]
mov qword [rax], 8
mov rcx, r9
call sym.memset
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret
Function at 0x140008d70
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rax, qword [r8 + 0x18]
mov rdi, rcx
mov rsi, rdx
mov rbx, r8
cmp qword [r8 + 0x10], rax
jle 0x140008e08
mov rax, qword [r8 + 8]
cmp qword [r8 + 0x2100], rax
jge 0x140008e08
lea rdx, [rsi + 0x10]
lea rcx, [rbx + 0x68]
call sym.rawAlloc__system_5138
mov qword [rax + 8], rdi
mov rsi, rax
mov qword [rax], 4
mov rax, qword [rbx + 0x18]
mov rdx, qword [rbx + 0x28]
cmp rax, 8
jle 0x140008ed0
lea r8, [rax*8]
lea r9, [rdx + r8 - 8]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
jbe 0x140008e38
and rcx, 0xfffffffffffffffb
mov qword [r10], rcx
mov qword [r9], rsi
lea rax, [rsi + 0x10]
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rbx + 0x60], 0
jne 0x140008da0
mov rcx, rbx
call sym.collectCTBody__system_6506
mov rax, qword [rbx + 0x18]
mov edx, 0x1f4
add rax, rax
cmp rax, rdx
cmovl rax, rdx
mov qword [rbx + 0x10], rax
jmp 0x140008da0
lea r9, [rdx + r8 - 0x10]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140008de6
lea r9, [rdx + r8 - 0x18]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140008de6
lea r9, [rdx + r8 - 0x20]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140008de6
lea r9, [rdx + r8 - 0x28]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140008de6
lea r9, [rdx + r8 - 0x30]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140008de6
lea r9, [rdx + r8 - 0x38]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140008de6
lea rcx, [rdx + r8 - 0x40]
mov r8, qword [rcx]
mov rdx, qword [r8]
cmp rdx, 7
jbe 0x140008ede
and rdx, 0xfffffffffffffffb
mov qword [r8], rdx
mov qword [rcx], rsi
jmp 0x140008df0
mov qword [rdx + rax*8], rsi
add qword [rbx + 0x18], 1
jmp 0x140008df0
mov rdi, qword [rbx + 0x20]
cmp rax, rdi
jl 0x140008f9e
lea rdi, [rdi + rdi*2]
mov ecx, 2
mov r13d, dword [0x1400707a8]
mov r14, qword [sym.imp.KERNEL32.dll_GetLastError]
mov rax, rdi
cqo
idiv rcx
mov rdi, rax
mov qword [rbx + 0x20], rax
call r14
mov ecx, r13d
mov r15, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov r12d, eax
call r15
mov ecx, r12d
mov r13, qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbp, rax
call r13
lea rdx, [rdi*8 + 0x10]
lea rcx, [rbp + 0xa0]
call sym.rawAlloc__system_5138
mov qword [rax + 8], 1
mov rdi, rax
mov r8, qword [rbx + 0x18]
mov rdx, qword [rbx + 0x28]
add rdi, 0x10
shl r8, 3
mov rcx, rdi
call sym.memcpy
mov ebp, dword [0x1400707a8]
mov r12, qword [rbx + 0x28]
call r14
mov r14d, eax
mov ecx, ebp
call r15
mov ecx, r14d
mov rbp, rax
call r13
lea rdx, [r12 - 0x10]
lea rcx, [rbp + 0xa0]
call sym.rawDealloc__system_5267
mov qword [rbx + 0x28], rdi
mov rdx, qword [rbx + 0x18]
mov rax, qword [rbx + 0x28]
mov qword [rax + rdx*8], rsi
add qword [rbx + 0x18], 1
jmp 0x140008df0
Function at 0x140008fc0
Capabilities:
Get thread local storage value

Disassembly:
push r14
push r13
push r12
push rsi
push rbx
sub rsp, 0x20
mov r14d, dword [0x1400707a8]
mov rbx, rdx
mov r12, rcx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r14d
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r13d
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [rsi + 0x38]
mov rdx, rbx
mov rcx, r12
call sym.rawNewObj__system_6299
mov r8, rbx
xor edx, edx
mov rcx, rax
call sym.memset
add rsp, 0x20
pop rbx
pop rsi
pop r12
pop r13
pop r14
ret

Function at 0x1400090a0
Capabilities:
Get thread local storage value

Disassembly:
push r14
push r13
push r12
push rsi
push rbx
sub rsp, 0x30
movaps xmmword [rsp + 0x20], xmm6
mov ebx, 7
mov r12d, dword [0x1400707a8]
cmp rdx, rbx
movq xmm6, rdx
mov rsi, rdx
mov r13, rcx
cmovge rbx, rdx
movq xmm0, rbx
punpcklqdq xmm6, xmm0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r12d
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r14d
mov r12, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rdx, [rbx + 0x11]
lea r8, [r12 + 0x38]
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea r8, [rsi + 1]
mov rdx, r13
movups xmmword [rax], xmm6
lea rcx, [rax + 0x10]
mov r12, rax
call sym.memcpy
nop
movaps xmm6, xmmword [rsp + 0x20]
mov rax, r12
add rsp, 0x30
pop rbx
pop rsi
pop r12
pop r13
pop r14
ret

Function at 0x140009140
Capabilities:
Get thread local storage value

Disassembly:
push r14
push r13
push r12
push rsi
push rbx
sub rsp, 0x20
mov r12, rcx
test rcx, rcx
je 0x1400091cd
cmp qword [rcx + 8], 0
js 0x1400091cd
mov rsi, qword [rcx]
mov eax, 7
mov r14d, dword [0x1400707a8]
cmp rsi, rax
cmovl rsi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r14d
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r13d
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [rbx + 0x38]
lea rdx, [rsi + 0x11]
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea rdx, [r12 + 0x10]
mov rbx, rax
mov qword [rax + 8], rsi
mov qword [rax], 0
mov rax, qword [r12]
lea rcx, [rbx + 0x10]
mov r12, rbx
mov qword [rbx], rax
lea r8, [rax + 1]
call sym.memcpy
mov rax, r12
add rsp, 0x20
pop rbx
pop rsi
pop r12
pop r13
pop r14
ret

Function at 0x1400091e0
Capabilities:
Get thread local storage value

Disassembly:
push r14
push r13
push r12
push rsi
push rbx
sub rsp, 0x30
movaps xmmword [rsp + 0x20], xmm6
xor r12d, r12d
mov r13, rcx
test rcx, rcx
je 0x14000926f
call sym.strlen
mov ebx, 7
mov r12d, dword [0x1400707a8]
cmp rax, rbx
movq xmm6, rax
mov rsi, rax
cmovge rbx, rax
movq xmm0, rbx
punpcklqdq xmm6, xmm0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r12d
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r14d
mov r12, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [r12 + 0x38]
lea rdx, [rbx + 0x11]
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea r8, [rsi + 1]
mov rdx, r13
movups xmmword [rax], xmm6
lea rcx, [rax + 0x10]
mov r12, rax
call sym.memcpy
nop
movaps xmm6, xmmword [rsp + 0x20]
mov rax, r12
add rsp, 0x30
pop rbx
pop rsi
pop r12
pop r13
pop r14
ret
Function at 0x140009290
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
movaps xmmword [rsp + 0x30], xmm6
mov r12, rcx
test rdx, rdx
je 0x140009450
movzx r13d, byte [rdx]
test r13b, r13b
je 0x140009450
mov rbx, qword [rcx]
movdqa xmm6, xmmword [0x14004e350]
lea rbp, [rdx + 1]
jmp 0x1400092e6
add rbp, 1
mov qword [r12], rbx
movzx r13d, byte [rbp - 1]
test r13b, r13b
je 0x140009450
test rbx, rbx
je 0x140009470
mov rdx, qword [rbx + 8]
mov rsi, qword [rbx]
movabs rax, 0x3fffffffffffffff
and rax, rdx
lea r14, [rsi + 1]
cmp rax, rsi
jg 0x1400093a7
test rax, rax
je 0x1400094c0
movabs rcx, 0x3fffffffffff0000
test rdx, rcx
je 0x140009430
lea rax, [rax + rax*2]
sar rax, 1
mov r15, rax
lea rdx, [rax + 0x11]
mov r14, rax
mov esi, dword [0x1400707a8]
mov qword [rsp + 0x28], rdx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, edi
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rdx, qword [rsp + 0x28]
lea r8, [rsi + 0x38]
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea rdx, [rbx + 0x10]
mov qword [rax + 8], r14
mov rdi, rax
lea rcx, [rax + 0x10]
mov qword [rax], 0
mov rsi, qword [rbx]
mov rbx, rdi
mov qword [rax], rsi
lea r14, [rsi + 1]
mov r8, r14
call sym.memcpy
mov qword [rdi + 8], r15
mov byte [rbx + rsi + 0x10], r13b
mov rcx, r12
mov byte [rbx + r14 + 0x10], 0
mov qword [rbx], r14
call sym.isOnStack__system_5894
test al, al
jne 0x1400092d0
add qword [rbx - 0x10], 8
mov rax, qword [r12]
cmp rax, 0xfff
jbe 0x1400092d0
mov rdi, qword [rax - 0x10]
lea r13, [rax - 0x10]
lea rdx, [rdi - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x1400092d0
mov r14d, dword [0x1400707a8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r15d, eax
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r15d
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsi + 0x50]
mov rdx, r13
call sym.addZCT__system_5862
jmp 0x1400092d0
lea r15, [rax + rax]
mov r10d, 7
cmp r15, r10
cmovge r10, r15
mov r14, r10
lea rdx, [r10 + 0x11]
jmp 0x14000933d
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r14d, dword [0x1400707a8]
xor esi, esi
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r15d, eax
mov ecx, r14d
mov r14d, 1
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r15d
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [rbx + 0x38]
mov edx, 0x18
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
mov rbx, rax
movups xmmword [rax], xmm6
jmp 0x1400093a7
mov edx, 0x18
mov r14d, 7
mov r15d, 4
jmp 0x14000933d
Function at 0x1400094e0
Capabilities:
Get thread local storage value

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
movaps xmmword [rsp + 0x20], xmm6
xor edi, edi
test rdx, rdx
mov rsi, rcx
mov rbx, rdx
cmovns rdi, rdx
test rcx, rcx
je 0x140009600
mov rcx, qword [rcx + 8]
mov r12, rsi
movabs rax, 0x3fffffffffffffff
and rax, rcx
cmp rax, rdi
jge 0x1400095dd
mov edx, 4
test rax, rax
je 0x14000954b
movabs r8, 0x3fffffffffff0000
lea rdx, [rax + rax]
test rcx, r8
je 0x14000954b
add rdx, rax
sar rdx, 1
cmp rbx, rdx
mov r13d, 7
mov r12d, dword [0x1400707a8]
cmovge rdx, rbx
cmp rdx, r13
mov rbp, rdx
cmovge r13, rdx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r12d
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r14d
mov r12, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [r12 + 0x38]
lea rdx, [r13 + 0x11]
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea rdx, [rsi + 0x10]
mov r12, rax
mov qword [rax + 8], r13
mov qword [rax], 0
mov rax, qword [rsi]
lea rcx, [r12 + 0x10]
mov qword [r12], rax
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rsi]
xor edx, edx
sub rbx, rax
lea rcx, [r12 + rax + 0x10]
mov r8, rbx
call sym.memset
mov qword [r12 + 8], rbp
mov qword [r12], rdi
mov rax, r12
mov byte [r12 + rdi + 0x10], 0
movaps xmm6, xmmword [rsp + 0x20]
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov edx, 7
movq xmm6, rbx
lea rcx, [0x14004c020]
cmp rbx, rdx
cmovge rdx, rbx
movq xmm0, rdx
add rdx, 0x11
punpcklqdq xmm6, xmm0
call sym.newObj
mov r12, rax
movups xmmword [rax], xmm6
jmp 0x1400095dd
Function at 0x1400098e0
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov r13d, dword [0x1400707a8]
mov rbp, qword [sym.imp.KERNEL32.dll_GetLastError]
mov rsi, rdx
mov rdi, rcx
call rbp
mov ecx, r13d
mov r13, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov r12d, eax
call r13
mov ecx, r12d
mov r12, qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rax
call r12
mov rax, qword [rbx + 0x50]
cmp qword [rbx + 0x48], rax
jle 0x1400099a8
mov rax, qword [rbx + 0x40]
cmp qword [rbx + 0x2138], rax
jge 0x1400099a8
lea rdx, [rsi + 0x10]
lea rcx, [rbx + 0xa0]
call sym.rawAlloc__system_5138
mov qword [rax + 8], rdi
mov rsi, rax
mov qword [rax], 4
mov rax, qword [rbx + 0x50]
mov rdx, qword [rbx + 0x60]
cmp rax, 8
jle 0x140009a80
lea r8, [rax*8]
lea r9, [rdx + r8 - 8]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
jbe 0x1400099e0
and rcx, 0xfffffffffffffffb
mov qword [r10], rcx
mov qword [r9], rsi
lea rax, [rsi + 0x10]
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rbx + 0x98], 0
jne 0x14000993d
lea rcx, [rbx + 0x38]
call sym.collectCTBody__system_6506
mov rax, qword [rbx + 0x50]
mov edx, 0x1f4
add rax, rax
cmp rax, rdx
cmovl rax, rdx
mov qword [rbx + 0x48], rax
jmp 0x14000993d
lea r9, [rdx + r8 - 0x10]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140009986
lea r9, [rdx + r8 - 0x18]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140009986
lea r9, [rdx + r8 - 0x20]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140009986
lea r9, [rdx + r8 - 0x28]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140009986
lea r9, [rdx + r8 - 0x30]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140009986
lea r9, [rdx + r8 - 0x38]
mov r10, qword [r9]
mov rcx, qword [r10]
cmp rcx, 7
ja 0x140009986
lea rcx, [rdx + r8 - 0x40]
mov r8, qword [rcx]
mov rdx, qword [r8]
cmp rdx, 7
jbe 0x140009a8e
and rdx, 0xfffffffffffffffb
mov qword [r8], rdx
mov qword [rcx], rsi
jmp 0x140009990
mov qword [rdx + rax*8], rsi
add qword [rbx + 0x50], 1
jmp 0x140009990
mov rdi, qword [rbx + 0x58]
cmp rax, rdi
jl 0x140009b3c
lea rdi, [rdi + rdi*2]
mov ecx, 2
mov r14d, dword [0x1400707a8]
mov rax, rdi
cqo
idiv rcx
mov rdi, rax
mov qword [rbx + 0x58], rax
call rbp
mov ecx, r14d
mov r15d, eax
call r13
mov ecx, r15d
mov r14, rax
call r12
lea rdx, [rdi*8 + 0x10]
lea rcx, [r14 + 0xa0]
call sym.rawAlloc__system_5138
mov qword [rax + 8], 1
mov rdi, rax
mov r8, qword [rbx + 0x50]
mov rdx, qword [rbx + 0x60]
add rdi, 0x10
shl r8, 3
mov rcx, rdi
call sym.memcpy
mov ecx, dword [0x1400707a8]
mov r14, qword [rbx + 0x60]
mov dword [rsp + 0x2c], ecx
call rbp
mov ecx, dword [rsp + 0x2c]
mov r15d, eax
call r13
mov ecx, r15d
mov rbp, rax
call r12
lea rdx, [r14 - 0x10]
lea rcx, [rbp + 0xa0]
call sym.rawDealloc__system_5267
mov qword [rbx + 0x60], rdi
mov rdx, qword [rbx + 0x50]
mov rax, qword [rbx + 0x60]
mov qword [rax + rdx*8], rsi
add qword [rbx + 0x50], 1
jmp 0x140009990
Function at 0x140009b60
Capabilities:
Get thread local storage value

Disassembly:
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rsi, rcx
test rcx, rcx
je 0x140009c48
mov r8, qword [rcx + 8]
add rdx, qword [rcx]
mov r12, rcx
movabs rax, 0x3fffffffffffffff
and rax, r8
cmp rdx, rax
jle 0x140009c36
mov ecx, 4
test rax, rax
je 0x140009bba
movabs r9, 0x3fffffffffff0000
lea rcx, [rax + rax]
test r8, r9
je 0x140009bba
add rcx, rax
sar rcx, 1
cmp rdx, rcx
mov rbx, rcx
mov edi, 7
mov r12d, dword [0x1400707a8]
cmovge rbx, rdx
cmp rbx, rdi
cmovge rdi, rbx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r12d
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r13d
mov r12, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [r12 + 0x38]
lea rdx, [rdi + 0x11]
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea rdx, [rsi + 0x10]
mov r12, rax
mov qword [rax + 8], rdi
mov qword [rax], 0
mov rax, qword [rsi]
lea rcx, [r12 + 0x10]
mov qword [r12], rax
lea r8, [rax + 1]
call sym.memcpy
mov qword [r12 + 8], rbx
mov rax, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret
mov eax, 7
lea rcx, [0x14004c020]
cmp rdx, rax
cmovge rax, rdx
lea rdx, [rax + 0x11]
mov rbx, rax
call sym.newObjNoInit
mov r12, rax
mov qword [rax + 8], rbx
mov qword [rax], 0
mov rax, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret

Function at 0x140009c90
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rbx, rcx
mov ebp, edx
test rcx, rcx
je 0x140009dd0
mov rdx, qword [rcx + 8]
mov rsi, qword [rcx]
mov r12, rcx
movabs rax, 0x3fffffffffffffff
and rax, rdx
lea r13, [rsi + 1]
cmp rax, rsi
jg 0x140009d68
test rax, rax
je 0x140009db0
movabs rcx, 0x3fffffffffff0000
test rdx, rcx
jne 0x140009d90
lea rdi, [rax + rax]
mov r13d, 7
cmp rdi, r13
cmovge r13, rdi
lea r15, [r13 + 0x11]
mov r14d, dword [0x1400707a8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12d, eax
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, r12d
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [rsi + 0x38]
mov rdx, r15
lea rcx, [0x14004c020]
call sym.rawNewObj__system_6299
lea rdx, [rbx + 0x10]
mov qword [rax + 8], r13
mov r12, rax
lea rcx, [rax + 0x10]
mov qword [rax], 0
mov rsi, qword [rbx]
mov qword [rax], rsi
lea r13, [rsi + 1]
mov r8, r13
call sym.memcpy
mov qword [r12 + 8], rdi
mov rax, r12
mov byte [r12 + rsi + 0x10], bpl
mov byte [r12 + r13 + 0x10], 0
mov qword [r12], r13
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [rax + rax*2]
sar rax, 1
mov rdi, rax
lea r15, [rax + 0x11]
mov r13, rax
jmp 0x140009d03
mov r15d, 0x18
mov r13d, 7
mov edi, 4
jmp 0x140009d03
mov edx, 0x18
lea rcx, [0x14004c020]
mov r13d, 1
xor esi, esi
call sym.newObjNoInit
movdqa xmm0, xmmword [0x14004e350]
mov r12, rax
movups xmmword [rax], xmm0
jmp 0x140009d68