joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140028970
Capabilities:
Terminate process

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov r12, qword [r8]
mov r13, qword [r8 + 8]
mov rbx, rcx
mov rbp, rdx
test r12, r12
jle 0x140028a28
mov rdi, qword [0x140123df0]
movzx r14d, byte [r13 + r12 + 7]
mov rcx, rdi
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x140028a90
cmp r14b, 0x5c
sete sil
cmp r14b, 0x2f
sete al
or esi, eax
xor edx, edx
mov rcx, rbx
call sym.normalizePathEnd__stdZprivateZospaths50_u19
mov rcx, rdi
call dbg.__emutls_get_address
cmp byte [rax], 0
mov rdi, rax
jne 0x140028a90
lea rcx, [rsp + 0x20]
mov r8, rbp
mov rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 0x5c
mov qword [rsp + 0x28], r13
call sym.addNormalizePath__pureZpathnorm_u87
cmp byte [rdi], 0
jne 0x140028a90
movzx edx, sil
mov rcx, rbx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sym.normalizePathEnd__stdZprivateZospaths50_u19
jne 0x140028aa0
mov rdx, qword [rcx]
test rdx, rdx
jle 0x140028aa0
mov rax, qword [rcx + 8]
test rax, rax
je 0x140028a49
test byte [rax + 7], 0x40
je 0x140028a49
call sym.nimPrepareStrMutationImpl__system_u2390
mov rdx, qword [rbx]
mov rcx, rdx
sub rcx, 1
jo 0x140028abd
cmp rdx, rcx
jle 0x140028ab0
test rcx, rcx
js 0x140028ab0
mov rax, qword [rbx + 8]
lea rsi, [rax + rcx + 8]
mov rdi, qword [0x140123df0]
mov rcx, rdi
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x140028a90
movzx eax, byte [rsi]
cmp al, 0x5c
sete sil
cmp al, 0x2f
sete al
or esi, eax
jmp 0x1400289c3
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov rdi, qword [0x140123df0]
xor esi, esi
jmp 0x1400289c3
sub rdx, 1
xor esi, esi
call sym.raiseIndexError2
jmp 0x140028a65
call sym.raiseOverflow
xor esi, esi
jmp 0x140028a65

Function at 0x140029270
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x140029287
test byte [rcx + 7], 0x40
je 0x1400292d0
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x140029296
test byte [rcx + 7], 0x40
je 0x1400292c0
mov rcx, qword [rbx + 0x28]
test rcx, rcx
je 0x1400292a5
test byte [rcx + 7], 0x40
je 0x1400292b0
add rsp, 0x20
pop rbx
ret
add rsp, 0x20
pop rbx
jmp sym.deallocShared
call sym.deallocShared
jmp 0x140029296
call sym.deallocShared
jmp 0x140029287

Function at 0x14002b4f0
Capabilities:
Execute command

Disassembly:
push rbx
sub rsp, 0x20
lea rdx, [0x14010bb60]
mov rax, qword [rcx + 8]
add rax, 8
cmp qword [rcx], 0
cmovne rdx, rax
mov rcx, rdx
call sym.system
mov rcx, qword [0x140123df0]
mov ebx, eax
call dbg.__emutls_get_address
cmp byte [rax], 0
mov eax, 0
cmovne ebx, eax
movsxd rax, ebx
add rsp, 0x20
pop rbx
ret

Function at 0x14002b820
Capabilities:
Terminate process

