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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], r12
push r13
sub rsp, 0xb0
xor ebx, ebx
mov dword [rsp + 0x20], ebx
lea rcx, [rax - 0x78]
call qword [sym.imp.API_MS_Win_Core_ProcessThreads_L1_1_0.dll_GetStartupInfoW]
nop
mov rax, qword gs:[0x30]
mov rdi, qword [rax + 8]
mov r12d, ebx
xor eax, eax
lock cmpxchg qword [0x100080558], rdi
je 0x1000751b0
cmp rax, rdi
jne 0x1000751a3
mov r12d, 1
jmp 0x1000751b0
mov ecx, 0x3e8
call qword [sym.imp.API_MS_Win_Core_Misc_L1_1_0.dll_Sleep]
jmp 0x100075189
mov eax, dword [0x100080550]
cmp eax, 1
jne 0x1000751c5
lea ecx, [rax + 0x1e]
call sub.msvcrt.dll__amsg_exit
jmp 0x10007522c
mov eax, dword [0x100080550]
cmp eax, ebx
jne 0x100075222
mov dword [0x100080550], 1
lea r13, [0x100001b48]
lea rdi, [0x100001b30]
mov qword [rsp + 0x30], rdi
mov eax, ebx
mov dword [rsp + 0x24], ebx
cmp rdi, r13
jae 0x100075214
cmp eax, ebx
jne 0x100075214
mov rcx, qword [rdi]
cmp rcx, rbx
je 0x100075209
call rcx
mov dword [rsp + 0x24], eax
add rdi, 8
mov qword [rsp + 0x30], rdi
jmp 0x1000751f2
cmp eax, ebx
je 0x10007522c
mov eax, 0xff
jmp 0x100075374
mov dword [0x10007f924], 1
mov eax, dword [0x100080550]
cmp eax, 1
jne 0x100075254
lea rdx, [0x100001b28]
lea rcx, [0x100001ab8]
call sub.msvcrt.dll__initterm
mov dword [0x100080550], 2
cmp r12d, ebx
jne 0x100075263
mov rax, rbx
xchg qword [0x100080558], rax
cmp qword [0x100080570], rbx
je 0x10007528b
lea rcx, [0x100080570]
call fcn.1000756ac
cmp eax, ebx
je 0x10007528b
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
call qword [0x100080570]
mov rcx, qword [sym.imp.msvcrt.dll__wcmdln]
cmp qword [rcx], rbx
jne 0x1000752a1
mov eax, 0xff
jmp 0x100075374
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
mov edx, dword [rsp + 0x20]
cmp word [rcx], 0x20
ja 0x100075326
cmp word [rcx], bx
je 0x1000752bc
cmp edx, ebx
jne 0x100075326
cmp word [rcx], bx
je 0x1000752d2
cmp word [rcx], 0x20
ja 0x1000752d2
add rcx, 2
mov qword [rsp + 0x28], rcx
jmp 0x1000752bc
test byte [rsp + 0x7c], 1
movzx eax, word [rsp + 0x80]
mov r9d, 0xa
cmovne r9d, eax
mov r8, rcx
xor edx, edx
lea rcx, [0x100000000]
call fcn.1000337b8
mov dword [0x10007f920], eax
cmp dword [0x10007f904], ebx
jne 0x100075310
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
cmp dword [0x10007f924], ebx
jne 0x100075324
call qword [sym.imp.msvcrt.dll__cexit]
mov eax, dword [0x10007f920]
jmp 0x100075374
cmp word [rcx], 0x22
jne 0x100075339
mov eax, ebx
cmp edx, ebx
sete al
mov edx, eax
mov dword [rsp + 0x20], eax
add rcx, 2
mov qword [rsp + 0x28], rcx
jmp 0x1000752ad
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov r12, qword [r11 + 0x20]
mov rsp, r11
pop r13
ret
sub rsp, 0x28
call fcn.1001b9000
add rsp, 0x28
jmp 0x100075150
Function at 0x140003f4c
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x28
call fcn.140003b5c
add rsp, 0x28
jmp 0x140003f70
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], r12
push r13
sub rsp, 0xb0
xor ebx, ebx
mov dword [rsp + 0x20], ebx
lea rcx, [rax - 0x78]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
nop
mov rax, qword gs:[0x30]
mov rdi, qword [rax + 8]
mov r12d, ebx
xor eax, eax
lock cmpxchg qword [0x14001d938], rdi
jne 0x140008848
mov eax, dword [0x14001d930]
cmp eax, 1
je 0x140008868
mov eax, dword [0x14001d930]
cmp eax, ebx
jne 0x14000887f
mov dword [0x14001d930], 1
lea r13, [0x140014218]
lea rdi, [0x140014200]
mov qword [rsp + 0x30], rdi
mov eax, ebx
mov dword [rsp + 0x24], ebx
cmp rdi, r13
jae 0x14000401c
cmp eax, ebx
jne 0x14000401c
mov rcx, qword [rdi]
cmp rcx, rbx
je 0x140004011
call rcx
mov dword [rsp + 0x24], eax
add rdi, 8
mov qword [rsp + 0x30], rdi
jmp 0x140003ffa
cmp eax, ebx
jne 0x140008875
mov eax, dword [0x14001d930]
cmp eax, 1
jne 0x14000404c
lea rdx, [0x1400141f8]
lea rcx, [0x1400141c0]
call sub.msvcrt.dll__initterm
mov dword [0x14001d930], 2
cmp r12d, ebx
jne 0x14000405b
mov rax, rbx
xchg qword [0x14001d938], rax
cmp qword [0x14001d950], rbx
jne 0x14000888e
mov rcx, qword [sym.imp.msvcrt.dll__wcmdln]
cmp qword [rcx], rbx
je 0x1400088b7
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
mov edx, dword [rsp + 0x20]
cmp word [rcx], 0x20
jbe 0x14000409f
cmp word [rcx], 0x22
je 0x140008912
add rcx, 2
mov qword [rsp + 0x28], rcx
jmp 0x140004084
cmp word [rcx], bx
jne 0x1400088c1
cmp word [rcx], bx
jne 0x1400088ce
test byte [rsp + 0x7c], 1
movzx eax, word [rsp + 0x80]
mov r9d, 0xa
cmovne r9d, eax
mov r8, rcx
xor edx, edx
lea rcx, [0x140000000]
call fcn.1400040e8
nop
jmp 0x1400088e6
cmp rax, rdi
jne 0x140008858
mov r12d, 1
jmp 0x140003fba
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140003fa9
lea ecx, [rax + 0x1e]
call sub.msvcrt.dll__amsg_exit
jmp 0x140004024
mov eax, 0xff
jmp 0x140008951
mov dword [0x14001db2c], 1
jmp 0x140004024
lea rcx, [0x14001d950]
call fcn.140011e1c
cmp eax, ebx
je 0x140004068
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
call qword [0x14001d950]
nop
jmp 0x140004068
mov eax, 0xff
jmp 0x140008951
cmp edx, ebx
je 0x1400040a8
jmp 0x14000408a
cmp word [rcx], 0x20
ja 0x1400040b1
add rcx, 2
mov qword [rsp + 0x28], rcx
jmp 0x1400040a8
mov dword [0x14001db28], eax
cmp dword [0x14001d30c], ebx
jne 0x1400088fc
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
cmp dword [0x14001db2c], ebx
jne 0x140008910
call qword [sym.imp.msvcrt.dll__cexit]
mov eax, dword [0x14001db28]
jmp 0x140008951
mov eax, ebx
cmp edx, ebx
sete al
mov edx, eax
mov dword [rsp + 0x20], eax
jmp 0x140004094
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov r12, qword [r11 + 0x20]
mov rsp, r11
pop r13
ret
Function at 0x14019f300
Capabilities:
Read file on windows

