joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14003b900
Capabilities:
Write file on windows

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rbp, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea rdi, str.____transmit_queue_full__should_be_impossible__n
mov rbx, rcx
mov rsi, rdx
nop dword [rax]
mov rax, qword [rbx + 8]
mov r8d, dword [rax + 0x10]
mov ecx, dword [rax + 0x14]
mov edx, dword [rax + 0x2c]
add edx, r8d
cmp ecx, edx
je 0x14003b970
mov r9d, r8d
lea r10d, [rcx + 1]
and r9d, ecx
mov dword [rax + 0x14], r10d
add r9, 6
mov qword [rax + r9*8], rsi
sfence
lea ecx, [r8 + rcx + 2]
mov dword [rax + 0x18], r10d
sub ecx, edx
cmp dword [rax + 4], ecx
jb 0x14003b970
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov ecx, 2
call rbp
mov rcx, rdi
mov r8d, 0x2f
mov edx, 1
mov r9, rax
call sym.fwrite
mov ecx, 0x3e8
call sym.pixie_usleep
jmp 0x14003b920

Function at 0x14003b9a0
Capabilities:
Write file on windows

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
cmp qword [r9], 0
mov rdi, rcx
mov r13, rdx
mov rbx, r8
mov r14, r9
je 0x14003ba98
mov r12, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea rbp, str.____transmit_queue_full__should_be_impossible__n
jmp 0x14003ba0f
mov r9d, r8d
lea r10d, [rcx + 1]
and r9d, ecx
mov dword [rax + 0x14], r10d
add r9, 6
mov qword [rax + r9*8], rsi
sfence
lea ecx, [r8 + rcx + 2]
mov dword [rax + 0x18], r10d
sub ecx, edx
cmp dword [rax + 4], ecx
jb 0x14003ba68
add qword [rbx], 1
sub qword [r14], 1
je 0x14003ba98
mov rax, qword [rdi + 8]
mov ecx, dword [rax + 0x28]
mov r8d, dword [rax + 0x18]
mov edx, dword [rax + 0x10]
cmp ecx, r8d
je 0x14003ba98
lea r8d, [rcx + 1]
mov dword [rax + 0x28], r8d
lfence
and edx, ecx
mov r9d, 1
mov rcx, r13
add rdx, 6
mov rsi, qword [rax + rdx*8]
mov dword [rax + 0x2c], r8d
mov r8d, dword [rsi]
lea rdx, [rsi + 8]
call dbg.rawsock_send_packet
mov rax, qword [rdi]
mov r8d, dword [rax + 0x10]
mov ecx, dword [rax + 0x14]
mov edx, dword [rax + 0x2c]
add edx, r8d
cmp ecx, edx
jne 0x14003b9d8
mov ecx, 2
call r12
mov rcx, rbp
mov r8d, 0x2f
mov edx, 1
mov r9, rax
call sym.fwrite
mov ecx, 0x2710
call sym.pixie_usleep
jmp 0x14003ba50
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
Function at 0x14003c430
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
add rsp, 0xffffffffffffff80
mov eax, dword [rcx + 0x34]
mov rbx, rcx
mov r12d, edx
cmp eax, edx
je 0x14003c54a
sub edx, eax
cmp edx, 0x186a0
ja 0x14003c508
sub eax, r12d
cmp eax, 0x1869f
jbe 0x14003c5c0
mov rsi, qword [rcx + 0x88]
test rsi, rsi
je 0x14003c47d
cmp byte [rsi + 0x1c], 0
jne 0x14003c645
mov edi, r12d
sub edi, dword [rbx + 0x34]
jmp 0x14003c4a1
mov rcx, rsi
call sym.free
cmp dword [rbx + 0x40], r12d
je 0x14003c5ad
mov rsi, qword [rbx + 0x88]
test rsi, rsi
je 0x14003c5ad
mov r9, qword [rsi + 0x10]
mov ebp, edi
cmp rbp, r9
jb 0x14003c560
cmp byte [rsi + 0x1c], 0
jne 0x14003c473
mov rax, qword [rsi + 0x20]
add dword [rbx + 0x34], r9d
mov edx, 1
mov rcx, rbx
add dword [rbx + 0x40], r9d
lea r8, str.ACKed__u_bytes_n
sub edi, r9d
mov qword [rbx + 0x88], rax
call dbg.LOGtcb
mov eax, dword [rsi + 0x18]
sub eax, 1
cmp eax, 1
ja 0x14003c488
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x14003c488
call sym.free
jmp 0x14003c488
movdqu xmm0, xmmword [rcx + 0x18]
lea rsi, [rsp + 0x50]
lea rdx, [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
mov rax, qword [rcx + 0x28]
mov rcx, rsi
mov qword [rsp + 0x40], rax
call dbg.ipaddress_fmt
mov dword [rsp + 0x20], r12d
mov r9d, dword [rbx + 0x3c]
mov r8, rsi
lea rdx, str._s___tcb:_ackno_from_past:_old_ackno__0x_08x__this_ackno__0x_08x_n
mov ecx, 4
call dbg.LOG
xor eax, eax
sub rsp, 0xffffffffffffff80
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
movzx eax, byte [rsi + 0x1c]
mov r9d, edi
lea r8, str.ACKed__u_bytes__s_n
mov rcx, rbx
mov edx, eax
add eax, edi
add dword [rbx + 0x34], eax
add dword [rbx + 0x40], eax
test dl, dl
lea rax, [0x14007072b]
lea rdx, [0x140070727]
cmovne rax, rdx
mov edx, 1
mov qword [rsp + 0x20], rax
call dbg.LOGtcb
mov eax, dword [rsi + 0x18]
sub eax, 1
cmp eax, 1
jbe 0x14003c604
add qword [rsi + 8], rbp
mov eax, 1
sub rsp, 0xffffffffffffff80
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
movdqu xmm1, xmmword [rcx + 0x18]
lea rsi, [rsp + 0x50]
lea rdx, [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm1
mov rax, qword [rcx + 0x28]
mov rcx, rsi
mov qword [rsp + 0x40], rax
call dbg.ipaddress_fmt
mov dword [rsp + 0x20], r12d
mov r9d, dword [rbx + 0x34]
xor ecx, ecx
mov r8, rsi
lea rdx, str._s___tcb:_ackno_from_future:_my_seqno__0x_08x__their_ackno__0x_08x_n
call dbg.LOG
jmp 0x14003c54a
mov rdi, qword [rsi + 0x10]
sub rdi, rbp
mov rcx, rdi
call sym.malloc
mov rdx, qword [rsi + 8]
mov r8, rdi
mov rcx, rax
mov rbx, rax
add rdx, rbp
call sym.memcpy
mov rcx, qword [rsi + 8]
call sym.free
sub qword [rsi + 0x10], rbp
mov qword [rsi + 8], rbx
mov dword [rsi + 0x18], 1
jmp 0x14003c5ad
mov eax, dword [rsi]
lea edx, [rax + 1]
cmp edx, r12d
je 0x14003c675
cmp eax, r12d
je 0x14003c54a
mov r9, qword [rsi + 0x10]
lea r8, str._____BAD_ACK_of_FIN_____n
mov edx, 1
mov rcx, rbx
call dbg.LOGtcb
jmp 0x14003c54a
lea r8, str.ACKed_FIN_n
mov edx, 1
mov rcx, rbx
call dbg.LOGtcb
add dword [rbx + 0x34], 1
add dword [rbx + 0x40], 1
jmp 0x14003c5ad
Function at 0x14003c6a0
Capabilities:
Check for time delay via queryperformancecounter
Write file on windows

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa0
cmp byte [rdx + 0x10], 0
mov r13, qword [rsp + 0x100]
mov rdi, rcx
mov rbx, rdx
mov ebp, r8d
mov r12, r9
je 0x14003c84a
cmp byte [rdx + 0x28], 0
je 0x14003c84a
test r8b, 0x10
jne 0x14003c7c8
mov rcx, qword [rdi + 0x40]
call dbg.stack_get_packetbuffer
mov rsi, rax
test rax, rax
je 0x14003c7f0
movdqu xmm0, xmmword [rbx + 0x18]
lea r14, [rax + 8]
mov rcx, qword [rdi + 0x38]
xor r8d, r8d
cmp ebp, 2
lea rdx, [rsp + 0x80]
lea r9, [rsp + 0x60]
movaps xmmword [rsp + 0x80], xmm0
mov rax, qword [rbx + 0x28]
sete r8b
mov qword [rsp + 0x90], rax
movdqu xmm1, xmmword [rbx]
movaps xmmword [rsp + 0x60], xmm1
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x58], 0x7f8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x38], ebp
mov qword [rsp + 0x70], rax
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x30], eax
mov eax, dword [rbx + 0x34]
sub eax, r8d
mov dword [rsp + 0x28], eax
movzx eax, word [rbx + 0x30]
mov dword [rsp + 0x20], eax
movzx r8d, word [rbx + 0x32]
call dbg.tcp_create_packet
mov qword [rsi], rax
test byte [rbx + 0x7c], 0x20
jne 0x14003c7b0
mov rcx, qword [rdi + 0x40]
mov rdx, rsi
add rsp, 0xa0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp dbg.stack_transmit_packetbuffer
mov r8d, 0x258
mov rdx, rax
mov rcx, r14
call dbg.tcp_set_window
jmp 0x14003c78a
mov r9d, dword [rdx + 0x38]
lea r8, str.xmit_ACK_ackingthem_u_n
sub r9d, dword [rdx + 0x48]
mov rcx, rbx
xor edx, edx
call dbg.LOGtcb
jmp 0x14003c6e3
mov eax, dword [global_is_warning_printed]
test eax, eax
je 0x14003c830
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call sym.fflush
mov ecx, 0x64
add rsp, 0xa0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sym.pixie_usleep
lea rdx, str.packet_buffers_empty__should_be_impossible__n
xor ecx, ecx
call dbg.LOG
mov dword [global_is_warning_printed], 1
jmp 0x14003c7fa
mov r8d, 0x45c
lea rdx, str.src_stack_tcp_core.c
lea rcx, str.tcb__ip_me.version___0__tcb__ip_them.version___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
nop
nop word cs:[rax + rax]

