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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x20
mov rbx, qword [0x1400d2a88]
xor ebp, ebp
cmp byte [rbx + 0x5f48], bpl
jne 0x14001fcec
cmp dword [rbx + 0x5f70], ebp
je 0x14001fc37
mov r8d, 0x34fc
lea rdx, str.F:Reposimgui_masterimgui.cpp
lea rcx, str.g.SettingsWindows.empty__
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x14001fce5
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
call fcn.140003f20
mov rdi, rax
test rax, rax
je 0x14001fce5
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x14001fc71
mov rcx, rax
call fcn.14001fe40
mov r8, qword [0x1400d2a88]
test r8, r8
je 0x14001fcdc
movsx rdx, word [r8 + 0x60d0]
lea rcx, [r8 + 0x60d4]
mov r9d, dword [r8 + 0x3f60]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r9d
je 0x14001fcd1
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x60d0], cx
movsx rax, cx
lea rcx, [r8 + 0x60d4]
lea rcx, [rcx + rax*8]
mov dword [rcx], r9d
mov dword [rcx + 4], ebp
inc word [rcx + 6]
inc dword [r8 + 0x60cc]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov byte [rbx + 0x5f48], 1
movss xmm0, dword [rbx + 0x5f4c]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x14001fd89
subss xmm0, dword [rbx + 0x18]
comiss xmm1, xmm0
movss dword [rbx + 0x5f4c], xmm0
jb 0x14001fd89
mov rdi, qword [rbx + 0x20]
mov qword [rsp + 0x38], rsi
test rdi, rdi
je 0x14001fd77
mov rax, qword [0x1400d2a88]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
mov dword [rax + 0x5f4c], ebp
call fcn.1400200c0
lea rdx, [0x14008e23c]
mov rcx, rdi
mov rsi, rax
call fcn.140003d90
mov rdi, rax
test rax, rax
je 0x14001fd7e
mov r8, qword [rsp + 0x30]
mov r9, rax
mov edx, 1
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x14001fd7e
mov byte [rbx + 0xce], 1
mov rsi, qword [rsp + 0x38]
mov dword [rbx + 0x5f4c], ebp
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret

Function at 0x14001fda0
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 8
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10, qword [0x1400d2a88]
mov r11d, 0xffffffff
mov eax, r11d
test r9b, r9b
je 0x14001fe03
mov qword [rsp], rbx
lea rbx, [0x14008ea70]
nop dword [rax]
cmp r9b, 0x23
jne 0x14001fde3
cmp byte [r8], r9b
jne 0x14001fde3
cmp byte [r8 + 1], r9b
cmove eax, r11d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [rbx + rdx*4]
test r9b, r9b
jne 0x14001fdd0
mov rbx, qword [rsp]
movsxd rcx, dword [r10 + 0x5f60]
not eax
mov r8, qword [r10 + 0x5f68]
lea rdx, [rcx + rcx*8]
lea rcx, [r8 + rdx*8]
cmp r8, rcx
je 0x14001fe2f
cmp dword [r8 + 8], eax
je 0x14001fe36
add r8, 0x48
cmp r8, rcx
jne 0x14001fe20
xor eax, eax
add rsp, 8
ret
mov rax, r8
add rsp, 8
ret
Function at 0x140053ce0
Capabilities:
Hash data using fnv

Disassembly:
sub rsp, 0x28
movzx r8d, byte [rdx]
movabs rcx, 0x100000001b3
mov r9, rdx
movabs rax, 0xcbf29ce484222325
xor r8, rax
movzx eax, byte [rdx + 1]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 2]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 3]
mov rdx, qword [0x1400d2190]
imul r8, rcx
xor r8, rax
imul r8, rcx
and rdx, r8
shl rdx, 4
add rdx, qword [0x1400d2178]
mov rax, qword [rdx + 8]
cmp rax, qword [0x1400d2168]
je 0x140053d6b
mov ecx, dword [r9]
mov rdx, qword [rdx]
cmp ecx, dword [rax + 0x10]
je 0x140053d62
cmp rax, rdx
je 0x140053d6b
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x140053d54
add rax, 0x18
add rsp, 0x28
ret
lea rcx, str.invalid_unordered_map_K__T__key
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_]
int3

Function at 0x140053ed0
Capabilities:
Hash data using fnv