Disassembly:
sub rsp, 0x28
mov rdx, rcx
test rcx, rcx
jne 0x14019f2dd
call fcn.1401aa5b4
mov dword [rax], 0x16
call fcn.1401997bc
or eax, 0xffffffff
jmp 0x14019f2fa
sub dword [rcx + 0x10], 1
jns 0x14019f2ec
add rsp, 0x28
jmp fcn.1401b7e60
mov rax, qword [rcx]
movzx ecx, byte [rax]
inc rax
mov qword [rdx], rax
mov eax, ecx
add rsp, 0x28
ret
jmp 0x14019f2bc
Function at 0x45ad38
Capabilities:
Hide graphical window

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x88
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rsi, rcx
mov rcx, qword [rcx + 0x110]
test rcx, rcx
je 0x45ad71
mov rdx, qword [rsi + 0x118]
test rdx, rdx
je 0x45ad71
mov rax, qword [rcx]
xor r8d, r8d
call qword [rax + 0x50]
mov dl, 1
mov rcx, rsi
call fcn.0045a4fc
mov edx, 0x198
lea rcx, [rsp + 0x28]
call fcn.00455848
mov r8, qword [rax]
mov ebx, 2
mov edx, ebx
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
mov rcx, qword [rsp + 0x28]
call fcn.004046d0
mov edx, ebx
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rcx, rax
mov edx, 0xf4
lea r9d, [rbx - 1]
mov r8, r9
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, 0x1bc
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov edx, 0x1be
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + 0x68]
lea rcx, [rsp + 0x40]
call fcn.00403838
nop
lea rcx, [rsp + 0x50]
call fcn.00403838
nop
lea rax, [rsp + 0x60]
mov qword [rsp + 0xb0], rax
lea rcx, [rsp + 0x60]
call fcn.00403838
nop
lea rcx, [rsp + 0x70]
call fcn.00403838
nop
lea rbx, [rsi + 0x280]
mov qword [rsp + 0xb0], rbx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
cmp dword [rsi + 0x238], 0
setne bpl
lea rdx, [rsi + 0x240]
lea rcx, [rsp + 0x40]
call fcn.00403a84
lea rdx, [rsi + 0x250]
lea rcx, [rsp + 0x50]
call fcn.00403a84
lea rdx, [rsi + 0x260]
lea rcx, [rsp + 0x60]
call fcn.00403a84
lea rdx, [rsi + 0x270]
lea rcx, [rsp + 0x70]
call fcn.00403a84
nop
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [rsp + 0x58], 0
je 0x45aef4
mov byte [rsi + 0x2ab], 1
cmp dword [rsp + 0x48], 0
jne 0x45aed8
lea rdx, str.7_Zip
lea rcx, [rsp + 0x40]
call fcn.00403b94
mov r9d, InitCommonControls
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x45af36
test bpl, bpl
jne 0x45af3b
mov byte [rsi + 0x2ab], 1
cmp dword [rsp + 0x78], 0
je 0x45af80
cmp dword [rsp + 0x68], 0
jne 0x45af1f
lea rdx, str.7_Zip
lea rcx, [rsp + 0x60]
call fcn.00403b94
xor r9d, r9d
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_MessageBoxW]
test bpl, bpl
je 0x45af80
cmp byte [rsi + 0x1ae], 0
jne 0x45af80
mov byte [rsi + 0x1ad], 1
mov rcx, rsi
call fcn.0045a054
nop
mov rcx, qword [rsp + 0x70]
call fcn.004046d0
mov rcx, qword [rsp + 0x60]
call fcn.004046d0
mov rcx, qword [rsp + 0x50]
call fcn.004046d0
mov rcx, qword [rsp + 0x40]
call fcn.004046d0
mov al, 1
jmp 0x45afb7
xor edx, edx
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_EndDialog]
nop
mov rcx, qword [rsp + 0x70]
call fcn.004046d0
mov rcx, qword [rsp + 0x60]
call fcn.004046d0
mov rcx, qword [rsp + 0x50]
call fcn.004046d0
mov rcx, qword [rsp + 0x40]
call fcn.004046d0
mov al, 1
add rsp, 0x88
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x45dc9c
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
push rdi
sub rsp, 0x28
mov rdi, rcx
mov ecx, reloc.COMCTL32.dll_InitCommonControls
mov rbx, rdx
call qword [sym.imp.USER32.dll_GetKeyState]
movzx ecx, word [rbx + 0x18]
mov r11w, ax
shr r11d, 0xf
and r11b, 1
cmp ecx, 8
je 0x45dcf0
cmp ecx, 0x52
je 0x45dce1
cmp ecx, 0x76
je 0x45dcd7
xor al, al
jmp 0x45dcfa
mov rcx, rdi
call fcn.0045d86c
jmp 0x45dcf8
test r11b, r11b
je 0x45dcd3
mov rcx, rdi
call fcn.0045cb8c
jmp 0x45dcf8
mov rcx, rdi
call fcn.0045cc84
mov al, 1
add rsp, 0x28
pop rdi
pop rbx
ret