Disassembly:
mov eax, 0x80000000
add rax, rcx
shr rax, 0x20
jne 0x14002b840
mov rax, qword [0x140123740]
jmp qword [rax]
mov r8d, 0x7fffffff
mov rdx, 0xffffffff80000000
jmp sym.raiseRangeErrorI
Function at 0x14002b860
Capabilities:
Hash data using murmur3

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rsi, rdx
sar rdx, 0x3f
mov rbx, rcx
shr rdx, 0x3e
mov r12, rsi
lea rax, [rsi + rdx]
and eax, 3
sub rax, rdx
sub r12, rax
cmp rsi, 3
jle 0x14002b907
lea rdi, [rsi + 3]
mov rbp, qword [0x140123df0]
xor r13d, r13d
xor r14d, r14d
and rdi, 0xfffffffffffffffc
jmp 0x14002b8d3
imul eax, r15d, 0x1b873593
xor eax, r13d
rol eax, 0xd
lea r13d, [rax + rax*4 - 0x19ab949c]
cmp r14, r12
jge 0x14002b910
cmp r14, rdi
je 0x14002b9e0
mov eax, dword [rbx + r14]
mov rcx, rbp
add r14, 4
imul eax, eax, 0xcc9e2d51
rol eax, 0xf
mov r15d, eax
call dbg.__emutls_get_address
cmp byte [rax], 0
je 0x14002b8b0
xor eax, eax
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r14d, r14d
xor r13d, r13d
nop dword [rax]
mov rdx, rsi
sar rdx, 0x3f
shr rdx, 0x3e
lea rax, [rsi + rdx]
and eax, 3
sub rax, rdx
test rax, rax
jle 0x14002ba02
lea r8, [rax - 1]
lea rcx, [r14 + r8]
cmp rcx, rsi
jge 0x14002b9f4
test rcx, rcx
js 0x14002b9f4
movzx edx, byte [rbx + rcx]
test r8, r8
je 0x14002b98c
sub rax, 2
mov rcx, rax
add rcx, r14
js 0x14002b9f4
cmp rsi, rcx
jle 0x14002b9f4
movzx ecx, byte [rbx + rcx]
shl edx, 8
or edx, ecx
test rax, rax
je 0x14002b98c
test r14, r14
js 0x14002b9f1
cmp r14, rsi
jge 0x14002b9f1
movzx eax, byte [rbx + r14]
shl edx, 8
or edx, eax
imul ebx, edx, 0xcc9e2d51
rol ebx, 0xf
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x14002b8f4
imul eax, ebx, 0x1b873593
xor r13d, esi
xor eax, r13d
mov edx, eax
shr edx, 0x10
xor eax, edx
imul eax, eax, 0x85ebca6b
mov edx, eax
shr edx, 0xd
xor edx, eax
imul edx, edx, 0xc2b2ae35
mov eax, edx
shr eax, 0x10
xor eax, edx
jmp 0x14002b8f6
lea rdx, [rsi - 1]
mov rcx, r14
call sym.raiseIndexError2
jmp 0x14002b8f4
mov rcx, r14
lea rdx, [rsi - 1]
call sym.raiseIndexError2
jmp 0x14002b8f4
xor ebx, ebx
jmp 0x14002b995

Function at 0x14002ba10
Capabilities:
Hash data using murmur3

Disassembly:
sub rsp, 0x28
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
test rdx, rdx
js 0x14002ba38
lea rcx, [rax + 8]
test rax, rax
cmove rcx, rax
add rsp, 0x28
jmp sym.murmurHash__pureZhashes_u194
lea rax, [rdx - 1]
mov r8, rdx
xor ecx, ecx
mov rdx, rax
call sym.raiseIndexError4
xor eax, eax
add rsp, 0x28
ret
Function at 0x14002bbe0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, qword [rcx]
test rdx, rdx
je 0x14002bbfb
mov rax, qword [rdx - 0x10]
add rax, 0x10
jo 0x14002bc56
mov qword [rdx - 0x10], rax
mov qword [rcx], rdx
test rbx, rbx
je 0x14002bc50
mov rax, qword [rbx - 0x10]
lea rdx, [rbx - 0x10]
cmp rax, 0xf
jbe 0x14002bc30
sub rax, 0x10
jo 0x14002bc71
mov r8, qword [rbx]
xor ecx, ecx
mov qword [rbx - 0x10], rax
add rsp, 0x30
pop rbx
jmp sym.rememberCycle__system_u3375
mov r8, qword [rbx]
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, rbx
add rsp, 0x30
pop rbx
jmp sym.nimDestroyAndDispose
add rsp, 0x30
pop rbx
ret
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
call sym.raiseOverflow
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x20]
jmp 0x14002bbfb
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow

Function at 0x14002bc80
Capabilities:
Terminate process

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
xor esi, esi
mov rbp, qword [rcx + 8]
mov rdi, qword [rcx]
lea rbx, [rbp + 0x10]
test rdi, rdi
jg 0x14002bcbc
jmp 0x14002bcea
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14002bcaf
test byte [rcx + 7], 0x40
je 0x14002bcd8
add rsi, 1
add rbx, 0x28
cmp rdi, rsi
je 0x14002bcea
mov rcx, qword [rbx]
test rcx, rcx
je 0x14002bca0
test byte [rcx + 7], 0x40
jne 0x14002bca0
call sym.deallocShared
jmp 0x14002bca0
call sym.deallocShared
add rsi, 1
add rbx, 0x28
cmp rdi, rsi
jne 0x14002bcbc
test rbp, rbp
je 0x14002bcf5
test byte [rbp + 7], 0x40
je 0x14002bd00
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov edx, 8
mov rcx, rbp
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp sym.alignedDealloc

Function at 0x14002bd60
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x14002bd77
test byte [rcx + 7], 0x40
je 0x14002bda0
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14002bd86
test byte [rcx + 7], 0x40
je 0x14002bd90
add rsp, 0x20
pop rbx
ret
add rsp, 0x20
pop rbx
jmp sym.deallocShared
call sym.deallocShared
jmp 0x14002bd77

Function at 0x14002c940
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
test rcx, rcx
je 0x14002c998
mov rax, qword [rcx - 0x10]
lea rdx, [rcx - 0x10]
cmp rax, 0xf
jbe 0x14002c978
sub rax, 0x10
jo 0x14002c99e
mov r8, qword [rcx]
mov qword [rcx - 0x10], rax
xor ecx, ecx
add rsp, 0x20
pop rbx
jmp sym.rememberCycle__system_u3375
mov r8, qword [rcx]
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp sym.nimDestroyAndDispose
add rsp, 0x20
pop rbx
ret
add rsp, 0x20
pop rbx
jmp sym.raiseOverflow

Function at 0x14002ddb0
Capabilities:
Terminate process

Disassembly:
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x14002ddbf
test byte [rcx + 7], 0x40
je 0x14002ddc0
ret
jmp sym.deallocShared
Function at 0x14002e030
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rax, qword [rcx + 8]
mov rbx, rcx
test rax, rax
je 0x14002e06e
mov rdx, qword [rax - 0x10]
lea rcx, [rax - 0x10]
cmp rdx, 0xf
jbe 0x14002e0f0
sub rdx, 0x10
jo 0x14002e126
mov qword [rax - 0x10], rdx
mov r8, qword [rax]
mov rdx, rcx
xor ecx, ecx
call sym.rememberCycle__system_u3375
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x14002e081
test byte [rcx + 7], 0x40
je 0x14002e110
movdqu xmm0, xmmword [rbx + 0x28]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___stdZassertions_u91
mov rax, qword [rbx + 0x38]
test rax, rax
je 0x14002e120
mov rdx, qword [rax - 0x10]
lea rcx, [rax - 0x10]
cmp rdx, 0xf
jbe 0x14002e0d0
sub rdx, 0x10
jo 0x14002e130
mov r8, qword [rax]
mov qword [rax - 0x10], rdx
mov rdx, rcx
xor ecx, ecx
add rsp, 0x30
pop rbx
jmp sym.rememberCycle__system_u3375
mov r8, qword [rax]
mov rdx, rcx
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, qword [rbx + 0x38]
add rsp, 0x30
pop rbx
jmp sym.nimDestroyAndDispose
mov r8, qword [rax]
mov rdx, rcx
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, qword [rbx + 8]
call sym.nimDestroyAndDispose
jmp 0x14002e06e
call sym.deallocShared
jmp 0x14002e081
add rsp, 0x30
pop rbx
ret
call sym.raiseOverflow
jmp 0x14002e06e
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow

Function at 0x14002e140
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
test rcx, rcx
je 0x14002e198
mov rax, qword [rcx - 0x10]
lea rdx, [rcx - 0x10]
cmp rax, 0xf
jbe 0x14002e178
sub rax, 0x10
jo 0x14002e19e
mov r8, qword [rcx]
mov qword [rcx - 0x10], rax
xor ecx, ecx
add rsp, 0x20
pop rbx
jmp sym.rememberCycle__system_u3375
mov r8, qword [rcx]
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp sym.nimDestroyAndDispose
add rsp, 0x20
pop rbx
ret
add rsp, 0x20
pop rbx
jmp sym.raiseOverflow
Function at 0x14002e1b0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rax, qword [rcx + 8]
mov rbx, rcx
test rax, rax
je 0x14002e1ee
mov rdx, qword [rax - 0x10]
lea rcx, [rax - 0x10]
cmp rdx, 0xf
jbe 0x14002e270
sub rdx, 0x10
jo 0x14002e2a6
mov qword [rax - 0x10], rdx
mov r8, qword [rax]
mov rdx, rcx
xor ecx, ecx
call sym.rememberCycle__system_u3375
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x14002e201
test byte [rcx + 7], 0x40
je 0x14002e290
movdqu xmm0, xmmword [rbx + 0x28]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___stdZassertions_u91
mov rax, qword [rbx + 0x38]
test rax, rax
je 0x14002e2a0
mov rdx, qword [rax - 0x10]
lea rcx, [rax - 0x10]
cmp rdx, 0xf
jbe 0x14002e250
sub rdx, 0x10
jo 0x14002e2b0
mov r8, qword [rax]
mov qword [rax - 0x10], rdx
mov rdx, rcx
xor ecx, ecx
add rsp, 0x30
pop rbx
jmp sym.rememberCycle__system_u3375
mov r8, qword [rax]
mov rdx, rcx
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, qword [rbx + 0x38]
add rsp, 0x30
pop rbx
jmp sym.nimDestroyAndDispose
mov r8, qword [rax]
mov rdx, rcx
mov ecx, 1
call sym.rememberCycle__system_u3375
mov rcx, qword [rbx + 8]
call sym.nimDestroyAndDispose
jmp 0x14002e1ee
call sym.deallocShared
jmp 0x14002e201
add rsp, 0x30
pop rbx
ret
call sym.raiseOverflow
jmp 0x14002e1ee
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow
Function at 0x14002eaa0
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
movsxd rax, r8d
mov r12, rcx
mov rbp, rdx
mov r14, rax
add rax, 0x7fffffff
shr rax, 0x20
jne 0x14002ec30
sub r14d, 1
js 0x14002ebfc
xor ebx, ebx
jmp 0x14002eb3e
mov rax, qword [rbp]
cmp rbx, rax
jge 0x14002ec48
mov rcx, qword [rbp + 8]
xor edx, edx
add rcx, rdi
call sym.setLengthStrV2
mov rax, qword [0x1401238e0]
mov edx, ebx
mov rcx, r12
call qword [rax]
mov rdx, rax
test rax, rax
je 0x14002ebec
mov rax, qword [rbp]
cmp rbx, rax
jge 0x14002ec48
add rdi, qword [rbp + 8]
lea esi, [rbx + 1]
add rbx, 1
mov rcx, rdi
call sym.add__system_u3523
cmp r14d, esi
jl 0x14002ebfc
mov rax, qword [0x1401238d0]
mov edx, ebx
mov rcx, r12
mov esi, ebx
call qword [rax]
mov rdx, qword [rbp]
mov r15d, eax
cmp rbx, rdx
jge 0x14002ec10
movsxd r13, eax
test eax, eax
js 0x14002ec50
mov rdi, rbx
mov rcx, qword [rbp + 8]
mov rdx, r13
shl rdi, 4
add rdi, 8
add rcx, rdi
call sym.setLengthStrV2
mov rax, qword [0x1401238f0]
mov edx, ebx
mov rcx, r12
call qword [rax]
cmp eax, 4
jne 0x14002eae0
test r15d, r15d
je 0x14002ebec
mov rax, qword [rbp]
cmp rbx, rax
jge 0x14002ec48
mov rax, qword [rbp + 8]
movsxd rdi, ebx
shl rdi, 4
add rax, rdi
mov rax, qword [rax + 8]
test rax, rax
jle 0x14002ec74
mov rax, qword [0x1401238c0]
mov edx, ebx
mov rcx, r12
call qword [rax]
add rdi, qword [rbp + 8]
mov r8, r13
mov rcx, qword [rdi + 0x10]
mov rdx, rax
add rcx, 8
call sym.memcpy
add esi, 1
add rbx, 1
cmp r14d, esi
jge 0x14002eb3e
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
sub rdx, 1
mov rcx, rbx
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseIndexError2
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseOverflow
lea rdx, [rax - 1]
jmp 0x14002ec14
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, r13
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseRangeErrorI
lea rdx, [rax - 1]
xor ecx, ecx
jmp 0x14002ec17

