joyce8/EMBER2024-capa huggingface dataset:
Function at 0x46fd33
Capabilities:
Connect pipe
Create pipe

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x14
mov ebx, edx
mov esi, ecx
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 0x10], eax
lea eax, [ecx + 0x10]
mov dword [esp], eax
xor ebp, ebp
test bl, 1
jne 0x46fd7e
push dword [esp]
push dword [esi + 0xc]
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
jne 0x46fd80
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x46fd80
mov edi, eax
cmp eax, 0x217
je 0x46fd80
jmp 0x46fe4f
xor ebx, ebx
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x28]
mov dword [esp + 4], edi
mov ecx, dword [eax]
mov edx, dword [esp + 4]
push edx
push 0x46fedc
push eax
call dword [ecx + 0x10]
add esp, 0xc
test eax, eax
je 0x46fda8
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esp + 4], 0xc
mov eax, dword [esi]
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov eax, dword [esi + 8]
sub esp, 0x20
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], ebp
movaps xmm0, xmmword [0x4a1d60]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x14], 0x1000
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov dword [esi + 0xc], eax
cmp eax, 0xffffffff
jne 0x46fd51
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
push edi
call fcn.0046cf7c
add esp, 4
push eax
push str.Error_while_listening_to_named_pipe:__s
call fcn.0045ad89
add esp, 8
mov ebx, eax
push dword [esi + 8]
call fcn.0046df6f
add esp, 4
mov ecx, dword [esi + 0x28]
mov edx, dword [ecx]
push edi
push ebx
push 0
push eax
push 1
push ecx
call dword [edx]
add esp, 0x18
push ebx
call fcn.00411739
add esp, 4
mov ecx, dword [esp + 0x10]
xor ecx, esp
call fcn.00475893
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
cmp edi, 0x3e5
jne 0x46fdfd
jmp 0x46fe3c
Function at 0x470671
Capabilities:
Link many functions at runtime

Disassembly:
push edi
push esi
cmp byte [0x4c4428], 0
jne 0x47073c
push str.winspool.drv
call fcn.0046cde0
add esp, 4
mov esi, eax
push str.spoolss.dll
call fcn.0046cde0
add esp, 4
test esi, esi
je 0x47070b
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.EnumPrintersA
push esi
call edi
mov dword [0x4c4424], eax
push str.OpenPrinterA
push esi
call edi
mov dword [0x4c4408], eax
push str.ClosePrinter
push esi
call edi
mov dword [0x4c441c], eax
push str.StartDocPrinterA
push esi
call edi
mov dword [0x4c440c], eax
push str.EndDocPrinter
push esi
call edi
mov dword [0x4c4418], eax
push str.StartPagePrinter
push esi
call edi
mov dword [0x4c4410], eax
push str.EndPagePrinter
push esi
call edi
mov dword [0x4c4414], eax
push str.WritePrinter
push esi
call edi
jmp 0x470730
xor eax, eax
mov dword [0x4c4424], eax
mov dword [0x4c4408], eax
mov dword [0x4c441c], eax
mov dword [0x4c440c], eax
mov dword [0x4c4418], eax
mov dword [0x4c4410], eax
mov dword [0x4c4414], eax
mov dword [0x4c4420], eax
mov byte [0x4c4428], 1
pop esi
pop edi
ret
Function at 0x4709f4
Capabilities:
Link many functions at runtime