Disassembly:
movzx r8d, byte [rdx]
movabs rcx, 0x100000001b3
mov r9, rdx
movabs rax, 0xcbf29ce484222325
xor r8, rax
movzx eax, byte [rdx + 1]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 2]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 3]
mov rdx, qword [0x1400d2190]
imul r8, rcx
xor r8, rax
imul r8, rcx
and rdx, r8
shl rdx, 4
add rdx, qword [0x1400d2178]
mov rax, qword [rdx + 8]
cmp rax, qword [0x1400d2168]
je 0x140053f55
mov ecx, dword [r9]
mov rdx, qword [rdx]
cmp ecx, dword [rax + 0x10]
je 0x140053f57
cmp rax, rdx
je 0x140053f55
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x140053f40
test rax, rax
setne al
ret
xor eax, eax
test rax, rax
setne al
ret
Function at 0x1400548a0
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x1400548d1
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1400d20a8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1400d20b8]
lea rdx, [rdi + rdi]
call fcn.140053d80
mov rax, qword [0x1400d20a8]
lea r9, [rdi - 1]
mov qword [0x1400d20d0], r9
mov qword [0x1400d20d8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x140054a44
mov qword [rsp + 0x38], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x1400d20b8]
mov r9, qword [r11]
cmp r9, rbx
jne 0x140054990
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x140054a05
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x1400549cd
mov r10, qword [rdx]
cmp r10, rax
je 0x1400549c7
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x140054a05
cmp r9, rdx
je 0x1400549e1
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x140054a19
cmp r9, rdx
jne 0x1400549d2
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x140054a3f
mov r9, qword [0x1400d20d0]
jmp 0x140054941
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x140054a05
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140054a50
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x140054a81
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1400d2108]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1400d2118]
lea rdx, [rdi + rdi]
call fcn.140053d80
mov rax, qword [0x1400d2108]
lea r9, [rdi - 1]
mov qword [0x1400d2130], r9
mov qword [0x1400d2138], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x140054bf4
mov qword [rsp + 0x38], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x1400d2118]
mov r9, qword [r11]
cmp r9, rbx
jne 0x140054b40
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x140054bb5
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x140054b7d
mov r10, qword [rdx]
cmp r10, rax
je 0x140054b77
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x140054bb5
cmp r9, rdx
je 0x140054b91
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x140054bc9
cmp r9, rdx
jne 0x140054b82
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x140054bef
mov r9, qword [0x1400d2130]
jmp 0x140054af1
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x140054bb5
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140054c00
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x140054c31
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1400d2168]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1400d2178]
lea rdx, [rdi + rdi]
call fcn.140053d80
mov rax, qword [0x1400d2168]
lea r9, [rdi - 1]
mov qword [0x1400d2190], r9
mov qword [0x1400d2198], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x140054da4
mov qword [rsp + 0x38], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x1400d2178]
mov r9, qword [r11]
cmp r9, rbx
jne 0x140054cf0
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x140054d65
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x140054d2d
mov r10, qword [rdx]
cmp r10, rax
je 0x140054d27
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x140054d65
cmp r9, rdx
je 0x140054d41
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x140054d79
cmp r9, rdx
jne 0x140054d32
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x140054d9f
mov r9, qword [0x1400d2190]
jmp 0x140054ca1
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x140054d65
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x14006947c
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x1400694c6
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x1400694c6
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x1400694c6
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x1400694c6
cmp dword [rcx + 0x84], 0xe
jbe 0x1400694c6
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x1400694c8
xor al, al
add rsp, 0x28
ret
Function at 0x405240
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4052ca
push rbp
mov rbp, rsp
sub rsp, 0x28
test rax, rax
je 0x40528c
mov rdx, qword [rax + 0x18]
nop dword [rax + rax]
test rdx, rdx
je 0x405297
movzx esi, byte [rax + 0x17]
test sil, 0x20
je 0x40527b
cmp rcx, rbx
sete al
add rsp, 0x28
pop rbp
ret
mov rsi, qword [rdx]
mov rax, rbx
mov rbx, rcx
call rsi
add rsp, 0x28
pop rbp
ret
mov eax, 1
add rsp, 0x28
pop rbp
ret
call sym.runtime.rtype.string
mov ecx, 0x1c
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006daea5]
call sym.runtime.concatstring2
call sym.runtime.convTstring
mov rbx, rax
lea rax, [0x0068b540]
call sym.runtime.gopanic
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp sym.runtime.efaceeq

Function at 0x405300
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x40538a
push rbp
mov rbp, rsp
sub rsp, 0x28
test rax, rax
je 0x40534c
mov rax, qword [rax + 8]
mov rdx, qword [rax + 0x18]
nop
test rdx, rdx
je 0x405357
movzx esi, byte [rax + 0x17]
test sil, 0x20
je 0x40533b
cmp rcx, rbx
sete al
add rsp, 0x28
pop rbp
ret
mov rsi, qword [rdx]
mov rax, rbx
mov rbx, rcx
call rsi
add rsp, 0x28
pop rbp
ret
mov eax, 1
add rsp, 0x28
pop rbp
ret
call sym.runtime.rtype.string
mov ecx, 0x1c
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006daea5]
call sym.runtime.concatstring2
call sym.runtime.convTstring
mov rbx, rax
lea rax, [0x0068b540]
call sym.runtime.gopanic
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp sym.runtime.ifaceeq

