There is no description at this point.
rule win_vanhelsing_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-05-04" version = "1" description = "Detects win.vanhelsing." info = "autogenerated rule brought to you by yara-signator" tool = "yara-signator v0.6.0" signator_config = "callsandjumps;datarefs;binvalue" malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.vanhelsing" malpedia_rule_date = "20260422" malpedia_hash = "a182e35da64e6d71cb55f125c4d4225196523f14" malpedia_version = "20260504" malpedia_license = "CC BY-SA 4.0" malpedia_sharing = "TLP:WHITE" /* DISCLAIMER * The strings used in this rule have been automatically selected from the * disassembly of memory dumps and unpacked files, using YARA-Signator. * The code and documentation is published here: * https://github.com/fxb-cocacoding/yara-signator * As Malpedia is used as data source, please note that for a given * number of families, only single samples are documented. * This likely impacts the degree of generalization these rules will offer. * Take the described generation method also into consideration when you * apply the rules in your use cases and assign them confidence levels. */ strings: $sequence_0 = { 8b458c 038508ffffff 1395c0feffff 03856cffffff 898524ffffff 139530ffffff 33850cffffff } // n = 7, score = 100 // 8b458c | mov eax, dword ptr [ebp - 0x74] // 038508ffffff | add eax, dword ptr [ebp - 0xf8] // 1395c0feffff | adc edx, dword ptr [ebp - 0x140] // 03856cffffff | add eax, dword ptr [ebp - 0x94] // 898524ffffff | mov dword ptr [ebp - 0xdc], eax // 139530ffffff | adc edx, dword ptr [ebp - 0xd0] // 33850cffffff | xor eax, dword ptr [ebp - 0xf4] $sequence_1 = { 898d1cffffff 03ca 89b568ffffff 13b508ffffff 33d9 33c6 898d64ffffff } // n = 7, score = 100 // 898d1cffffff | mov dword ptr [ebp - 0xe4], ecx // 03ca | add ecx, edx // 89b568ffffff | mov dword ptr [ebp - 0x98], esi // 13b508ffffff | adc esi, dword ptr [ebp - 0xf8] // 33d9 | xor ebx, ecx // 33c6 | xor eax, esi // 898d64ffffff | mov dword ptr [ebp - 0x9c], ecx $sequence_2 = { 8b45ac 0f1006 0f57c8 8b4db0 0f289580feffff 0f289d70feffff 0f1108 } // n = 7, score = 100 // 8b45ac | mov eax, dword ptr [ebp - 0x54] // 0f1006 | movups xmm0, xmmword ptr [esi] // 0f57c8 | xorps xmm1, xmm0 // 8b4db0 | mov ecx, dword ptr [ebp - 0x50] // 0f289580feffff | movaps xmm2, xmmword ptr [ebp - 0x180] // 0f289d70feffff | movaps xmm3, xmmword ptr [ebp - 0x190] // 0f1108 | movups xmmword ptr [eax], xmm1 $sequence_3 = { 898d08ffffff 138568ffffff 33d9 33d0 899d68ffffff c1a568ffffff10 0facd310 } // n = 7, score = 100 // 898d08ffffff | mov dword ptr [ebp - 0xf8], ecx // 138568ffffff | adc eax, dword ptr [ebp - 0x98] // 33d9 | xor ebx, ecx // 33d0 | xor edx, eax // 899d68ffffff | mov dword ptr [ebp - 0x98], ebx // c1a568ffffff10 | shl dword ptr [ebp - 0x98], 0x10 // 0facd310 | shrd ebx, edx, 0x10 $sequence_4 = { 898df4feffff 33c6 8b8d6cffffff 8bf0 33ca c1e610 0facc810 } // n = 7, score = 100 // 898df4feffff | mov dword ptr [ebp - 0x10c], ecx // 33c6 | xor eax, esi // 8b8d6cffffff | mov ecx, dword ptr [ebp - 0x94] // 8bf0 | mov esi, eax // 33ca | xor ecx, edx // c1e610 | shl esi, 0x10 // 0facc810 | shrd eax, ecx, 0x10 $sequence_5 = { 0bf9 8b8d44ffffff 03c2 898564ffffff 13cf 89950cffffff 33c6 } // n = 7, score = 100 // 0bf9 | or edi, ecx // 8b8d44ffffff | mov ecx, dword ptr [ebp - 0xbc] // 03c2 | add eax, edx // 898564ffffff | mov dword ptr [ebp - 0x9c], eax // 13cf | adc ecx, edi // 89950cffffff | mov dword ptr [ebp - 0xf4], edx // 33c6 | xor eax, esi $sequence_6 = { 8bc4 0f1045d0 83ec10 0f1100 8bc4 0f108560ffffff 0f1100 } // n = 7, score = 100 // 8bc4 | mov eax, esp // 0f1045d0 | movups xmm0, xmmword ptr [ebp - 0x30] // 83ec10 | sub esp, 0x10 // 0f1100 | movups xmmword ptr [eax], xmm0 // 8bc4 | mov eax, esp // 0f108560ffffff | movups xmm0, xmmword ptr [ebp - 0xa0] // 0f1100 | movups xmmword ptr [eax], xmm0 $sequence_7 = { 3bc8 740c 8b0cb514bd4800 46 85c9 75f0 } // n = 6, score = 100 // 3bc8 | cmp ecx, eax // 740c | je 0xe // 8b0cb514bd4800 | mov ecx, dword ptr [esi*4 + 0x48bd14] // 46 | inc esi // 85c9 | test ecx, ecx // 75f0 | jne 0xfffffff2 $sequence_8 = { 55 8bec 8b450c ff7510 ff348544bc4800 ff7508 e8???????? } // n = 7, score = 100 // 55 | push ebp // 8bec | mov ebp, esp // 8b450c | mov eax, dword ptr [ebp + 0xc] // ff7510 | push dword ptr [ebp + 0x10] // ff348544bc4800 | push dword ptr [eax*4 + 0x48bc44] // ff7508 | push dword ptr [ebp + 8] // e8???????? | $sequence_9 = { 83c220 03c2 83c40c 83c620 3bc7 8b459c 76db } // n = 7, score = 100 // 83c220 | add edx, 0x20 // 03c2 | add eax, edx // 83c40c | add esp, 0xc // 83c620 | add esi, 0x20 // 3bc7 | cmp eax, edi // 8b459c | mov eax, dword ptr [ebp - 0x64] // 76db | jbe 0xffffffdd condition: 7 of them and filesize < 2981888 }
If your designated proposal does not fit in any other category, feel free to write a free-text in the comment field below. Changes regarding references should be proposed on the Malpedia library page.
Your suggestion will be reviewed before being published. Thank you for contributing!
YYYY-MM-DD
YYYY-MM
YYYY