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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rbx
and rdx, 0xfffffffffffff000
mov rcx, rax
mov rax, qword [rdx + 8]
mov r9, qword [rdx + 0x10]
cmp rax, 0xfc0
jle 0x1400092a0
lea r8, [r9 + 0x2898]
cmp rcx, r9
lea r10, [rdx + 0x18]
je 0x140009320
mov rax, qword [r8]
mov qword [r10], rax
mov rax, qword [r10]
lock cmpxchg qword [r8], rdx
jne 0x140009318
add rsp, 0x20
pop rbx
ret
lea r8, [rax + 0xf]
test rax, rax
cmovns r8, rax
sar r8, 4
cmp rcx, r9
je 0x1400092e0
lea rcx, [r8*8 + 0x800]
mov rax, qword [r9 + rcx]
mov qword [rbx], rax
mov r8, qword [rdx + 0x10]
mov rax, qword [rbx]
lock cmpxchg qword [r8 + rcx], rbx
je 0x140009299
mov qword [rbx], rax
mov r9, qword [rdx + 0x10]
jmp 0x1400092bc
sub qword [rcx + 0x2888], rax
lea r8, [rcx + r8*8]
mov rcx, qword [r8]
test rcx, rcx
je 0x140009330
cmp rdx, rcx
je 0x140009330
mov rdx, qword [rcx + 0x28]
mov qword [rbx], rdx
add dword [rcx + 0x30], eax
mov qword [rcx + 0x28], rbx
add qword [rcx + 0x38], 1
add rsp, 0x20
pop rbx
ret
mov qword [r10], rax
jmp 0x140009285
add rsp, 0x20
pop rbx
jmp sym.deallocBigChunk__system_u6690
mov rcx, qword [rdx + 0x28]
mov qword [rbx], rcx
movsxd r10, dword [rdx + 0x30]
mov qword [rdx + 0x28], rbx
cmp rax, r10
mov rcx, r10
jg 0x1400093a0
add ecx, eax
cmp ecx, 0xfc0
mov dword [rdx + 0x30], ecx
jne 0x140009299
cmp qword [rdx + 0x38], 0
jne 0x140009299
cmp rdx, qword [r8]
mov rax, qword [rdx + 0x18]
je 0x1400093c0
mov rcx, qword [rdx + 0x20]
test rax, rax
mov qword [rcx + 0x18], rax
je 0x140009381
mov rcx, qword [rdx + 0x20]
mov qword [rax + 0x20], rcx
mov rcx, r9
pxor xmm0, xmm0
mov qword [rdx + 8], 0x1000
movups xmmword [rdx + 0x18], xmm0
add rsp, 0x20
pop rbx
jmp sym.freeBigChunk__system_u6620
mov rcx, qword [r8]
test rcx, rcx
mov qword [rdx + 0x18], rcx
je 0x1400093b0
mov qword [rcx + 0x20], rdx
mov qword [r8], rdx
add dword [rdx + 0x30], eax
jmp 0x140009299
test rax, rax
mov qword [r8], rax
je 0x140009381
mov qword [rax + 0x20], 0
jmp 0x140009381
Function at 0x1400093e0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rbx
and rdx, 0xfffffffffffff000
mov rcx, rax
mov rax, qword [rdx + 8]
mov r9, qword [rdx + 0x10]
cmp rax, 0xfc0
jle 0x140009440
lea r8, [r9 + 0x2898]
cmp rcx, r9
lea r10, [rdx + 0x18]
je 0x1400094c0
mov rax, qword [r8]
mov qword [r10], rax
mov rax, qword [r10]
lock cmpxchg qword [r8], rdx
jne 0x1400094b8
add rsp, 0x20
pop rbx
ret
lea r8, [rax + 0xf]
test rax, rax
cmovns r8, rax
sar r8, 4
cmp rcx, r9
je 0x140009480
lea rcx, [r8*8 + 0x800]
mov rax, qword [r9 + rcx]
mov qword [rbx], rax
mov r8, qword [rdx + 0x10]
mov rax, qword [rbx]
lock cmpxchg qword [r8 + rcx], rbx
je 0x140009439
mov qword [rbx], rax
mov r9, qword [rdx + 0x10]
jmp 0x14000945c
sub qword [rcx + 0x2888], rax
lea r8, [rcx + r8*8]
mov rcx, qword [r8]
test rcx, rcx
je 0x1400094d0
cmp rdx, rcx
je 0x1400094d0
mov rdx, qword [rcx + 0x28]
mov qword [rbx], rdx
add dword [rcx + 0x30], eax
mov qword [rcx + 0x28], rbx
add qword [rcx + 0x38], 1
add rsp, 0x20
pop rbx
ret
mov qword [r10], rax
jmp 0x140009425
add rsp, 0x20
pop rbx
jmp sym.deallocBigChunk__system_u6690
mov rcx, qword [rdx + 0x28]
mov qword [rbx], rcx
movsxd r10, dword [rdx + 0x30]
mov qword [rdx + 0x28], rbx
cmp rax, r10
mov rcx, r10
jg 0x140009540
add ecx, eax
cmp ecx, 0xfc0
mov dword [rdx + 0x30], ecx
jne 0x140009439
cmp qword [rdx + 0x38], 0
jne 0x140009439
cmp rdx, qword [r8]
mov rax, qword [rdx + 0x18]
je 0x140009560
mov rcx, qword [rdx + 0x20]
test rax, rax
mov qword [rcx + 0x18], rax
je 0x140009521
mov rcx, qword [rdx + 0x20]
mov qword [rax + 0x20], rcx
mov rcx, r9
pxor xmm0, xmm0
mov qword [rdx + 8], 0x1000
movups xmmword [rdx + 0x18], xmm0
add rsp, 0x20
pop rbx
jmp sym.freeBigChunk__system_u6620
mov rcx, qword [r8]
test rcx, rcx
mov qword [rdx + 0x18], rcx
je 0x140009550
mov qword [rcx + 0x20], rdx
mov qword [r8], rdx
add dword [rdx + 0x30], eax
jmp 0x140009439
test rax, rax
mov qword [r8], rax
je 0x140009521
mov qword [rax + 0x20], 0
jmp 0x140009521
Function at 0x140009580
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rbx
and rdx, 0xfffffffffffff000
mov rcx, rax
mov rax, qword [rdx + 8]
mov r9, qword [rdx + 0x10]
cmp rax, 0xfc0
jle 0x1400095e0
lea r8, [r9 + 0x2898]
cmp rcx, r9
lea r10, [rdx + 0x18]
je 0x140009660
mov rax, qword [r8]
mov qword [r10], rax
mov rax, qword [r10]
lock cmpxchg qword [r8], rdx
jne 0x140009658
add rsp, 0x20
pop rbx
ret
lea r8, [rax + 0xf]
test rax, rax
cmovns r8, rax
sar r8, 4
cmp rcx, r9
je 0x140009620
lea rcx, [r8*8 + 0x800]
mov rax, qword [r9 + rcx]
mov qword [rbx], rax
mov r8, qword [rdx + 0x10]
mov rax, qword [rbx]
lock cmpxchg qword [r8 + rcx], rbx
je 0x1400095d9
mov qword [rbx], rax
mov r9, qword [rdx + 0x10]
jmp 0x1400095fc
sub qword [rcx + 0x2888], rax
lea r8, [rcx + r8*8]
mov rcx, qword [r8]
test rcx, rcx
je 0x140009670
cmp rdx, rcx
je 0x140009670
mov rdx, qword [rcx + 0x28]
mov qword [rbx], rdx
add dword [rcx + 0x30], eax
mov qword [rcx + 0x28], rbx
add qword [rcx + 0x38], 1
add rsp, 0x20
pop rbx
ret
mov qword [r10], rax
jmp 0x1400095c5
add rsp, 0x20
pop rbx
jmp sym.deallocBigChunk__system_u6690
mov rcx, qword [rdx + 0x28]
mov qword [rbx], rcx
movsxd r10, dword [rdx + 0x30]
mov qword [rdx + 0x28], rbx
cmp rax, r10
mov rcx, r10
jg 0x1400096e0
add ecx, eax
cmp ecx, 0xfc0
mov dword [rdx + 0x30], ecx
jne 0x1400095d9
cmp qword [rdx + 0x38], 0
jne 0x1400095d9
cmp rdx, qword [r8]
mov rax, qword [rdx + 0x18]
je 0x140009700
mov rcx, qword [rdx + 0x20]
test rax, rax
mov qword [rcx + 0x18], rax
je 0x1400096c1
mov rcx, qword [rdx + 0x20]
mov qword [rax + 0x20], rcx
mov rcx, r9
pxor xmm0, xmm0
mov qword [rdx + 8], 0x1000
movups xmmword [rdx + 0x18], xmm0
add rsp, 0x20
pop rbx
jmp sym.freeBigChunk__system_u6620
mov rcx, qword [r8]
test rcx, rcx
mov qword [rdx + 0x18], rcx
je 0x1400096f0
mov qword [rcx + 0x20], rdx
mov qword [r8], rdx
add dword [rdx + 0x30], eax
jmp 0x1400095d9
test rax, rax
mov qword [r8], rax
je 0x1400096c1
mov qword [rax + 0x20], 0
jmp 0x1400096c1