Function at 0x14002f1d0
Capabilities:
Terminate process

Disassembly:
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x14002f1df
test byte [rcx + 7], 0x40
je 0x14002f1e0
ret
mov edx, 4
jmp sym.alignedDealloc

Function at 0x14002f1f0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
movdqu xmm0, xmmword [rcx + 0x10]
mov rbx, rcx
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___pureZtimes_u2534
mov rcx, qword [rbx + 0x28]
test rcx, rcx
je 0x14002f21b
test byte [rcx + 7], 0x40
je 0x14002f228
add rsp, 0x30
pop rbx
ret
mov edx, 4
add rsp, 0x30
pop rbx
jmp sym.alignedDealloc
Function at 0x14002f240
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rcx
test rcx, rcx
je 0x14002f264
mov rax, qword [rcx - 0x10]
mov rdx, rax
shr rdx, 4
je 0x14002f270
sub rax, 0x10
jo 0x14002f2b4
mov qword [rcx - 0x10], rax
add rsp, 0x30
pop rbx
ret
movdqu xmm0, xmmword [rcx + 0x10]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___pureZtimes_u2534
mov rcx, qword [rbx + 0x28]
test rcx, rcx
je 0x14002f293
test byte [rcx + 7], 0x40
je 0x14002f2a8
mov edx, 8
mov rcx, rbx
add rsp, 0x30
pop rbx
jmp sym.nimRawDispose
mov edx, 4
call sym.alignedDealloc
jmp 0x14002f293
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow

Function at 0x14002f3e0
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
movaps xmmword [rsp + 0x30], xmm6
xor ebx, ebx
lea rbp, str.cw
mov rdi, qword [rcx]
mov rsi, rcx
test rdi, rdi
jle 0x14002f462
movdqa xmm6, xmmword [0x14010c300]
mov r12, qword [0x140123df0]
lea r13, [rsp + 0x20]
jmp 0x14002f42d
cmp rdi, rbx
je 0x14002f462
mov rdx, qword [rsi]
cmp rdx, rbx
jle 0x14002f478
mov rax, qword [rsi + 8]
movzx edx, byte [rax + rbx + 8]
movzx edx, byte [rbp + rdx]
mov byte [rax + rbx + 8], dl
add rbx, 1
cmp rdi, qword [rsi]
je 0x14002f420
mov rcx, r13
movaps xmmword [rsp + 0x20], xmm6
call sym.failedAssertImpl__stdZassertions_u310
mov rcx, r12
call dbg.__emutls_get_address
cmp byte [rax], 0
je 0x14002f420
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
movaps xmm6, xmmword [rsp + 0x30]
sub rdx, 1
mov rcx, rbx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp sym.raiseIndexError2
Function at 0x1400302a0
Capabilities:
Encode data using xor

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov edi, ecx
mov rsi, rdx
mov ebx, ecx
test rdx, rdx
jle 0x140030304
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400302f0
xor ecx, ecx
nop word cs:[rax + rax]
mov eax, ebx
add rcx, 1
add ebx, ebx
sar al, 7
and eax, 0x1b
xor ebx, eax
cmp rsi, rcx
jne 0x1400302d0
mov eax, ebx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov eax, edi
add edi, edi
sar al, 7
and eax, 0x1b
xor eax, edi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov eax, ecx
jmp 0x1400302fc
Function at 0x1400311e0
Capabilities:
Terminate process

Disassembly:
mov rax, qword [rcx + 8]
test rax, rax
je 0x1400311f8
test byte [rax + 7], 0x40
je 0x1400311f8
jmp sym.nimPrepareStrMutationImpl__system_u2390
ret