Function at 0x45e608
Capabilities:
Get file system object information

Disassembly:
push rbx
sub rsp, 0x2f0
mov rbx, r8
lea r8, [rsp + 0x30]
bts edx, 7
mov r9d, 0x2b8
mov dword [rsp + 0x20], 0x4010
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov ecx, dword [rsp + 0x38]
mov dword [rbx], ecx
add rsp, 0x2f0
pop rbx
ret

Function at 0x45e640
Capabilities:
Get file system object information

Disassembly:
sub rsp, 0x2f8
neg cl
lea r8, [rsp + 0x30]
lea rcx, [0x004754e8]
sbb eax, eax
mov r9d, 0x2b8
mov edx, 0x90
and eax, 0xffffff01
add eax, 0x100
or eax, 0x4010
mov dword [rsp + 0x20], eax
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
add rsp, 0x2f8
ret

Function at 0x471b00
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x30
lea rax, [rsp + 0x40]
mov r9, r8
mov rbx, rcx
mov r8, rdx
mov qword [rsp + 0x28], rax
xor ecx, ecx
xor edx, edx
mov dword [rsp + 0x20], 0
call qword [sym.imp.msvcrt.dll__beginthreadex]
test rax, rax
mov qword [rbx], rax
je 0x471b3b
xor eax, eax
add rsp, 0x30
pop rbx
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 1
test eax, eax
cmovne ecx, eax
mov eax, ecx
add rsp, 0x30
pop rbx
ret