Function at 0x140009720
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rsi, rdx
mov rbx, rcx
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
cmp rsi, 0x10
mov rcx, rax
jle 0x140009748
movzx eax, word [rbx - 2]
sub rbx, rax
mov rdx, rbx
add rsp, 0x28
pop rbx
pop rsi
jmp sym.rawDealloc__system_u7009

Function at 0x140009ae0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, qword [rcx + 8]
test rbx, rbx
je 0x140009af4
test byte [rbx + 7], 0x40
je 0x140009b00
add rsp, 0x20
pop rbx
ret
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rbx
mov rcx, rax
add rsp, 0x20
pop rbx
jmp sym.rawDealloc__system_u7009
Function at 0x14000a1a0
Capabilities:
Terminate process

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
test rdx, rdx
mov rbx, rcx
mov rsi, rdx
jne 0x14000a1e0
lea rdi, [0x14002e380]
sub rbx, 0x10
mov rcx, rdi
call dbg.__emutls_get_address
mov rdx, rbx
mov rcx, rax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sym.rawDealloc__system_u7009
mov rax, rdx
sub rax, 1
jo 0x14000a22c
mov rdx, rax
add rdx, 0x10
jo 0x14000a22c
not rax
and rax, rdx
mov rdi, rax
sub rbx, rdi
lea rdi, [0x14002e380]
mov rcx, rdi
call dbg.__emutls_get_address
cmp rsi, 0x10
mov rcx, rax
jle 0x14000a1bd
movzx eax, word [rbx - 2]
sub rbx, rax
mov rdx, rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sym.rawDealloc__system_u7009
call sym.raiseOverflow
jmp 0x14000a1fb