Disassembly:
cmp byte [0x4c442c], 1
jne 0x470a03
mov al, byte [0x4c442d]
ret
mov byte [0x4c442c], 1
push str.advapi32.dll
call fcn.0046cde0
add esp, 4
mov dword [0x4c4430], eax
test eax, eax
je 0x470b4b
push str.GetSecurityInfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c4434], eax
test eax, eax
je 0x470b4b
mov eax, dword [0x4c4430]
test eax, eax
je 0x470b11
push str.SetSecurityInfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c4438], eax
test eax, eax
je 0x470b4b
mov eax, dword [0x4c4430]
test eax, eax
je 0x470b1d
push str.OpenProcessToken
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c443c], eax
test eax, eax
je 0x470b4b
mov eax, dword [0x4c4430]
test eax, eax
je 0x470b29
push str.GetTokenInformation
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c4440], eax
test eax, eax
je 0x470b4b
mov eax, dword [0x4c4430]
test eax, eax
je 0x470b35
push 0x4aa8ee
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c4444], eax
test eax, eax
je 0x470b4b
mov eax, dword [0x4c4430]
test eax, eax
je 0x470b41
push 0x4aac3a
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x4c4448], eax
xor eax, eax
test ecx, ecx
je 0x470b4d
mov ecx, dword [0x4c4430]
test ecx, ecx
je 0x470b05
push str.SetEntriesInAclA
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c444c], eax
test eax, eax
setne al
jmp 0x470b4d
mov dword [0x4c4438], 0
jmp 0x470b4b
mov dword [0x4c443c], 0
jmp 0x470b4b
mov dword [0x4c4440], 0
jmp 0x470b4b
mov dword [0x4c4444], 0
jmp 0x470b4b
mov dword [0x4c4448], 0
xor eax, eax
mov byte [0x4c442d], al
ret
Function at 0x471a62
Capabilities:
Set registry value

Disassembly:
push ebx
push edi
push esi
mov esi, dword [esp + 0x10]
test esi, esi
je 0x471a8e
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
push edi
call fcn.00485930
add esp, 4
inc eax
push eax
push edi
push 1
push 0
push ebx
push dword [esi]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
pop esi
pop edi
pop ebx
ret

Function at 0x471b91
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc
mov ebx, dword [esp + 0x20]
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 8], eax
test ebx, ebx
je 0x471c30
mov edi, dword [esp + 0x24]
mov eax, esp
xor esi, esi
lea ecx, [esp + 4]
push eax
push esi
push ecx
push esi
push edi
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x471c3d
cmp dword [esp + 4], 1
jne 0x471c3d
mov ebp, dword [esp]
inc ebp
xor esi, esi
push esi
push 1
push ebp
call fcn.004116c4
add esp, 0xc
mov ecx, edi
mov edi, eax
mov eax, esp
push eax
push edi
lea eax, [esp + 0xc]
push eax
push esi
push ecx
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x471c34
cmp dword [esp + 4], 1
jne 0x471c34
mov eax, dword [esp]
cmp eax, ebp
jb 0x471c28
push 0x92
push str..._windows_winstore.c
push str.size___allocsize
call fcn.0048233d
add esp, 0xc
mov eax, dword [esp]
mov byte [edi + eax], 0
mov esi, edi
jmp 0x471c3d
xor esi, esi
jmp 0x471c3d
push edi
call fcn.00411739
add esp, 4
mov ecx, dword [esp + 8]
xor ecx, esp
call fcn.00475893
mov eax, esi
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret

Function at 0x471c52
Capabilities:
Query or enumerate registry value