Function at 0x471b60
Capabilities:
Create thread
Resume thread

Disassembly:
sub rsp, 0x48
mov qword [rsp + 0x58], rbx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x60], rsi
mov rsi, r9
mov r9, r8
mov rbx, rcx
mov r8, rdx
mov qword [rsp + 0x28], rax
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x68], rdi
mov dword [rsp + 0x20], 4
call qword [sym.imp.msvcrt.dll__beginthreadex]
test rax, rax
mov qword [rbx], rax
mov rbx, qword [rsp + 0x58]
mov rdi, rax
je 0x471bc5
mov rdx, rsi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ResumeThread]
cmp eax, 0xffffffff
jne 0x471be6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 1
test eax, eax
cmovne ecx, eax
mov eax, ecx
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
add rsp, 0x48
ret
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
xor eax, eax
add rsp, 0x48
ret
Function at 0x4722e0
Capabilities:
Parse pe header

Disassembly:
mov rax, rsp
sub rsp, 0xc8
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rdi
lea rcx, [rax - 0x78]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
nop
cmp word [0x00400000], 0x5a4d
je 0x47231d
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
lea rdi, [0x00400000]
jmp 0x4723ab
movsxd rax, dword [0x0040003c]
lea rdi, [0x00400000]
add rax, rdi
cmp dword [rax], 0x4550
je 0x472341
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x4723ab
movzx ecx, word [rax + 0x18]
cmp ecx, 0x10b
je 0x472388
cmp ecx, 0x20b
je 0x472360
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x4723ab
cmp dword [rax + 0x84], 0xe
ja 0x472374
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x4723ab
xor ebx, ebx
cmp dword [rax + 0xf8], ebx
setne bl
mov dword [rsp + 0xd0], ebx
jmp 0x4723ab
cmp dword [rax + 0x74], 0xe
ja 0x472399
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x4723ab
xor ebx, ebx
cmp dword [rax + 0xe8], ebx
setne bl
mov dword [rsp + 0xd0], ebx
mov ecx, 2
call qword [sym.imp.msvcrt.dll___set_app_type]
mov qword [0x0049f328], 0xffffffffffffffff
mov qword [0x0049f330], 0xffffffffffffffff
mov rcx, qword [sym.imp.msvcrt.dll__fmode]
mov eax, dword [0x0049cd84]
mov dword [rcx], eax
mov rcx, qword [sym.imp.msvcrt.dll__commode]
mov eax, dword [0x0049cd80]
mov dword [rcx], eax
call fcn.00472590
cmp dword [0x0049c720], 0
jne 0x472405
lea rcx, [fcn.00472590]
call qword [sym.imp.msvcrt.dll___setusermatherr]
lea rdx, [0x00474700]
lea rcx, [0x004746f8]
call 0x53f000
mov r11d, dword [0x0049cd7c]
mov dword [rsp + 0xd8], r11d
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
mov r9d, dword [0x0049cd78]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x3c]
call qword [sym.imp.msvcrt.dll___getmainargs]
lea rdx, [0x004746f0]
lea rcx, [0x00474698]
call sub.msvcrt.dll__initterm
mov r11, qword [sym.imp.msvcrt.dll__acmdln]
mov r8, qword [r11]
mov qword [rsp + 0x30], r8
cmp byte [r8], 0x22
jne 0x4724a6
nop
nop
inc r8
mov qword [rsp + 0x30], r8
movzx eax, byte [r8]
test al, al
je 0x472496
cmp al, 0x22
je 0x472496
jmp 0x472480
cmp byte [r8], 0x22
jne 0x4724b6
inc r8
mov qword [rsp + 0x30], r8
jmp 0x4724b6
cmp byte [r8], 0x20
jbe 0x4724b6
inc r8
mov qword [rsp + 0x30], r8
jmp 0x4724a6
movzx eax, byte [r8]
test al, al
je 0x4724cc
cmp al, 0x20
ja 0x4724cc
inc r8
mov qword [rsp + 0x30], r8
jmp 0x4724b6
test byte [rsp + 0x8c], 1
je 0x4724e1
movzx r9d, word [rsp + 0x90]
jmp 0x4724e7
mov r9d, 0xa
xor edx, edx
mov rcx, rdi
call fcn.0046d44c
mov edi, eax
mov dword [rsp + 0x38], eax
test ebx, ebx
jne 0x472503
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
call qword [sym.imp.msvcrt.dll__cexit]
jmp 0x472527
mov eax, edi
jmp 0x472530
mov rbx, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xe8]
add rsp, 0xc8
ret
Function at 0x4132e0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41346b
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 fcn.00432500
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x413345
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x413354
add rsp, 0x48
pop rbp
ret
sub rcx, rbx
add rax, rbx
mov rbx, rcx
test rbx, rbx
jbe 0x413373
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x413383
cmp rbx, 0x1000
jae 0x41334b
jmp 0x4133ed
add rsp, 0x48
pop rbp
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x413395
xor edx, edx
jmp 0x4133e4
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 fcn.00432500
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
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 0x413379
jmp 0x413368
call fcn.0046f280
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call fcn.00436cc0
lea rax, [0x004fb0de]
mov ebx, 0x18
nop dword [rax]
call fcn.00437540
mov rax, qword [rsp + 0x38]
call fcn.00437280
lea rax, [0x004fb69e]
mov ebx, 0x19
nop dword [rax + rax]
call fcn.00437540
mov rax, qword [rsp + 0x30]
call fcn.00437280
call fcn.00436f00
call fcn.00436d20
lea rax, [0x004fe2d7]
mov ebx, 0x21
call fcn.00466580
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0046bb60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.004132e0
Function at 0x4134a0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4136c6
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 fcn.00432580
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x413513
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x413522
add rsp, 0x50
pop rbp
ret
sub rdx, rbx
add rcx, rbx
mov rbx, rdx
test rbx, rbx
jbe 0x413545
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
jmp 0x413555
cmp rbx, 0x1000
jae 0x413519
nop
jmp 0x4135d8
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 0x41356d
xor esi, esi
jmp 0x4135ca
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 fcn.00432580
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
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 0x41354b
jmp 0x413536
call fcn.0046f280
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x413660
nop dword [rax + rax]
call fcn.00436cc0
lea rax, [0x004fb6b7]
mov ebx, 0x19
call fcn.00437540
mov rax, qword [rsp + 0x68]
nop dword [rax + rax]
call fcn.00437280
lea rax, [0x004fb69e]
mov ebx, 0x19
call fcn.00437540
mov eax, dword [rsp + 0x34]
call fcn.00437280
nop
call fcn.00436f00
call fcn.00436d20
lea rax, [0x004f75c8]
mov ebx, 0xd
call fcn.00466580
nop dword [rax + rax]
cmp eax, 0x5af
je 0x413600
call fcn.00436cc0
lea rax, [0x004fb6b7]
mov ebx, 0x19
call fcn.00437540
mov rax, qword [rsp + 0x38]
call fcn.00437280
lea rax, [0x004fb69e]
mov ebx, 0x19
call fcn.00437540
mov eax, dword [rsp + 0x34]
nop dword [rax]
call fcn.00437280
call fcn.00436f00
call fcn.00436d20
lea rax, [0x004fda3d]
mov ebx, 0x1f
nop dword [rax + rax]
call fcn.00466580
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0046bb60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.004134a0
Function at 0x41d700
Capabilities:
Hash data using murmur3

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
cmp byte [0x00615474], 0
jne 0x41d7f0
sub rbx, qword [rax + 0x18]
mov rdx, qword [rax + 0x48]
test byte [rdx], al
mov ecx, dword [rax + 0x5c]
imul rcx, rbx
mov rbx, rcx
shr rbx, 0x20
shr rcx, 0x23
and ebx, 7
mov rsi, rcx
mov rcx, rbx
mov edi, 1
shl edi, cl
add rdx, rsi
nop
nop
nop
nop
lock or byte [rdx], dil
mov rcx, qword [rax + 0x18]
movabs rdx, 0x800000000000
add rdx, rcx
mov rbx, rdx
shr rdx, 0x2a
nop
nop
nop
cmp rdx, 0x40
jae 0x41d7e3
lea rsi, [0x005e7818]
mov rdx, qword [rsi + rdx*8]
test byte [rdx], al
mov rsi, rcx
shr rsi, 0x10
and esi, 0x3f
shr rcx, 0xd
and ecx, 7
mov edi, 1
shl edi, cl
shr rbx, 0x16
and ebx, 0xfffff
mov rdx, qword [rdx + rbx*8]
test byte [rdx], al
movzx ebx, byte [rdx + rsi + 0x1040]
lea rdx, [rdx + rsi]
lea rdx, [rdx + 0x1040]
test dil, bl
jne 0x41d7be
lock or byte [rdx], dil
mov rcx, qword [r14 + 0x30]
mov rcx, qword [rcx + 0xa0]
test byte [rcx], al
mov rdx, qword [rcx + 0x1258]
add rdx, qword [rax + 0x68]
mov qword [rcx + 0x1258], rdx
add rsp, 0x10
pop rbp
ret
mov rax, rdx
mov ecx, 0x40
call fcn.0046de60
lea rax, [0x005008ed]
mov ebx, 0x2c
nop dword [rax]
call fcn.00466580
nop
int3