Function at 0x14000a240
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rax, qword [rcx]
mov rdx, qword [rax]
mov rbx, rcx
test rdx, rdx
je 0x14000a26a
call rdx
lea rcx, [0x14002e360]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x14000a2b8
mov rax, qword [rbx]
movsx rsi, word [rax + 0x10]
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
lea rdx, [rbx - 0x10]
mov rcx, rax
test rsi, rsi
je 0x14000a2a7
lea rdx, [rsi + 0xf]
mov rax, rsi
neg rax
and rax, rdx
sub rbx, rax
cmp rsi, 0x10
jle 0x14000a2a4
movzx eax, word [rbx - 2]
sub rbx, rax
mov rdx, rbx
add rsp, 0x28
pop rbx
pop rsi
jmp sym.rawDealloc__system_u7009
add rsp, 0x28
pop rbx
pop rsi
ret
Function at 0x14000a840
Capabilities:
Terminate process

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
imul rdx, qword [rcx + 8], 3
mov rsi, rcx
jo 0x14000a8eb
mov rax, rdx
shr rax, 0x3f
add rax, rdx
sar rax, 1
imul rbx, rax, 0x10
mov qword [rcx + 8], rax
jo 0x14000a8eb
test rbx, rbx
js 0x14000a918
mov r12, qword [rcx + 0x10]
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
test rbx, rbx
mov rdi, rax
je 0x14000a900
mov rdx, rbx
mov rcx, rax
call sym.rawAlloc__system_u6833
test r12, r12
mov rbp, rax
je 0x14000a8dc
mov rax, r12
mov rdx, r12
mov rcx, rbp
and rax, 0xfffffffffffff000
mov r8, qword [rax + 8]
lea rax, [r8 - 0x30]
cmp r8, 0xfc0
cmovg r8, rax
cmp rbx, r8
cmovle r8, rbx
call sym.memcpy
mov rdx, r12
mov rcx, rdi
call sym.rawDealloc__system_u7009
mov qword [rsi + 0x10], rbp
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseOverflow
test r12, r12
je 0x14000a910
mov rdx, r12
mov rcx, rax
call sym.rawDealloc__system_u7009
xor ebp, ebp
jmp 0x14000a8dc
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseRangeErrorI

Function at 0x14000a940
Capabilities:
Terminate process

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
imul rdx, qword [rcx + 8], 3
mov rsi, rcx
jo 0x14000a9eb
mov rax, rdx
shr rax, 0x3f
add rax, rdx
sar rax, 1
imul rbx, rax, 0x10
mov qword [rcx + 8], rax
jo 0x14000a9eb
test rbx, rbx
js 0x14000aa18
mov r12, qword [rcx + 0x10]
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
test rbx, rbx
mov rdi, rax
je 0x14000aa00
mov rdx, rbx
mov rcx, rax
call sym.rawAlloc__system_u6833
test r12, r12
mov rbp, rax
je 0x14000a9dc
mov rax, r12
mov rdx, r12
mov rcx, rbp
and rax, 0xfffffffffffff000
mov r8, qword [rax + 8]
lea rax, [r8 - 0x30]
cmp r8, 0xfc0
cmovg r8, rax
cmp rbx, r8
cmovle r8, rbx
call sym.memcpy
mov rdx, r12
mov rcx, rdi
call sym.rawDealloc__system_u7009
mov qword [rsi + 0x10], rbp
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseOverflow
test r12, r12
je 0x14000aa10
mov rdx, r12
mov rcx, rax
call sym.rawDealloc__system_u7009
xor ebp, ebp
jmp 0x14000a9dc
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseRangeErrorI
Function at 0x14000abe0
Capabilities:
Terminate process

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, rdx
add rbx, qword [rcx]
mov rsi, rcx
jo 0x14000acb9
mov rbp, qword [rcx + 8]
test rbp, rbp
je 0x14000ac15
mov rax, qword [rbp]
bt rax, 0x3e
jae 0x14000aca0
mov rax, rbx
add rax, 1
jo 0x14000acb9
add rax, 8
mov rdi, rax
jo 0x14000acb9
test rax, rax
js 0x14000adb8
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rdi
mov rcx, rax
call sym.rawAlloc__system_u6833
mov qword [rsi + 8], rax
mov qword [rax], rbx
mov rcx, qword [rsi]
test rcx, rcx
jle 0x14000ade0
cmp rbx, rcx
cmovle rcx, rbx
test rcx, rcx
js 0x14000ae00
mov rax, qword [rsi + 8]
lea rdx, [rbp + 8]
mov r8, rcx
add rax, 8
mov rcx, rax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sym.memcpy
btr rax, 0x3e
cmp rbx, rax
jg 0x14000acd0
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sym.raiseOverflow
test rax, rax
mov edi, 4
jle 0x14000acea
cmp rax, 0x7fff
jg 0x14000ae10
lea rdi, [rax + rax]
cmp rbx, rdi
cmovge rdi, rbx
mov rax, rdi
add rax, 1
jo 0x14000acb9
add rax, 8
mov rbp, rax
jo 0x14000acb9
test rax, rax
js 0x14000ae30
lea rcx, [0x14002e380]
mov r14, qword [rsi + 8]
call dbg.__emutls_get_address
test rbp, rbp
mov r12, rax
je sym.prepareAdd.cold
mov rdx, rbp
mov rcx, rax
call sym.rawAlloc__system_u6833
test r14, r14
mov r13, rax
je 0x14000ad74
mov rax, r14
mov rdx, r14
mov rcx, r13
and rax, 0xfffffffffffff000
mov r8, qword [rax + 8]
lea rax, [r8 - 0x30]
cmp r8, 0xfc0
cmovg r8, rax
cmp rbp, r8
cmovle r8, rbp
call sym.memcpy
mov rdx, r14
mov rcx, r12
call sym.rawDealloc__system_u7009
cmp rbx, rdi
mov qword [rsi + 8], r13
mov qword [r13], rdi
jge 0x14000acaa
sub rdi, rbx
jo 0x14000acb9
test rdi, rdi
js 0x14000adb8
mov rax, qword [rsi + 8]
mov r8, rdi
xor edx, edx
lea rcx, [rax + rbx + 9]
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sym.memset
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rdi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sym.raiseRangeErrorI
test rbp, rbp
jne 0x14000acaa
mov rax, qword [rsi + 8]
mov byte [rax + 8], 0
jmp 0x14000acaa
movabs r8, 0x7fffffffffffffff
xor edx, edx
jmp 0x14000adc7
imul rax, rax, 3
jo 0x14000ae41
mov rdi, rax
shr rdi, 0x3f
add rdi, rax
sar rdi, 1
jmp 0x14000acea
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rax
jmp 0x14000adc7
call sym.raiseOverflow
jmp 0x14000acea
Function at 0x14000aef0
Capabilities:
Terminate process

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
test rdx, rdx
mov rsi, rcx
mov rbx, rdx
je 0x14000afe5
mov rdi, qword [rcx + 8]
test rdi, rdi
je 0x14000af20
mov rax, qword [rdi]
bt rax, 0x3e
jae 0x14000b018
mov rbp, rbx
add rbp, 1
jo 0x14000b088
mov r12, rbp
add r12, 8
jo 0x14000b088
movabs r8, 0x7fffffffffffffff
xor edx, edx
test r12, r12
mov rcx, r12
js 0x14000b004
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, r12
mov rcx, rax
call sym.rawAlloc__system_u6833
mov qword [rsi + 8], rax
mov qword [rax], rbx
mov rcx, qword [rsi]
test rcx, rcx
jle 0x14000b0b0
cmp rcx, rbx
cmovg rcx, rbx
test rcx, rcx
js 0x14000aff8
mov rax, qword [rsi + 8]
lea rdx, [rdi + 8]
mov r8, rcx
add rax, 8
mov rcx, rax
call sym.memcpy
mov rax, qword [rsi]
cmp rax, rbx
jge 0x14000b0d0
mov rcx, rbx
sub rcx, rax
jo 0x14000b088
add rcx, 1
jo 0x14000b088
test rcx, rcx
js 0x14000aff8
mov rdx, qword [rsi + 8]
mov r8, rcx
lea rax, [rdx + rax + 8]
xor edx, edx
mov rcx, rax
call sym.memset
mov rdi, qword [rsi + 8]
mov byte [rdi + rbx + 8], 0
mov qword [rsi], rbx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
movabs r8, 0x7fffffffffffffff
xor edx, edx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseRangeErrorI
cmp qword [rcx], rdx
jge 0x14000afe0
btr rax, 0x3e
cmp rdx, rax
jle 0x14000afe0
test rax, rax
mov edi, 4
jle 0x14000b041
cmp rax, 0x7fff
jg 0x14000b100
lea rdi, [rax + rax]
add rax, 9
js 0x14000b097
cmp rbx, rdi
cmovge rdi, rbx
mov rcx, rdi
add rcx, 1
jo 0x14000b088
add rcx, 8
jo 0x14000b088
test rcx, rcx
js 0x14000aff8
mov r8, rcx
mov rcx, qword [rsi + 8]
mov rdx, rax
call sym.realloc0Impl__system_u1751
mov qword [rsi + 8], rax
mov qword [rax], rdi
mov rdi, qword [rsi + 8]
jmp 0x14000afe0
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseOverflow
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rax
jmp 0x14000b004
test rbp, rbp
js 0x14000b0e8
mov rax, qword [rsi + 8]
mov r8, rbp
xor edx, edx
lea rcx, [rax + 8]
call sym.memset
mov rdi, qword [rsi + 8]
jmp 0x14000afe0
mov rax, qword [rsi + 8]
mov byte [rax + rbx + 8], 0
mov rdi, qword [rsi + 8]
jmp 0x14000afe0
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rbp
jmp 0x14000b004
imul rdx, rax, 3
jo 0x14000b118
mov rdi, rdx
shr rdi, 0x3f
add rdi, rdx
sar rdi, 1
jmp 0x14000b041
mov qword [rsp + 0x28], rax
call sym.raiseOverflow
mov rax, qword [rsp + 0x28]
jmp 0x14000b041