Function at 0x14003c870
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x38
mov rax, qword [rdx + 0x88]
test rax, rax
je 0x14003c8de
mov r9d, dword [rdx + 0x34]
mov r10d, dword [rax]
movzx r8d, byte [rax + 0x1c]
cmp r9d, r10d
je 0x14003c8c0
test r8b, r8b
lea rax, [0x140070727]
lea r8, [0x14007072b]
mov edx, r9d
cmovne r8, rax
lea rcx, str.SEQNO_FAILURE_diff_d__s_n
sub edx, r10d
add rsp, 0x38
jmp dbg.ERRMSG
mov r10, qword [rax + 0x10]
test r8b, r8b
jne 0x14003c8e8
mov r9, qword [rax + 8]
mov r8d, 0x18
mov qword [rsp + 0x20], r10
call dbg.tcpcon_send_packet
nop
add rsp, 0x38
ret
test r10, r10
je 0x14003c900
mov r9, qword [rax + 8]
mov r8d, 0x19
jmp 0x14003c8d3
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, 0x11
call dbg.tcpcon_send_packet
jmp 0x14003c8de
Function at 0x14003c9e0
Capabilities:
Check for time delay via queryperformancecounter
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
add rsp, 0xffffffffffffff80
mov eax, dword [rsp + 0xe0]
mov r14d, dword [rsp + 0xe8]
mov r13d, dword [rsp + 0xf0]
mov r12d, dword [rsp + 0xf8]
mov rsi, rdx
mov rbp, rcx
mov edx, dword [rdx + 0x38]
mov rbx, r9
test r9, r9
jne 0x14003cab0
test r12b, r12b
je 0x14003cab0
cmp eax, edx
je 0x14003cba9
movzx ecx, byte [rsi + 0x7c]
lea rdi, str.peer_ACK___acknowledge_payload_1_
and ecx, 0xf
call sym.state_to_string
movdqu xmm3, xmmword [rsi + 0x18]
mov ecx, 5
lea r9, str._s_:________s___________________n
movaps xmmword [rsp + 0x40], xmm3
mov rdx, qword [rsi + 0x28]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
movzx r8d, word [rsi + 0x32]
mov qword [rsp + 0x50], rdx
lea rdx, [rsp + 0x40]
call dbg.LOGip
xor r9d, r9d
mov r8d, 0x10
mov rdx, rsi
mov rcx, rbp
mov qword [rsp + 0xe0], 0
sub rsp, 0xffffffffffffff80
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp dbg.tcpcon_send_packet
mov ecx, edx
sub ecx, eax
mov r9d, ecx
cmp rbx, r9
jb 0x14003ca33
cmp eax, edx
je 0x14003cb0b
lea eax, [rcx - 1]
lea rdi, [r8 + rax + 1]
jmp 0x14003caed
add r8, 1
sub rbx, 1
cmp r8, rdi
je 0x14003cb10
test rbx, rbx
jne 0x14003cae0
test byte [rsi + 0x7c], 0x40
je 0x14003ca7e
sub rsp, 0xffffffffffffff80
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov rdi, r8
nop
test byte [rsi + 0x7c], 0x40
jne 0x14003cafc
test rbx, rbx
je 0x14003ca7e
mov r9, rbx
lea r8, str.received__u_bytes_n
mov edx, 2
mov rcx, rsi
call dbg.LOGtcb
movzx eax, r12b
movq xmm1, qword [rsi + 0x38]
mov edx, dword [rsi + 0x80]
add eax, ebx
lea rcx, [rsp + 0x60]
mov r8d, 2
mov qword [rsp + 0x60], rbp
movd xmm2, eax
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x68], rsi
pshufd xmm0, xmm2, 0xe0
mov dword [rsp + 0x70], r14d
paddd xmm1, xmm0
mov dword [rsp + 0x74], r13d
movq qword [rsi + 0x38], xmm1
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
mov r9, qword [rsi + 0xa0]
call dbg.application_event
test r12b, r12b
je 0x14003ca7e
or byte [rsi + 0x7c], 0x40
jmp 0x14003ca7e
add eax, 1
or byte [rsi + 0x7c], 0x40
add dword [rsi + 0x3c], 1
mov dword [rsi + 0x38], eax
jmp 0x14003ca7e
Function at 0x14003e3b0
Capabilities:
Check for time delay via queryperformancecounter
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov r12d, dword [rsp + 0x120]
mov r13d, dword [rsp + 0x128]
mov r15d, dword [rsp + 0x130]
mov r14d, dword [rsp + 0x138]
mov qword [rsp + 0x68], rcx
mov rcx, rdx
mov rsi, rdx
mov rbp, r8
mov rdi, r9
call dbg.stack_get_packetbuffer
mov rbx, rax
test rax, rax
je 0x14003e4b0
movdqu xmm0, xmmword [rbp]
mov rcx, qword [rsp + 0x68]
lea r9, [rsp + 0x70]
mov r8d, r12d
lea rdx, [rsp + 0x90]
movaps xmmword [rsp + 0x90], xmm0
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0xa0], rax
movdqu xmm1, xmmword [rdi]
movaps xmmword [rsp + 0x70], xmm1
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x58], 0x7f8
mov qword [rsp + 0x80], rax
lea rax, [rbx + 8]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x38], 4
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r13d
call dbg.tcp_create_packet
mov rdx, rbx
mov rcx, rsi
mov qword [rbx], rax
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp dbg.stack_transmit_packetbuffer
mov eax, dword [global_is_warning_printed.0]
test eax, eax
je 0x14003e4f0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call sym.fflush
mov ecx, 0x64
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.pixie_usleep
lea rdx, str.packet_buffers_empty__should_be_impossible__n
xor ecx, ecx
call dbg.LOG
mov dword [global_is_warning_printed.0], 1
jmp 0x14003e4ba
Function at 0x140041250
Capabilities:
Read file on windows

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov esi, 0x40
xor edi, edi
xor ebx, ebx
lea rbp, [0x1400713e0]
lea r12, [0x1400713e2]
nop word cs:[rax + rax]
nop dword [rax]
call dbg.pixie_nanotime
xor ecx, ecx
add rbx, rax
call sub.api_ms_win_crt_time_l1_1_0.dll__time64
mov rdx, rbp
mov rcx, r12
shld rdi, rbx, 1
call sym.fopen
add rbx, rbx
test rax, rax
je 0x1400412af
mov rcx, rax
call sym.fclose
sub esi, 1
jne 0x140041280
xor ecx, ecx
call sub.api_ms_win_crt_time_l1_1_0.dll__time64
mov rdx, rbp
lea rcx, str._dev_urandom
xor rbx, rax
call sym.fopen
mov rsi, rax
test rax, rax
je 0x140041327
lea rbp, [rsp + 0x28]
mov r9, rax
mov r8d, 8
mov edx, 1
mov qword [rsp + 0x28], 0
mov rcx, rbp
call sym.fread
xor rbx, qword [rsp + 0x28]
mov rcx, rbp
mov r9, rsi
mov r8d, 8
mov edx, 1
xor rbx, rax
call sym.fread
xor rdi, qword [rsp + 0x28]
mov rcx, rsi
xor rdi, rax
call sym.fclose
call dbg.pixie_nanotime
xor rbx, rdi
xor rax, rbx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
Function at 0x140044730
Capabilities:
Write file on windows

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x450
xor esi, esi
mov ecx, 0x11
mov rax, rsi
lea rbx, [rsp + 0xa0]
mov rdi, rbx
rep stosq qword [rdi], rax
call dbg.templ_tcp_selftest
test eax, eax
jne 0x140044868
lea r10, [rsp + 0x130]
mov rax, rsi
mov ecx, 0x63
mov edx, 0x1122
mov rdi, r10
lea r8, [rsp + 0x60]
lea r9, [rsp + 0x50]
rep stosq qword [rdi], rax
mov qword [rsp + 0x40], rbx
mov ecx, 0x1122
mov eax, 0x5544
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov word [rsp + 0x64], dx
lea rdx, [rsp + 0x70]
mov word [rsp + 0x54], cx
mov rcx, r10
mov word [rsp + 0x74], ax
mov dword [rsp + 0x70], 0x33221100
mov dword [rsp + 0x60], 0x33445566
mov dword [rsp + 0x50], 0x33445566
call dbg.template_packet_init
mov r8d, dword [rsp + 0x198]
xor eax, eax
test r8d, r8d
setne al
xor edx, edx
cmp dword [rsp + 0x1f8], 1
setne dl
xor ebx, ebx
add eax, edx
cmp dword [rsp + 0x2b8], 3
setne bl
add ebx, eax
jne 0x140044830
mov eax, ebx
add rsp, 0x450
pop rbx
pop rsi
pop rdi
ret
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x11
mov edx, 1
lea rcx, str.template:_failed_n
mov r9, rax
call sym.fwrite
mov eax, ebx
add rsp, 0x450
pop rbx
pop rsi
pop rdi
ret
mov ecx, 2
mov ebx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x23
mov edx, 1
lea rcx, str.____templ_tcp_hdr:_selftest_failed_n
mov r9, rax
call sym.fwrite
mov eax, ebx
add rsp, 0x450
pop rbx
pop rsi
pop rdi
ret
Function at 0x140044a10
Capabilities:
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0xb8
mov r8d, 1
lea r9, [rsp + 0x20]
mov rbx, rcx
mov rsi, rdx
call dbg.preprocess_frame
test eax, eax
je 0x140044a3d
cmp dword [rsp + 0xa8], 5
je 0x140044a78
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x20
mov edx, 1
lea rcx, str.____check:_TCP_header_not_found_n
mov r9, rax
call sym.fwrite
mov eax, 1
add rsp, 0xb8
pop rbx
pop rsi
ret
mov eax, dword [rsp + 0x3c]
cmp eax, 4
je 0x140044b60
cmp eax, 6
jne 0x140044b30
mov eax, dword [rsp + 0x90]
movzx edx, byte [rbx + rax + 0xc]
shr dl, 4
lea rcx, [rdx*4]
and ecx, 0x3c
add rcx, rax
add rax, 0x14
cmp rax, rcx
jae 0x140044af7
movzx edx, byte [rbx + rax]
lea r8, [rax + 1]
test edx, edx
je 0x140044af7
cmp edx, 1
je 0x140044b28
cmp rcx, r8
jb 0x140044a62
je 0x140044af7
movzx r10d, byte [rbx + rax + 1]
lea r9, [rax + 2]
cmp r10b, 1
jbe 0x140044a62
mov r8, rcx
sub r8, rax
cmp r8, r10
jb 0x140044a62
lea eax, [r10 - 2]
add rax, r9
cmp rax, rcx
jb 0x140044ab4
cmp dword [rsp + 0xa4], 8
jne 0x140044a62
mov edx, dword [rsp + 0xa0]
movabs rax, 0x6665654264616544
cmp qword [rbx + rdx], rax
setne al
movzx eax, al
jmp 0x140044a67
mov rax, r8
jmp 0x140044aaf
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x10
mov edx, 1
lea rcx, str.____check:_IPv__n
mov r9, rax
call sym.fwrite
jmp 0x140044a62
mov eax, dword [rsp + 0x44]
add eax, 0xe
cmp rsi, rax
je 0x140044a8e
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x19
mov edx, 1
lea rcx, str.____check:_IP_length_bad_n
mov r9, rax
call sym.fwrite
jmp 0x140044a62
Function at 0x140044ba0
Capabilities:
Write file on windows

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
movzx eax, byte [rsp + 0x78]
movsxd rbx, r8d
mov rdi, rdx
mov rsi, rcx
mov rdx, qword [rsp + 0x70]
mov rbp, r9
test bl, 3
jne 0x140044cd8
cmp al, 4
je 0x140044c40
cmp al, 6
je 0x140044c20
lea rcx, [rsi + rbp + 0xc]
movzx eax, byte [rcx]
mov edx, eax
and eax, 0xf
shr dl, 4
lea rdx, [rdx*4]
and edx, 0x3c
add rbx, rdx
shr rbx, 2
shl ebx, 4
or ebx, eax
mov byte [rcx], bl
shr bl, 4
lea r9, [rbx*4]
and r9d, 0x3c
add r9, rbp
cmp rdi, r9
jb 0x140044ca8
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
lea rcx, [rcx + rdx + 4]
lea rdx, [rsi + rdx + 5]
movzx eax, byte [rcx]
movzx r8d, byte [rdx]
shl eax, 8
or eax, r8d
add eax, ebx
mov byte [rcx], ah
mov byte [rdx], al
jmp 0x140044bcf
lea r8, [rcx + rdx + 2]
lea rcx, [rcx + rdx + 3]
movzx edx, byte [r8]
movzx eax, byte [rcx]
shl edx, 8
or edx, eax
add edx, ebx
mov eax, edx
shr eax, 8
mov byte [r8], al
movzx eax, al
mov byte [rcx], dl
shl eax, 8
movzx edx, dl
or eax, edx
add eax, 0xe
cmp rax, rdi
je 0x140044bcf
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x17
mov edx, 1
lea rcx, str.____IP_length_mismatch_n
mov r9, rax
call sym.fwrite
jmp 0x140044bcf
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x19
mov edx, 1
lea rcx, str.____templ.tcp_corruptoin_n
mov r9, rax
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp sym.fwrite
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x2a
mov edx, 1
lea rcx, str.____templ.tcp:_impossible_alignment_error_n
mov r9, rax
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp sym.fwrite
Function at 0x140046c10
Capabilities:
Write file on windows

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x40
movq xmm0, qword [0x1401833a0]
punpcklqdq xmm0, xmm0
mov qword [rsp + 0x68], rdx
mov edx, 8
mov rbx, rcx
mov qword [rsp + 0x70], r8
lea r8, [rsp + 0x30]
mov qword [rsp + 0x78], r9
movaps xmmword [rsp + 0x30], xmm0
call dbg.siphash24
lea rdx, [0x1401813a0]
and eax, 0x3ff
cmp qword [rdx + rax*8], rbx
je 0x140046cb6
lea rdi, [rsp + 0x68]
mov rsi, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov qword [rdx + rax*8], rbx
mov ecx, 2
mov qword [rsp + 0x28], rdi
call rsi
mov r8d, 9
mov edx, 1
lea rcx, str.____ERR:
mov r9, rax
call sym.fwrite
mov ecx, 2
call rsi
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call sym.vfprintf
mov ecx, 2
call rsi
mov rcx, rax
call sym.fflush
nop
add rsp, 0x40
pop rbx
pop rsi
pop rdi
ret