Function at 0x407b20
Capabilities:
Reference http user-agent string

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x30
mov qword [rsp + 0x40], rax
mov rcx, qword [r14 + 0x30]
mov rdx, r14
nop word [rax + rax]
nop dword [rax]
cmp qword [rcx + 0x90], rdx
jne 0x407bd9
lea rcx, [rsp + 0x40]
cmp qword [rdx], rcx
jae 0x407bc7
cmp qword [rdx + 8], rcx
jb 0x407bc7
movups xmmword [rsp + 8], xmm15
movups xmmword [rsp + 0x18], xmm15
mov qword [rsp + 0x28], 0
lea rax, [sym.runtime.debugCallCheck.func1]
mov qword [rsp + 0x18], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x18]
mov qword [rsp], rax
nop dword [rax + rax]
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
add rsp, 0x30
pop rbp
ret
lea rax, [0x006db791]
mov ebx, 0x1d
add rsp, 0x30
pop rbp
ret
lea rax, [0x006db791]
mov ebx, 0x1d
add rsp, 0x30
pop rbp
ret
Function at 0x40c720
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x40c7d7
push rbp
mov rbp, rsp
sub rsp, 0x20
mov qword [rsp + 0x30], rax
mov rdx, rax
xor ebx, ebx
mov rcx, rbx
mov rax, rdx
call sym.runtime.findObject
test rax, rax
jne 0x40c7c5
mov rax, qword [rsp + 0x30]
mov rcx, rax
shl rax, 0x10
or rax, 0x7ffff
sar rax, 0x13
shl rax, 3
nop
nop
cmp rcx, rax
jne 0x40c773
add rsp, 0x20
pop rbp
ret
call sym.runtime.printlock
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x18], rax
call sym.runtime.printlock
lea rax, [0x006daec1]
mov ebx, 0x1c
call sym.runtime.printstring
mov rax, qword [rsp + 0x18]
nop dword [rax]
call sym.runtime.printhex
call sym.runtime.printnl
call sym.runtime.printunlock
lea rax, [0x006d50e5]
mov ebx, 0x12
nop dword [rax + rax]
call sym.runtime.throw
lea rax, [0x006df911]
mov ebx, 0x24
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
nop dword [rax]
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
jmp sym.runtime.lfnodeValidate

