Function at 0x100624d0
Capabilities:
Check os version
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x70c
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
cmp dword [0x1065fc28], 0
jne 0x10062512
push str.no_dll_path_n
call fcn.1003d460
add esp, 4
xor eax, eax
jmp 0x100628cb
mov eax, dword [0x1065fc28]
push eax
call fcn.1024e6c0
add esp, 4
push eax
mov ecx, dword [0x1065fc28]
push ecx
lea edx, [ebp - 0x2c0]
push edx
call fcn.1025c470
add esp, 0xc
cmp dword [0x104f1884], 0
jne 0x1006254d
lea eax, [ebp - 0x2c0]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x2c0]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea edx, [ebp - 0x2c0]
push edx
push str._sdatayara
lea eax, [ebp - 0x608]
push eax
call fcn.100011d0
add esp, 0xc
push str.C:Windows
push str._swinc
lea ecx, [ebp - 0x1bc]
push ecx
call fcn.100011d0
add esp, 0xc
call fcn.100e9780
push 0x103e5284
lea edx, [ebp - 0x1bc]
push edx
call fcn.1025c353
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x1006261c
push 0x104ff3bc
lea eax, [ebp - 0x1bc]
push eax
call fcn.100e9950
add esp, 8
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.1025c3e1
add esp, 4
cmp dword [ebp - 4], 0
jne 0x100625ef
lea edx, [ebp - 0x1bc]
push edx
push str.YaraInit:_Compiled_rules_loaded_from_existing_file__s_n
call fcn.1003d460
add esp, 8
jmp 0x10062617
cmp dword [ebp - 4], 3
jne 0x1006260b
lea eax, [ebp - 0x1bc]
push eax
push str.YaraInit:_Unable_to_load_existing_compiled_rules_file__s_n
call fcn.1003d460
add esp, 8
jmp 0x10062617
mov ecx, dword [ebp - 4]
push ecx
call fcn.10062130
add esp, 4
jmp 0x10062808
lea edx, [ebp - 8]
push edx
call fcn.100e8e00
add esp, 4
test eax, eax
je 0x1006263e
push str.YaraInit:_yr_compiler_create_failure_n
call fcn.1003d460
add esp, 4
jmp 0x1006289b
lea eax, [ebp - 0x608]
push eax
push str._s.yar
lea ecx, [ebp - 0x70c]
push ecx
call fcn.100011d0
add esp, 0xc
lea edx, [ebp - 0x504]
push edx
lea eax, [ebp - 0x70c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
je 0x10062765
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x4d8]
push ecx
lea edx, [ebp - 0x608]
push edx
push str._s_s
push 0x104
lea eax, [ebp - 0x3c4]
push eax
call fcn.10001240
add esp, 0x14
mov ecx, dword [ebp - 0x504]
and ecx, 0x10
jne 0x10062731
push 0x103e4f8c
lea edx, [ebp - 0x3c4]
push edx
call fcn.1025c353
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x10062731
lea eax, [ebp - 0x3c4]
push eax
push 0
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.100e8cb0
add esp, 0x10
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jne 0x10062708
lea eax, [ebp - 0x3c4]
push eax
push str.YaraInit:_Unable_to_open_file__s_n
call fcn.1003d460
add esp, 8
jmp 0x10062725
cmp dword [ebp - 0x10], 0
je 0x1006271c
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.10062130
add esp, 4
jmp 0x10062725
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0xc]
push eax
call fcn.1025c3e1
add esp, 4
lea ecx, [ebp - 0x504]
push ecx
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x10062681
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 0x18]
push ecx
push str.YaraInit:_Compiled__d_rule_files_n
call fcn.1003d460
add esp, 8
push 0
push str.rule_RtlInsertInvertedFunctionTablestrings:_10_0_19041_662__48_8D_0D__4__E8__4___7__8B_44_24____44_8B_CB_4C_8B_44_24____48_8B_D7_89_44_24____E8_10_0_18362_1350__48_8D_0D__4__33_D2_85_C0_48_0F_48_DA_E8__4__33_C9_E8__4__8B_44_24____44_8B_CF_4C_8B_C3_89_44_24____48_8B_D6_E8condition:uint16_0___0x5a4d_and_any_of_them
mov edx, dword [ebp - 8]
push edx
call fcn.100e8d80
add esp, 0xc
test eax, eax
je 0x10062790
lea eax, [ebp - 0x1bc]
push eax
push str.YaraInit:_Failed_to_add_internal_yara_rules._n
call fcn.1003d460
add esp, 8
push 0x104ff3bc
mov ecx, dword [ebp - 8]
push ecx
call fcn.100e95b0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x100627bb
mov edx, dword [ebp - 4]
push edx
call fcn.10062130
add esp, 4
jmp 0x1006289b
lea eax, [ebp - 0x1bc]
push eax
mov ecx, dword [0x104ff3bc]
push ecx
call fcn.100e9a80
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x100627e8
mov edx, dword [ebp - 4]
push edx
call fcn.10062130
add esp, 4
jmp 0x100627fc
lea eax, [ebp - 0x1bc]
push eax
push str.YaraInit:_Compiled_rules_saved_to_file__s_n
call fcn.1003d460
add esp, 8
mov ecx, dword [ebp - 8]
push ecx
call fcn.100e9050
add esp, 4
mov dword [ebp - 8], 0
mov dword [0x1065f3c8], 1
mov dword [0x1065f3cc], 1
mov dword [ebp - 0xb8], 0x94
lea edx, [ebp - 0xb8]
push edx
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
jne 0x10062852
push str.YaraInit:_Failed_to_get_OS_version
call fcn.1003ebe0
add esp, 4
mov eax, 1
jmp 0x100628cb
cmp dword [ebp - 0xb4], 6
jne 0x10062864
cmp dword [ebp - 0xb0], 1
ja 0x1006286d
cmp dword [ebp - 0xb4], 6
jbe 0x10062894
push 0x103e5834
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push eax
call fcn.10038470
add esp, 4
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.10062380
add esp, 8
mov eax, 1
jmp 0x100628cb
cmp dword [ebp - 8], 0
je 0x100628ad
mov edx, dword [ebp - 8]
push edx
call fcn.100e9050
add esp, 4
cmp dword [0x104ff3bc], 0
je 0x100628c4
mov eax, dword [0x104ff3bc]
push eax
call fcn.100e9840
add esp, 4
call fcn.100e96f0
xor eax, eax
mov esp, ebp
pop ebp
ret