Function at 0x41fc00
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41fd06
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rcx
mov byte [rsp + 0x70], dil
mov qword [rsp + 0x10], 0
jmp 0x41fc43
mov rax, qword [rsp + 0x58]
mov rcx, rdx
mov rbx, qword [rsp + 0x60]
movzx edi, byte [rsp + 0x70]
cmp qword [rsp + 0x10], rbx
jae 0x41fcfb
test byte [rax], al
lea rcx, [rax + 0x100b8]
mov ebx, edi
mov rax, rcx
nop dword [rax]
call fcn.004209c0
test rax, rax
je 0x41fcfb
movups xmmword [rsp + 0x18], xmm15
movups xmmword [rsp + 0x28], xmm15
movups xmmword [rsp + 0x38], xmm15
lea rcx, [0x0041fd40]
mov qword [rsp + 0x18], rcx
lea rdx, [rsp + 0x10]
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rbx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x40], rax
lea rbx, [rsp + 0x18]
mov qword [rsp], rbx
nop dword [rax]
call fcn.0046ba40
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x68]
nop dword [rax]
test rdx, rdx
jne 0x41fce9
xor eax, eax
jmp 0x41fcf3
mov rax, qword [rdx]
call rax
mov rdx, qword [rsp + 0x68]
test al, al
je 0x41fc31
mov rax, qword [rsp + 0x10]
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov byte [rsp + 0x20], dil
call fcn.0046bb60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movzx edi, byte [rsp + 0x20]
jmp fcn.0041fc00
Function at 0x42d0a0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x42d1f0
push rbp
mov rbp, rsp
sub rsp, 0x50
cmp dword [0x00615afc], 0
je 0x42d1be
mov qword [rax + 0x20], 0
cmp qword [rax + 0x10], 0
jbe 0x42d1e5
mov rdx, qword [rax + 8]
mov qword [rdx], 0xffffffffffffffff
mov edx, dword [0x00615ad0]
test edx, edx
jne 0x42d127
mov rcx, qword [rax + 0x10]
cmp rcx, 1
jbe 0x42d1d6
mov rdx, qword [rax + 8]
lea rbx, [fcn.00442400]
inc rbx
mov qword [rdx + 8], rbx
mov rcx, qword [rax + 0x10]
cmp rcx, 2
jbe 0x42d1cc
mov rax, qword [rax + 8]
mov qword [rax + 0x10], 0
add rsp, 0x50
pop rbp
ret
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x10], 0
lea rcx, [rsp + 0x60]
lea rdx, [0x0042d220]
mov qword [rsp + 0x18], rdx
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], rcx
mov rcx, r14
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x10]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], 3
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x18]
mov qword [rsp], rcx
nop
call fcn.0046ba40
xorps xmm15, xmm15
mov r14, qword [0x006156e0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rcx + 0x10]
cmp rdx, rax
jle 0x42d1b8
jbe 0x42d1c4
mov rcx, qword [rcx + 8]
mov qword [rcx + rax*8], 0
add rsp, 0x50
pop rbp
ret
add rsp, 0x50
pop rbp
ret
mov rcx, rdx
call fcn.0046de40
mov eax, 2
call fcn.0046de40
mov eax, 1
nop dword [rax + rax]
call fcn.0046de40
xor eax, eax
mov rcx, rax
call fcn.0046de40
nop
mov qword [rsp + 8], rax
call fcn.0046bb60
mov rax, qword [rsp + 8]
nop
jmp fcn.0042d0a0