Function at 0x40cc20
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x40cd46
push rbp
mov rbp, rsp
sub rsp, 0x28
mov rcx, qword [r14 + 0x30]
mov rdx, r14
nop dword [rax]
cmp qword [rcx], rdx
jne 0x40cd34
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x18], rdx
mov rax, rcx
call sym.runtime.semacreate
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rcx + 0x30]
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x20]
xor eax, eax
mov rbx, qword [rsp + 0x38]
lock cmpxchg qword [rbx], rdx
sete dl
nop dword [rax]
test dl, dl
je 0x40ccb4
mov rdx, qword [rcx + 0x30]
mov byte [rdx + 0xe5], 1
mov rdx, qword [0x008f4b30]
cmp qword [rdx], 0
nop word [rax + rax]
jne 0x40cd2a
mov rax, 0xffffffffffffffff
call sym.runtime.semasleep
jmp 0x40ccd2
cmp qword [rbx], 1
jne 0x40ccc1
add rsp, 0x28
pop rbp
nop
ret
lea rax, [0x006db7ae]
mov ebx, 0x1d
call sym.runtime.throw
mov rax, qword [rsp + 0x18]
mov rax, qword [rax + 0x30]
mov byte [rax + 0xe5], 0
add rsp, 0x28
pop rbp
ret
mov eax, 0x989680
call sym.runtime.semasleep
mov rcx, qword [0x008f4b30]
mov rcx, qword [rcx]
mov qword [rsp], rcx
mov qword [rsp + 8], 0
call sym.runtime.asmcgocall.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x38]
mov rdx, qword [rbx]
test rdx, rdx
je 0x40cce8
jmp 0x40ccd2
lea rax, [0x006d5782]
mov ebx, 0x13
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
jmp sym.runtime.notesleep
Function at 0x415760
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x415812
push rbp
mov rbp, rsp
sub rsp, 0x30
mov qword [rsp + 0x40], rax
shr rbx, 3
lea rdx, [rbx + 7]
shr rdx, 3
mov qword [rsp + 0x20], rdx
lea rsi, [rdx + 1]
mov qword [rsp + 0x18], rsi
mov ebx, 1
lea rcx, [0x00991850]
mov rax, rsi
call sym.runtime.persistentalloc
mov rcx, qword [rsp + 0x18]
cmp rcx, 0x40000000
ja 0x415807
mov rdx, qword [rsp + 0x20]
cmp rdx, rcx
jae 0x4157ff
mov qword [rsp + 0x28], rax
test byte [rax], al
mov byte [rdx + rax], 0xa1
mov rbx, rax
mov rax, qword [rsp + 0x40]
call sym.runtime.runGCProg
mov rbx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x20]
movzx ecx, byte [rcx + rbx]
cmp cl, 0xa1
jne 0x4157ee
add rsp, 0x30
pop rbp
ret
lea rax, [0x006da566]
mov ebx, 0x1b
call sym.runtime.throw
mov rax, rdx
call sym.runtime.panicIndex
mov edx, 0x40000000
call sym.runtime.panicSliceAlenU
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
nop dword [rax]
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp sym.runtime.progToPointerMask
Function at 0x417f60
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4180eb
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov rcx, qword [sym.imp.kernel32.dll_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call sym.runtime.stdcall3.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x417fc5
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x417fd4
add rsp, 0x48
pop rbp
ret
sub rcx, rbx
add rax, rbx
mov rbx, rcx
test rbx, rbx
jbe 0x417ff3
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x418003
cmp rbx, 0x1000
jae 0x417fcb
jmp 0x41806d
add rsp, 0x48
pop rbp
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x418015
xor edx, edx
jmp 0x418064
mov rcx, qword [sym.imp.kernel32.dll_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call sym.runtime.stdcall3.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
sete al
mov rcx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x38]
mov edx, eax
mov rax, qword [rsp + 0x40]
test dl, dl
jne 0x417ff9
jmp 0x417fe8
call sym.runtime.getlasterror.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call sym.runtime.printlock
lea rax, [0x006d878c]
mov ebx, 0x18
nop dword [rax]
call sym.runtime.printstring
mov rax, qword [rsp + 0x38]
call sym.runtime.printuint
lea rax, [0x006d90df]
mov ebx, 0x19
nop dword [rax + rax]
call sym.runtime.printstring
mov rax, qword [rsp + 0x30]
call sym.runtime.printuint
call sym.runtime.printnl
call sym.runtime.printunlock
lea rax, [0x006ddeaf]
mov ebx, 0x21
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp sym.runtime.sysUnusedOS
Function at 0x418120
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x418346
push rbp
mov rbp, rsp
sub rsp, 0x50
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbx
mov rcx, qword [sym.imp.kernel32.dll_VirtualAlloc]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x1000
mov qword [rsp + 0x20], 4
call sym.runtime.stdcall4.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x418193
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x4181a2
add rsp, 0x50
pop rbp
ret
sub rdx, rbx
add rcx, rbx
mov rbx, rdx
test rbx, rbx
jbe 0x4181c5
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
jmp 0x4181d5
cmp rbx, 0x1000
jae 0x418199
nop
jmp 0x418258
add rsp, 0x50
pop rbp
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
nop word [rax + rax]
cmp rbx, 0x1000
jae 0x4181ed
xor esi, esi
jmp 0x41824a
mov rax, qword [sym.imp.kernel32.dll_VirtualAlloc]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x1000
mov qword [rsp + 0x20], 4
call sym.runtime.stdcall4.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x28], 0
sete al
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x38]
mov esi, eax
mov rax, qword [rsp + 0x68]
test sil, sil
jne 0x4181cb
jmp 0x4181b6
call sym.runtime.getlasterror.abi0
xorps xmm15, xmm15
mov r14, qword [0x0098c2c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x4182e0
nop dword [rax + rax]
call sym.runtime.printlock
lea rax, [0x006d90f8]
mov ebx, 0x19
call sym.runtime.printstring
mov rax, qword [rsp + 0x68]
nop dword [rax + rax]
call sym.runtime.printuint
lea rax, [0x006d90df]
mov ebx, 0x19
call sym.runtime.printstring
mov eax, dword [rsp + 0x34]
call sym.runtime.printuint
nop
call sym.runtime.printnl
call sym.runtime.printunlock
lea rax, [0x006d3246]
mov ebx, 0xd
call sym.runtime.throw
nop dword [rax + rax]
cmp eax, 0x5af
je 0x418280
call sym.runtime.printlock
lea rax, [0x006d90f8]
mov ebx, 0x19
call sym.runtime.printstring
mov rax, qword [rsp + 0x38]
call sym.runtime.printuint
lea rax, [0x006d90df]
mov ebx, 0x19
call sym.runtime.printstring
mov eax, dword [rsp + 0x34]
nop dword [rax]
call sym.runtime.printuint
call sym.runtime.printnl
call sym.runtime.printunlock
lea rax, [0x006dcd1d]
mov ebx, 0x1f
nop dword [rax + rax]
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp sym.runtime.sysUsedOS