Function at 0x14000c690
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, qword [rcx]
test rbx, rbx
mov qword [rcx], rdx
je 0x14000c6f0
mov rax, qword [rbx - 0x10]
lea rdx, [rbx - 0x10]
cmp rax, 0xf
jbe 0x14000c6d0
sub rax, 0x10
jo 0x14000c6f6
mov r8, qword [rbx]
xor ecx, ecx
mov qword [rbx - 0x10], rax
add rsp, 0x20
pop rbx
jmp sym.rememberCycle__system_u3465
mov r8, qword [rbx]
mov ecx, 1
call sym.rememberCycle__system_u3465
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 0x14000c700
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, qword [rcx]
test rdx, rdx
je 0x14000c71b
mov rax, qword [rdx - 0x10]
add rax, 0x10
jo 0x14000c776
mov qword [rdx - 0x10], rax
test rbx, rbx
mov qword [rcx], rdx
je 0x14000c770
mov rax, qword [rbx - 0x10]
lea rdx, [rbx - 0x10]
cmp rax, 0xf
jbe 0x14000c750
sub rax, 0x10
jo 0x14000c791
mov r8, qword [rbx]
xor ecx, ecx
mov qword [rbx - 0x10], rax
add rsp, 0x30
pop rbx
jmp sym.rememberCycle__system_u3465
mov r8, qword [rbx]
mov ecx, 1
call sym.rememberCycle__system_u3465
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 0x14000c71b
add rsp, 0x30
pop rbx
jmp sym.raiseOverflow