Disassembly:
push ebx
push edi
push esi
sub esp, 0x10
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov ecx, dword [0x4c1074]
xor ecx, esp
mov dword [esp + 0xc], ecx
mov dword [esp], 4
test eax, eax
je 0x471ca6
mov edi, esp
lea ecx, [esp + 4]
lea ebx, [esp + 8]
push edi
push ecx
push ebx
push 0
push dword [esp + 0x34]
push dword [eax]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ecx, dword [edi]
xor ecx, 4
mov edx, dword [ebx]
xor edx, 4
or ecx, eax
or ecx, edx
jne 0x471ca6
mov esi, dword [esp + 4]
mov ecx, dword [esp + 0xc]
xor ecx, esp
call fcn.00475893
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebx
ret
Function at 0x471db9
Capabilities:
Set registry value

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 8
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 4], eax
push dword [ebx]
push ebp
push edi
call fcn.00471a62
add esp, 0xc
push 0
push str.IsBold
push ebp
call fcn.0045ae09
add esp, 0xc
mov esi, eax
movzx eax, byte [ebx + 4]
mov dword [esp], eax
test edi, edi
je 0x471e15
mov eax, 4
mov ecx, esp
push eax
push ecx
push eax
push 0
push esi
push dword [edi]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push esi
call fcn.00411739
add esp, 4
push 0
push str.CharSet
push ebp
call fcn.0045ae09
add esp, 0xc
mov esi, eax
mov eax, dword [ebx + 0xc]
mov dword [esp], eax
test edi, edi
je 0x471e4f
mov eax, 4
mov ecx, esp
push eax
push ecx
push eax
push 0
push esi
push dword [edi]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push esi
call fcn.00411739
add esp, 4
push 0
push 0x4a8465
push ebp
call fcn.0045ae09
add esp, 0xc
mov esi, eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
test edi, edi
je 0x471e89
mov eax, 4
mov ecx, esp
push eax
push ecx
push eax
push 0
push esi
push dword [edi]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push esi
call fcn.00411739
add esp, 4
mov ecx, dword [esp + 4]
xor ecx, esp
call fcn.00475893
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret

Function at 0x471f07
Capabilities:
Delete registry key

Disassembly:
push edi
push esi
sub esp, 8
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 4], eax
mov eax, esp
push eax
push str.SoftwareSimonTathamPuTTYSessions
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
jne 0x471f6a
mov edi, dword [esp + 0x14]
call fcn.0045b0b4
mov esi, eax
push eax
push edi
call fcn.0046d22e
add esp, 8
push dword [esi]
push dword [esp + 4]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
push esi
call fcn.0045b117
add esp, 4
push dword [esp]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
call fcn.0046c8b7
add esp, 4
mov ecx, dword [esp + 4]
xor ecx, esp
call fcn.00475893
add esp, 8
pop esi
pop edi
ret
Function at 0x471fd5
Capabilities:
Query or enumerate registry key

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 8
mov edi, dword [esp + 0x1c]
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 4], eax
mov ebx, 0x105
mov dword [esp], ebx
push 0
push 1
push ebx
call fcn.004116c4
add esp, 0xc
mov esi, eax
push ebx
push eax
push dword [edi + 4]
push dword [edi]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyA]
cmp eax, 0xea
jne 0x47204d
xor ebp, ebp
inc ebp
push 0
push ebp
push ebx
push ebp
lea eax, [esp + 0x10]
push eax
push esi
call fcn.00411745
add esp, 0x18
mov esi, eax
push dword [esp]
push eax
mov eax, dword [esp + 0x24]
push dword [eax + 4]
push dword [eax]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyA]
cmp eax, 0xea
jne 0x47204d
mov ebx, dword [esp]
jmp 0x472019
mov edi, eax
test eax, eax
jne 0x472060
push dword [esp + 0x20]
push esi
call fcn.0046d2b9
add esp, 8
test edi, edi
sete bl
mov eax, dword [esp + 0x1c]
inc dword [eax + 4]
push esi
call fcn.00411739
add esp, 4
mov ecx, dword [esp + 4]
xor ecx, esp
call fcn.00475893
mov eax, ebx
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x47231d
Capabilities:
Set registry value

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 8
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x20]
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 4], eax
call fcn.0045b0b4
mov esi, eax
push ebp
push ebx
push str._s__d:
push eax
call fcn.0045b197
add esp, 0x10
push esi
push edi
call fcn.0046d22e
add esp, 8
mov eax, esp
push eax
push str.SoftwareSimonTathamPuTTYSshHostKeys
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
test eax, eax
jne 0x47239c
mov edi, dword [esp + 0x28]
push edi
call fcn.00485930
add esp, 4
inc eax
push eax
push edi
push 1
push 0
push dword [esi]
push dword [esp + 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push dword [esp]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push esi
call fcn.0045b117
add esp, 4
mov ecx, dword [esp + 4]
xor ecx, esp
call fcn.00475893
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret

Function at 0x4723b8
Capabilities:
Read file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x408
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 0x404], eax
xor ecx, ecx
inc ecx
call fcn.0047244f
cmp eax, 0xffffffff
je 0x472436
mov esi, eax
mov eax, esp
lea ebx, [esp + 4]
push 0
push eax
push 0x400
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x47242f
mov eax, dword [esp]
test eax, eax
je 0x47242f
mov ebp, dword [esp + 0x41c]
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
push eax
push ebx
call ebp
add esp, 8
push 0
lea eax, [esp + 4]
push eax
push 0x400
push ebx
push esi
call edi
test eax, eax
je 0x47242f
mov eax, dword [esp]
test eax, eax
jne 0x47240d
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [esp + 0x404]
xor ecx, esp
call fcn.00475893
add esp, 0x408
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x4726d9
Capabilities:
Write file on windows