Function at 0x140031200
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rbx, qword [rdx]
mov rdx, qword [rdx + 8]
mov rsi, rcx
test rbx, rbx
jle 0x140031246
mov rcx, rbx
add rcx, 1
jo 0x14003124d
test rcx, rcx
js 0x140031260
mov r8, qword [rsi + 8]
mov rax, qword [rsi]
add rdx, 8
lea rax, [r8 + rax + 8]
mov r8, rcx
mov rcx, rax
call sym.memcpy
add rbx, qword [rsi]
jo 0x14003124d
mov qword [rsi], rbx
add rsp, 0x28
pop rbx
pop rsi
ret
add rsp, 0x28
pop rbx
pop rsi
jmp sym.raiseOverflow
movabs r8, 0x7fffffffffffffff
xor edx, edx
add rsp, 0x28
pop rbx
pop rsi
jmp sym.raiseRangeErrorI
Function at 0x140033330
Capabilities:
Terminate process

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
xor esi, esi
mov rbp, qword [rcx + 8]
mov rdi, qword [rcx]
lea rbx, [rbp + 0x20]
test rdi, rdi
jg 0x14003336c
jmp 0x14003339a
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14003335f
test byte [rcx + 7], 0x40
je 0x140033388
add rsi, 1
add rbx, 0x30
cmp rdi, rsi
je 0x14003339a
mov rcx, qword [rbx]
test rcx, rcx
je 0x140033350
test byte [rcx + 7], 0x40
jne 0x140033350
call sym.deallocShared
jmp 0x140033350
call sym.deallocShared
add rsi, 1
add rbx, 0x30
cmp rdi, rsi
jne 0x14003336c
test rbp, rbp
je 0x1400333a5
test byte [rbp + 7], 0x40
je 0x1400333b0
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov edx, 8
mov rcx, rbp
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp sym.alignedDealloc

Function at 0x1400333f0
Capabilities:
Terminate process

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rdi, qword [0x140123df0]
xor r13d, r13d
mov r12, qword [rcx + 8]
mov rsi, qword [rcx]
lea rbx, [r12 + 0x28]
lea rbp, [rsp + 0x20]
test rsi, rsi
jg 0x14003343b
jmp 0x140033497
sub rdx, 0x10
jo 0x1400334d9
mov qword [rax - 0x10], rdx
add r13, 1
add rbx, 0x28
cmp rsi, r13
je 0x140033497
mov rcx, qword [rbx - 8]
test rcx, rcx
je 0x14003344a
test byte [rcx + 7], 0x40
je 0x1400334b8
mov rax, qword [rbx]
test rax, rax
je 0x14003342e
mov rdx, qword [rax - 0x10]
mov rcx, rdx
shr rcx, 4
jne 0x140033420
movdqu xmm0, xmmword [rax]
mov rcx, rbp
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___pureZmimetypes_u194
mov rcx, rdi
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400334a4
mov rcx, qword [rbx]
mov edx, 8
add r13, 1
add rbx, 0x28
call sym.nimRawDispose
cmp rsi, r13
jne 0x14003343b
test r12, r12
je 0x1400334a4
test byte [r12 + 7], 0x40
je 0x1400334c0
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
call sym.deallocShared
jmp 0x14003344a
mov edx, 8
mov rcx, r12
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp sym.alignedDealloc
call sym.raiseOverflow
jmp 0x14003342e

Function at 0x140033590
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rcx
test rcx, rcx
je 0x1400335b4
mov rax, qword [rcx - 0x10]
mov rdx, rax
shr rdx, 4
je 0x1400335c0
sub rax, 0x10
jo 0x1400335f6
mov qword [rcx - 0x10], rax
add rsp, 0x30
pop rbx
ret
movdqu xmm0, xmmword [rcx]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___pureZparsecfg_u663
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400335b4
mov edx, 8
mov rcx, rbx
add rsp, 0x30
pop rbx
jmp sym.nimRawDispose
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow
Function at 0x140033670
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rcx
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x140033687
test byte [rcx + 7], 0x40
je 0x1400336f0
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x1400336a7
mov rdx, qword [rax - 0x10]
mov rcx, rdx
shr rcx, 4
je 0x1400336b0
sub rdx, 0x10
jo 0x1400336f7
mov qword [rax - 0x10], rdx
add rsp, 0x30
pop rbx
ret
movdqu xmm0, xmmword [rax]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___pureZmimetypes_u194
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400336a7
mov rcx, qword [rbx + 0x20]
mov edx, 8
add rsp, 0x30
pop rbx
jmp sym.nimRawDispose
call sym.deallocShared
jmp 0x140033687
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow

Function at 0x1400337f0
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
pxor xmm0, xmm0
movabs r8, 0x7fffffffffffffff
mov qword [rdx + 0x20], 0
mov rbx, rdx
movups xmmword [rdx], xmm0
movups xmmword [rdx + 0x10], xmm0
xor edx, edx
test rcx, rcx
js 0x140033887
imul rcx, rcx, 3
jo 0x140033892
mov rax, rcx
shr rax, 0x3f
add rcx, rax
sar rcx, 1
add rcx, 4
call sym.nextPowerOfTwo__pureZmath_u222
mov rcx, qword [0x140123df0]
mov rsi, rax
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x14003386d
mov qword [rbx + 0x10], 0
test rsi, rsi
js 0x140033878
mov rdx, rsi
mov rcx, rbx
call sym.newSeq__pureZparsecfg_u494
pcmpeqd xmm0, xmm0
movups xmmword [rbx + 0x18], xmm0
add rsp, 0x28
pop rbx
pop rsi
ret
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rsi
add rsp, 0x28
pop rbx
pop rsi
jmp sym.raiseRangeErrorI
call sym.raiseOverflow
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x14003386d
mov qword [rbx + 0x10], 0
xor esi, esi
jmp 0x14003385a

Function at 0x140033a30
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rcx
test rcx, rcx
je 0x140033a54
mov rax, qword [rcx - 0x10]
mov rdx, rax
shr rdx, 4
je 0x140033a60
sub rax, 0x10
jo 0x140033a96
mov qword [rcx - 0x10], rax
add rsp, 0x30
pop rbx
ret
movdqu xmm0, xmmword [rcx]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
call sym.eqdestroy___pureZmimetypes_u194
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x140033a54
mov edx, 8
mov rcx, rbx
add rsp, 0x30
pop rbx
jmp sym.nimRawDispose
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow

Function at 0x140033b10
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x140033b27
test byte [rcx + 7], 0x40
je 0x140033b50
mov rcx, qword [rbx + 0x28]
test rcx, rcx
je 0x140033b36
test byte [rcx + 7], 0x40
je 0x140033b40
add rsp, 0x20
pop rbx
ret
add rsp, 0x20
pop rbx
jmp sym.deallocShared
call sym.deallocShared
jmp 0x140033b27
Function at 0x140033c20
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
pxor xmm0, xmm0
movabs r8, 0x7fffffffffffffff
mov qword [rdx + 0x20], 0
mov rbx, rdx
movups xmmword [rdx], xmm0
movups xmmword [rdx + 0x10], xmm0
xor edx, edx
test rcx, rcx
js 0x140033cb7
imul rcx, rcx, 3
jo 0x140033cc2
mov rax, rcx
shr rax, 0x3f
add rcx, rax
sar rcx, 1
add rcx, 4
call sym.nextPowerOfTwo__pureZmath_u222
mov rcx, qword [0x140123df0]
mov rsi, rax
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x140033c9d
mov qword [rbx + 0x10], 0
test rsi, rsi
js 0x140033ca8
mov rdx, rsi
mov rcx, rbx
call sym.newSeq__pureZmimetypes_u30
pcmpeqd xmm0, xmm0
movups xmmword [rbx + 0x18], xmm0
add rsp, 0x28
pop rbx
pop rsi
ret
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rsi
add rsp, 0x28
pop rbx
pop rsi
jmp sym.raiseRangeErrorI
call sym.raiseOverflow
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x140033c9d
mov qword [rbx + 0x10], 0
xor esi, esi
jmp 0x140033c8a