Function at 0x14000d980
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rax, qword [rcx + 8]
test rax, rax
mov rbx, rcx
je 0x14000d9e0
mov rdx, qword [rax - 0x10]
lea rcx, [rax - 0x10]
cmp rdx, 0xf
jbe 0x14000d9c0
sub rdx, 0x10
jo 0x14000d9e6
mov r8, qword [rax]
mov qword [rax - 0x10], rdx
mov rdx, rcx
xor ecx, ecx
add rsp, 0x20
pop rbx
jmp sym.rememberCycle__system_u3465
mov r8, qword [rax]
mov rdx, rcx
mov ecx, 1
call sym.rememberCycle__system_u3465
mov rcx, qword [rbx + 8]
add rsp, 0x20
pop rbx
jmp sym.nimDestroyAndDispose
add rsp, 0x20
pop rbx
ret
add rsp, 0x20
pop rbx
jmp sym.raiseOverflow

Function at 0x14000db90
Capabilities:
Write file on windows

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rdi, rdx
mov rsi, rcx
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rsi
mov r8, rdi
mov edx, 1
mov rbx, rax
mov r9, rax
call sym.fwrite
mov rcx, rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sym.fflush
Function at 0x14000dbd0
Capabilities:
Terminate process
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0x48
mov rax, qword [0x140037110]
test rax, rax
mov rbx, rcx
je 0x14000dc80
test rcx, rcx
je 0x14000dc40
call sym.strlen
lea rsi, [rsp + 0x30]
mov rdx, rbx
mov r8, rax
mov rcx, rsi
call sym.toNimStr
mov rbx, qword [rsp + 0x38]
mov rcx, rsi
call qword [0x140037110]
test rbx, rbx
je 0x14000dc1f
test byte [rbx + 7], 0x40
je 0x14000dc60
lea rcx, [0x14002e360]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x14000dcc0
add rsp, 0x48
pop rbx
pop rsi
ret
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x38], 0
call rax
jmp 0x14000dc1f
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rbx
mov rcx, rax
call sym.rawDealloc__system_u7009
jmp 0x14000dc1f
mov qword [rsp + 0x28], rdx
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [rsp + 0x28]
mov rcx, rbx
mov edx, 1
mov rsi, rax
mov r9, rax
call sym.fwrite
mov rcx, rsi
add rsp, 0x48
pop rbx
pop rsi
jmp sym.fflush
mov byte [rax], 0
lea rcx, [0x14002e2a0]
call dbg.__emutls_get_address
mov rbx, qword [rax]
mov rsi, qword [rbx + 0x38]
test rsi, rsi
je 0x14000dce9
mov rdx, qword [rsi - 0x10]
add rdx, 0x10
jo 0x14000dd33
mov qword [rsi - 0x10], rdx
mov qword [rax], rsi
mov rax, qword [rbx - 0x10]
lea rdx, [rbx - 0x10]
cmp rax, 0xf
jbe 0x14000dd18
sub rax, 0x10
jo 0x14000dd44
mov r8, qword [rbx]
xor ecx, ecx
mov qword [rbx - 0x10], rax
add rsp, 0x48
pop rbx
pop rsi
jmp sym.rememberCycle__system_u3465
mov r8, qword [rbx]
mov ecx, 1
call sym.rememberCycle__system_u3465
mov rcx, rbx
add rsp, 0x48
pop rbx
pop rsi
jmp sym.nimDestroyAndDispose
mov qword [rsp + 0x28], rax
call sym.raiseOverflow
mov rax, qword [rsp + 0x28]
jmp 0x14000dce9
add rsp, 0x48
pop rbx
pop rsi
jmp sym.raiseOverflow

