Function at 0x10062010
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 [0x1065fa48], 0
jne 0x10062052
push str.no_dll_path_n
call fcn.1003cfe0
add esp, 4
xor eax, eax
jmp 0x1006240b
mov eax, dword [0x1065fa48]
push eax
call fcn.1024e180
add esp, 4
push eax
mov ecx, dword [0x1065fa48]
push ecx
lea edx, [ebp - 0x2c0]
push edx
call fcn.10259620
add esp, 0xc
cmp dword [0x104f16e0], 0
jne 0x1006208d
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.100e92f0
push 0x103e4ffc
lea edx, [ebp - 0x1bc]
push edx
call fcn.1025bf73
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x1006215c
push 0x104ff214
lea eax, [ebp - 0x1bc]
push eax
call fcn.100e94c0
add esp, 8
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.1025c001
add esp, 4
cmp dword [ebp - 4], 0
jne 0x1006212f
lea edx, [ebp - 0x1bc]
push edx
push str.YaraInit:_Compiled_rules_loaded_from_existing_file__s_n
call fcn.1003cfe0
add esp, 8
jmp 0x10062157
cmp dword [ebp - 4], 3
jne 0x1006214b
lea eax, [ebp - 0x1bc]
push eax
push str.YaraInit:_Unable_to_load_existing_compiled_rules_file__s_n
call fcn.1003cfe0
add esp, 8
jmp 0x10062157
mov ecx, dword [ebp - 4]
push ecx
call fcn.10061c70
add esp, 4
jmp 0x10062348
lea edx, [ebp - 8]
push edx
call fcn.100e8970
add esp, 4
test eax, eax
je 0x1006217e
push str.YaraInit:_yr_compiler_create_failure_n
call fcn.1003cfe0
add esp, 4
jmp 0x100623db
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 0x100622a5
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 0x10062271
push 0x103e4d74
lea edx, [ebp - 0x3c4]
push edx
call fcn.1025bf73
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x10062271
lea eax, [ebp - 0x3c4]
push eax
push 0
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.100e8820
add esp, 0x10
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jne 0x10062248
lea eax, [ebp - 0x3c4]
push eax
push str.YaraInit:_Unable_to_open_file__s_n
call fcn.1003cfe0
add esp, 8
jmp 0x10062265
cmp dword [ebp - 0x10], 0
je 0x1006225c
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.10061c70
add esp, 4
jmp 0x10062265
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0xc]
push eax
call fcn.1025c001
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 0x100621c1
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.1003cfe0
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.100e88f0
add esp, 0xc
test eax, eax
je 0x100622d0
lea eax, [ebp - 0x1bc]
push eax
push str.YaraInit:_Failed_to_add_internal_yara_rules._n
call fcn.1003cfe0
add esp, 8
push 0x104ff214
mov ecx, dword [ebp - 8]
push ecx
call fcn.100e9120
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x100622fb
mov edx, dword [ebp - 4]
push edx
call fcn.10061c70
add esp, 4
jmp 0x100623db
lea eax, [ebp - 0x1bc]
push eax
mov ecx, dword [0x104ff214]
push ecx
call fcn.100e95f0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x10062328
mov edx, dword [ebp - 4]
push edx
call fcn.10061c70
add esp, 4
jmp 0x1006233c
lea eax, [ebp - 0x1bc]
push eax
push str.YaraInit:_Compiled_rules_saved_to_file__s_n
call fcn.1003cfe0
add esp, 8
mov ecx, dword [ebp - 8]
push ecx
call fcn.100e8bc0
add esp, 4
mov dword [ebp - 8], 0
mov dword [0x1065f1e8], 1
mov dword [0x1065f1ec], 1
mov dword [ebp - 0xb8], 0x94
lea edx, [ebp - 0xb8]
push edx
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
jne 0x10062392
push str.YaraInit:_Failed_to_get_OS_version
call fcn.1003e760
add esp, 4
mov eax, 1
jmp 0x1006240b
cmp dword [ebp - 0xb4], 6
jne 0x100623a4
cmp dword [ebp - 0xb0], 1
ja 0x100623ad
cmp dword [ebp - 0xb4], 6
jbe 0x100623d4
push 0x103e56c4
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push eax
call fcn.10037ff0
add esp, 4
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.10061ec0
add esp, 8
mov eax, 1
jmp 0x1006240b
cmp dword [ebp - 8], 0
je 0x100623ed
mov edx, dword [ebp - 8]
push edx
call fcn.100e8bc0
add esp, 4
cmp dword [0x104ff214], 0
je 0x10062404
mov eax, dword [0x104ff214]
push eax
call fcn.100e93b0
add esp, 4
call fcn.100e9260
xor eax, eax
mov esp, ebp
pop ebp
ret