Disassembly:
push esi
sub esp, 8
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 4], eax
mov ecx, 2
call fcn.0047244f
cmp eax, 0xffffffff
je 0x472714
mov esi, eax
mov eax, esp
push 0
push eax
push dword [esp + 0x1c]
push dword [esp + 0x1c]
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [esp + 4]
xor ecx, esp
call fcn.00475893
add esp, 8
pop esi
ret
Function at 0x472a0d
Capabilities:
Delete registry key
Query or enumerate registry key

Disassembly:
push edi
push esi
sub esp, 0x110
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 0x10c], eax
xor ecx, ecx
call fcn.0047244f
call fcn.0046c4c8
mov edi, esp
push edi
push str.SoftwareSimonTathamPuTTY
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
jne 0x472a57
mov ecx, dword [esp]
call fcn.00472ae6
push dword [esp]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
push str.SoftwareSimonTatham
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
je 0x472a83
mov ecx, dword [esp + 0x10c]
xor ecx, esp
call fcn.00475893
add esp, 0x110
pop esi
pop edi
ret
push 0x4b016e
push dword [esp + 4]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
lea eax, [esp + 7]
push 0x105
push eax
push 0
push dword [esp + 0xc]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyA]
mov esi, eax
push dword [esp]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
je 0x472a6c
push edi
push str.Software
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
jne 0x472a6c
push 0x4ac188
push dword [esp + 4]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
push dword [esp]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x472a6c

Function at 0x472ae6
Capabilities:
Delete registry key
Query or enumerate registry key

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x110
mov esi, ecx
mov eax, dword [0x4c1074]
xor eax, esp
mov dword [esp + 0x10c], eax
lea edi, [esp + 7]
push 0x105
push edi
push 0
push ecx
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyA]
test eax, eax
jne 0x472b56
mov ebx, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov ebp, dword [sym.imp.ADVAPI32.dll_RegEnumKeyA]
mov eax, esp
push eax
push edi
push esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
jne 0x472b43
mov ecx, dword [esp]
call fcn.00472ae6
push dword [esp]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
push esi
call ebx
push 0x105
push edi
push 0
push esi
call ebp
test eax, eax
je 0x472b23
mov ecx, dword [esp + 0x10c]
xor ecx, esp
call fcn.00475893
add esp, 0x110
pop esi
pop edi
pop ebx
pop ebp
ret

Function at 0x472b6f
Capabilities:
Check if file exists
Delete file