Function at 0x14000dd50
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
lea rbx, str.SIGINT:_Interrupted_by_Ctrl_C._n
cmp ecx, 2
je 0x14000dda0
lea rbx, str.SIGSEGV:_Illegal_storage_access.__Attempt_to_read_from_nil___n
cmp ecx, 0xb
je 0x14000dda0
lea rbx, str.SIGABRT:_Abnormal_termination._n
cmp ecx, 0x16
je 0x14000dda0
lea rbx, str.SIGFPE:_Arithmetic_error._n
cmp ecx, 8
je 0x14000dda0
lea rbx, str.SIGILL:_Illegal_operation._n
cmp ecx, 4
lea rax, str.unknown_signal_n
cmovne rbx, rax
nop word [rax + rax]
mov rcx, rbx
call sym.strlen
mov rcx, rbx
mov rdx, rax
call sym.showErrorMessage__system_u4047
mov ecx, 1
call sym.exit
nop
nop
Function at 0x14000de20
Capabilities:
Terminate process

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rsi, qword [rdx + 8]
mov rdi, qword [rcx + 8]
mov rbp, qword [rdx]
mov rbx, rcx
cmp rdi, rsi
je 0x14000df48
test rsi, rsi
je 0x14000df10
test byte [rsi + 7], 0x40
jne 0x14000df10
test rdi, rdi
je 0x14000de90
movabs rdx, 0x4000000000000000
mov rax, qword [rdi]
test rax, rdx
jne 0x14000de90
btr rax, 0x3e
cmp rax, rbp
jge 0x14000df90
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rdi
mov rcx, rax
call sym.rawDealloc__system_u7009
mov rdi, rbp
add rdi, 1
jo 0x14000df5c
mov r12, rdi
add r12, 8
jo 0x14000df5c
movabs r8, 0x7fffffffffffffff
xor edx, edx
test r12, r12
mov rcx, r12
js 0x14000df7f
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, r12
mov rcx, rax
call sym.rawAlloc__system_u6833
mov qword [rbx + 8], rax
mov qword [rax], rbp
test rdi, rdi
mov qword [rbx], rbp
js 0x14000df70
mov rcx, qword [rbx + 8]
lea rdx, [rsi + 8]
mov r8, rdi
add rcx, 8
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.memcpy
test rdi, rdi
je 0x14000df32
test byte [rdi + 7], 0x40
jne 0x14000df32
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rdi
mov rcx, rax
call sym.rawDealloc__system_u7009
mov qword [rbx], rbp
mov qword [rbx + 8], rsi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
cmp qword [rcx], rbp
jne 0x14000de41
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseOverflow
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rdi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseRangeErrorI
lea rdi, [rbp + 1]
jmp 0x14000dee0

Function at 0x14000e190
Capabilities:
Terminate process

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rax, qword [rcx]
mov rdi, qword [rcx + 8]
add rax, 1
mov rsi, rcx
jo 0x14000e20e
add rax, 8
mov rbx, rax
jo 0x14000e20e
movabs r8, 0x7fffffffffffffff
xor edx, edx
test rax, rax
mov rcx, rax
js 0x14000e22c
lea rcx, [0x14002e380]
call dbg.__emutls_get_address
mov rdx, rbx
mov rcx, rax
call sym.rawAlloc__system_u6833
mov rcx, qword [rsi]
mov qword [rsi + 8], rax
mov qword [rax], rcx
add rcx, 1
jo 0x14000e20e
test rcx, rcx
js 0x14000e220
mov rax, qword [rsi + 8]
lea rdx, [rdi + 8]
mov r8, rcx
add rax, 8
mov rcx, rax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sym.memcpy
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sym.raiseOverflow
movabs r8, 0x7fffffffffffffff
xor edx, edx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sym.raiseRangeErrorI