Function at 0x1400471b0
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x20
mov rax, rdx
mov r9, rdx
or rax, r8
shr rax, 0x20
je 0x1400471da
test r8, r8
je 0x1400471f8
mov rax, 0xffffffffffffffff
xor edx, edx
div r8
cmp r9, rax
jae 0x140047204
mov rbx, r9
imul rbx, r8
mov rdx, rbx
call sym.realloc
test rax, rax
je 0x14004722e
add rsp, 0x20
pop rbx
ret
xor edx, edx
add rsp, 0x20
pop rbx
jmp sym.realloc
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x1e
mov edx, 1
lea rcx, str.____alloc_too_large__aborting_n
mov r9, rax
call sym.fwrite
call sym.abort
test rbx, rbx
je 0x1400471ee
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x1c
mov edx, 1
lea rcx, str.____out_of_memory__aborting_n
mov r9, rax
call sym.fwrite
call sym.abort
nop
nop

Function at 0x140047260
Capabilities:
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rax, rcx
mov rsi, rcx
mov rbx, rdx
or rax, rdx
shr rax, 0x20
je 0x14004728e
test rdx, rdx
je 0x1400472a8
mov rax, 0xffffffffffffffff
xor edx, edx
div rbx
cmp rcx, rax
jae 0x1400472b5
mov rdx, rbx
mov rcx, rsi
call sym.calloc
test rax, rax
je 0x1400472df
add rsp, 0x28
pop rbx
pop rsi
ret
xor edx, edx
add rsp, 0x28
pop rbx
pop rsi
jmp sym.calloc
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x1e
mov edx, 1
lea rcx, str.____alloc_too_large__aborting_n
mov r9, rax
call sym.fwrite
call sym.abort
imul rsi, rbx
test rsi, rsi
je 0x14004729e
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x1c
mov edx, 1
lea rcx, str.____out_of_memory__aborting_n
mov r9, rax
call sym.fwrite
call sym.abort
nop
nop word cs:[rax + rax]
nop

Function at 0x140047320
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x28
mov eax, 1
test rcx, rcx
cmove rcx, rax
call sym.malloc
test rax, rax
je 0x14004733f
add rsp, 0x28
ret
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x1c
mov edx, 1
lea rcx, str.____out_of_memory__aborting_n
mov r9, rax
call sym.fwrite
call sym.abort
nop
nop word [rax + rax]