Disassembly:
push ebp
push ebx
push edi
push esi
mov esi, ecx
mov edi, dword [esp + 0x14]
test edx, edx
je 0x472bbb
xor ecx, ecx
xor eax, eax
cmp edx, 2
setne cl
sete al
lea ecx, [ecx + ecx*2]
mov edx, 0x40000000
mov ebx, 0x80000000
cmove ebx, edx
mov edx, eax
shl edx, 7
xor eax, 3
xor ebp, ebp
push ebp
push edx
push eax
push ebp
push ecx
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [edi], eax
cmp eax, 0xffffffff
setne al
jmp 0x472bf7
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x472bef
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x472bef
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0046cf7c
add esp, 4
push eax
push esi
push str.Unable_to_delete__s:__s
call fcn.00466a67
add esp, 0xc
mov dword [edi], 0xffffffff
xor eax, eax
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x473c8c
Capabilities:
Get common file path
Set current directory

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x108
mov esi, dword [esp + 0x120]
mov edi, dword [esp + 0x11c]
mov al, byte [esp + 0x124]
mov ecx, dword [0x4c1074]
xor ecx, esp
mov dword [esp + 0x104], ecx
xor ebp, ebp
mov ebx, 0
test al, al
je 0x473cdc
mov eax, esp
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
dec eax
cmp eax, 0x103
setb bl
mov al, byte [esp + 0x128]
mov dword [esi], 0x4c
test edi, edi
je 0x473cf5
xor ebp, ebp
cmp byte [edi], 0
cmovne ebp, edi
mov dword [esi + 0x2c], ebp
test al, al
je 0x473d05
push esi
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
jmp 0x473d0c
push esi
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
mov esi, eax
test edi, edi
je 0x473d29
push edi
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
dec eax
cmp eax, 0x103
jb 0x473d29
mov byte [edi], 0
test bl, bl
je 0x473d36
mov eax, esp
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
test esi, esi
setne bl
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.00475893
mov eax, ebx
add esp, 0x108
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x48a7e9
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
lock inc dword [eax + 0xc]
mov ecx, dword [eax + 0x7c]
test ecx, ecx
leave
je 0x48a7ff
lock inc dword [ecx]
mov ecx, dword [eax + 0x84]
pushal
pushfd
mov ebx, eax
or esi, edi
rol eax, 8
and esi, edi
mov edi, eax
xor ecx, eax
call fcn.00415b6d
sub ecx, esp
call fcn.00404575
dec esi
add eax, 0x176b867e
mov ecx, 0x300559
rol edi, 6
not eax
shr eax, 9
inc esi
rol eax, 0x11
mov edi, dword [0x4c1a44]
ror esi, 0x15
call fcn.00475d6f
ror esi, 0x1f
test ecx, ebp
jo 0x48a812
loop 0x48a82c
mov ebx, esp
dec eax
test ecx, esi
jo 0x48a7f9
xchg edx, edx
mov esi, eax
shr eax, 4
call fcn.00413803
mov eax, eax
xor esi, eax
Function at 0x48a866
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
mov edx, 0x2955ae9e
dec edx
or esi, edi
not edx
and esi, edi
inc edi
mov esi, eax
not eax
mov ebx, 0x24757bb1
mov edx, edx
xor eax, 0xc5f1bf6
call fcn.00413803
dec esi
mov edi, edx
xor eax, 0x13e0422
dec eax
call fcn.00475d6f
ror esi, 0x13
add ebx, eax
rol esi, 0xa
dec eax
mov ecx, esi
dec eax
sub edx, esi
not edx
add esi, edx
dec ecx
sub eax, edi
mov edx, eax
shr esi, 0xb
add esi, 0x84eac54
mov eax, eax
neg eax
mov ecx, 0x7c86a0
inc ebx
and edx, dword [0x4c1b0c]
rol esi, 0x1c
call fcn.0040416e
ror ebx, 0xf
inc eax
not esi
ror edx, 0xd
call fcn.00475b09
rol esi, 0x11
shr esi, 0x18
call fcn.00413803
clc
dec dword [ebx]
xor eax, 0x4c1a08
retf 0xe80d
shr edx, 0x17
loop 0x48a8c1
test eax, 0x3488298
jo 0x48a8d7
mov esi, eax
and ebx, 0x275c4ff0
mov ecx, 0xc5fb22
xchg eax, eax
neg edi
inc edx
not eax
call fcn.004026dc
not esi
inc esi
rol eax, 0x1d
neg esi
call fcn.00415b6d
dec edx
rol eax, 1
loop 0x48a909
xor esi, esp
xor ecx, esi
add edx, dword [0x4c18c3]
xor ebx, eax
xchg eax, eax
inc esi
xor eax, edi
xor eax, 0x12c82ab6
and esi, edi
mov eax, 0x2ac9f9f
and esi, edi
or esi, edi
test eax, ecx
jo 0x48a943
lahf
lodsb al, byte [esi]
add ah, byte [ecx]
dec byte [ecx]
inc byte [ebp - 0x7e0a8f38]
enter 0xffffffffffff92ba, 0xffffffffffffffbf
add byte [ebx], dh
ret 0xd6f7
or eax, 0xbf92ba
xor eax, edx
not esi
ror eax, 1
sub esi, eax
dec edx
or esi, 0x2409d1bc
xor eax, esi
sub ebx, dword [0x4c1538]
dec esi
add eax, esi
push str.KERNEL32.dll
xor eax, esi
call fcn.00404ca1
neg eax
xor edx, eax
sub ecx, dword [0x4c1a4e]
add esi, eax
rol ebx, 0xd
dec edx
sub edi, dword [0x4c1459]
neg esi
xor edi, eax
sub edx, dword [0x4c12e0]
call fcn.00475d6f
sub esi, eax
call fcn.00405d76
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
dec edx
neg eax
xor ecx, edx
call fcn.00406a89
xor esi, eax
rol eax, 3
inc esi
xchg eax, eax
dec eax
call fcn.0040612d
inc esi
add esi, eax
not edi
rol edx, 0xa
inc esi
not esi
add esi, eax
call fcn.00407e57
rol eax, 0x12
xor edx, esp
ror edx, 0xf
call fcn.004051f1
rol edx, 0xf
xor edx, esp
ror eax, 0x12
call fcn.00401472
sub esi, eax
not esi
dec esi
ror edx, 0xa
not edi
sub esi, eax
dec esi
call fcn.00407e57
inc eax
xchg eax, eax
dec esi
ror eax, 3
xor esi, eax
call fcn.004075c1
xor ecx, edx
neg eax
inc edx
push 0
xor esi, eax
call fcn.00403ebb
xchg eax, edx
xor eax, 0x149cfa40
ror ebx, 3
sub ecx, esi
not edx
xchg esi, esi
xor ebx, esp
xchg eax, esi
add edi, esp
inc esi
ror ebx, 0xe
dec edi
not eax
call fcn.00401aae
ror edi, 0x1c
xor esi, 0x12d25807
add esi, 0x4bb7b00
xor esi, eax
neg esi
call fcn.00409f48
call fcn.00403b11
neg esi
xor esi, eax
sub esi, 0x4bb7b00
xor esi, 0x12d25807
rol edi, 0x1c
not eax
inc edi
rol ebx, 0xe
dec esi
sub edi, esp
xchg eax, esi
xor ebx, esp
xchg esi, esi
not edx
add ecx, esi
rol ebx, 3
xor eax, 0x149cfa40
xchg eax, edx
xor esi, eax
push 0x636f6c6c
sub ebx, ebp
add ecx, esp
inc edx
ror esi, 0x1b
not edi
inc esi
call fcn.00406a89
sub eax, 0x192997f8
xchg edx, eax
sub esi, eax
add edi, eax
Function at 0x48a8e7
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
mov edx, 0x2955ae9e
dec edx
or esi, edi
not edx
and esi, edi
inc edi
mov esi, eax
not eax
mov ebx, 0x24757bb1
mov edx, edx
xor eax, 0xc5f1bf6
call fcn.00413803
dec esi
mov edi, edx
xor eax, 0x13e0422
dec eax
call fcn.00475d6f
ror esi, 0x13
add ebx, eax
rol esi, 0xa
dec eax
mov ecx, esi
dec eax
sub edx, esi
not edx
add esi, edx
dec ecx
sub eax, edi
mov edx, eax
shr esi, 0xb
add esi, 0x84eac54
mov eax, eax
neg eax
mov ecx, 0x7c86a0
inc ebx
and edx, dword [0x4c1b0c]
rol esi, 0x1c
call fcn.0040416e
ror ebx, 0xf
inc eax
not esi
ror edx, 0xd
call fcn.00475b09
rol esi, 0x11
shr esi, 0x18
call fcn.00413803
clc
dec dword [ebx]
xor eax, 0x4c1a08
retf 0xe80d
shr edx, 0x17
loop 0x48a8c1
test eax, 0x3488298
jo 0x48a8d7
mov esi, eax
and ebx, 0x275c4ff0
mov ecx, 0xc5fb22
xchg eax, eax
neg edi
inc edx
not eax
call fcn.004026dc
not esi
inc esi
rol eax, 0x1d
neg esi
call fcn.00415b6d
dec edx
rol eax, 1
loop 0x48a909
xor esi, esp
xor ecx, esi
add edx, dword [0x4c18c3]
xor ebx, eax
xchg eax, eax
inc esi
xor eax, edi
xor eax, 0x12c82ab6
and esi, edi
mov eax, 0x2ac9f9f
and esi, edi
or esi, edi
test eax, ecx
jo 0x48a943
lahf
lodsb al, byte [esi]
add ah, byte [ecx]
dec byte [ecx]
inc byte [ebp - 0x7e0a8f38]
enter 0xffffffffffff92ba, 0xffffffffffffffbf
add byte [ebx], dh
ret 0xd6f7
or eax, 0xbf92ba
xor eax, edx
not esi
ror eax, 1
sub esi, eax
dec edx
or esi, 0x2409d1bc
xor eax, esi
sub ebx, dword [0x4c1538]
dec esi
add eax, esi
push str.KERNEL32.dll
xor eax, esi
call fcn.00404ca1
neg eax
xor edx, eax
sub ecx, dword [0x4c1a4e]
add esi, eax
rol ebx, 0xd
dec edx
sub edi, dword [0x4c1459]
neg esi
xor edi, eax
sub edx, dword [0x4c12e0]
call fcn.00475d6f
sub esi, eax
call fcn.00405d76
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
dec edx
neg eax
xor ecx, edx
call fcn.00406a89
xor esi, eax
rol eax, 3
inc esi
xchg eax, eax
dec eax
call fcn.0040612d
inc esi
add esi, eax
not edi
rol edx, 0xa
inc esi
not esi
add esi, eax
call fcn.00407e57
rol eax, 0x12
xor edx, esp
ror edx, 0xf
call fcn.004051f1
rol edx, 0xf
xor edx, esp
ror eax, 0x12
call fcn.00401472
sub esi, eax
not esi
dec esi
ror edx, 0xa
not edi
sub esi, eax
dec esi
call fcn.00407e57
inc eax
xchg eax, eax
dec esi
ror eax, 3
xor esi, eax
call fcn.004075c1
xor ecx, edx
neg eax
inc edx
push 0
xor esi, eax
call fcn.00403ebb
xchg eax, edx
xor eax, 0x149cfa40
ror ebx, 3
sub ecx, esi
not edx
xchg esi, esi
xor ebx, esp
xchg eax, esi
add edi, esp
inc esi
ror ebx, 0xe
dec edi
not eax
call fcn.00401aae
ror edi, 0x1c
xor esi, 0x12d25807
add esi, 0x4bb7b00
xor esi, eax
neg esi
call fcn.00409f48
call fcn.00403b11
neg esi
xor esi, eax
sub esi, 0x4bb7b00
xor esi, 0x12d25807
rol edi, 0x1c
not eax
inc edi
rol ebx, 0xe
dec esi
sub edi, esp
xchg eax, esi
xor ebx, esp
xchg esi, esi
not edx
add ecx, esi
rol ebx, 3
xor eax, 0x149cfa40
xchg eax, edx
xor esi, eax
push 0x636f6c6c
sub ebx, ebp
add ecx, esp
inc edx
ror esi, 0x1b
not edi
inc esi
call fcn.00406a89
sub eax, 0x192997f8
xchg edx, eax
sub esi, eax
add edi, eax