Function at 0x10001420
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x1064
call fcn.100074e0
mov eax, dword [0x1000a01c]
xor eax, esp
mov dword [esp + 0x1060], eax
cmp dword [0x1000c554], 0
xorps xmm0, xmm0
push ebx
push esi
mov dword [0x1000c52c], 1
push edi
movq qword [0x1000c480], xmm0
movq qword [0x1000c488], xmm0
movq qword [0x1000c490], xmm0
movq qword [0x1000c498], xmm0
movq qword [0x1000c4a0], xmm0
movq qword [0x1000c4a8], xmm0
movq qword [0x1000c4b0], xmm0
movq qword [0x1000c4b8], xmm0
movq qword [0x1000c4c0], xmm0
mov dword [0x1000c4e8], 1
mov dword [0x1000c4ec], 1
mov dword [0x1000c4f0], 1
mov dword [0x1000c4f4], 1
mov dword [0x1000c4f8], 1
mov dword [0x1000c4fc], 1
mov dword [0x1000c500], 1
mov dword [0x1000c504], 1
mov dword [0x1000c508], 1
mov dword [0x1000c50c], 1
mov dword [0x1000c510], 1
mov dword [0x1000c514], 1
mov dword [0x1000c518], 1
mov dword [0x1000c51c], 1
mov dword [0x1000c520], 1
mov dword [0x1000c524], 1
mov dword [0x1000c528], 1
mov dword [0x1000c52c], 0
jne 0x10001564
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x1000c554], eax
push 0x100082c8
lea eax, [esp + 0x20]
push str.IQlite_Logger.ini
push eax
mov dword [esp + 0x28], 0
call dword [sym.imp.MSVCR110.dll_fopen_s]
mov esi, dword [esp + 0x28]
add esp, 0xc
test esi, esi
je 0x10001f71
push 0xfff
lea eax, [esp + 0x6d]
push 0
push eax
mov byte [esp + 0x74], 0
call sub.MSVCR110.dll_memset
push esi
mov dword [esp + 0x5c], 0xf
mov dword [esp + 0x58], 0
mov byte [esp + 0x48], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
call dword [sym.imp.MSVCR110.dll_feof]
add esp, 0x10
test eax, eax
jne 0x10001ef5
mov ebx, dword [sym.imp.MSVCR110.dll_toupper]
mov edi, dword [sym.imp.MSVCR110.dll_atoi]
push dword [esp + 0x1c]
lea eax, [esp + 0x6c]
push 0x1000
push eax
call dword [sym.imp.MSVCR110.dll_fgets]
add esp, 0xc
cmp byte [esp + 0x68], 0
je 0x10001626
lea esi, [esp + 0x68]
movsx eax, byte [esi]
push eax
call ebx
mov byte [esi], al
lea esi, [esi + 1]
add esp, 4
cmp byte [esi], 0
jne 0x10001613
lea eax, [esp + 0x68]
push eax
lea ecx, [esp + 0x3c]
call fcn.10004660
push str.__t_n_r
lea ecx, [esp + 0x24]
call fcn.100044e0
push 1
push 1
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10006690
add esp, 0x14
lea ecx, [esp + 0x50]
call fcn.10004630
lea ecx, [esp + 0x20]
call fcn.10004c80
push ecx
push 0x100082e8
lea ecx, [esp + 0x40]
call fcn.100046e0
cmp eax, 0xffffffff
je 0x1000169c
push ecx
push 0x100082e8
lea ecx, [esp + 0x40]
call fcn.10004c80
push eax
lea ecx, [esp + 0x3c]
call fcn.100046a0
push ecx
push 0x100082ec
lea ecx, [esp + 0x40]
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100016c9
push ecx
push 0x100082ec
lea ecx, [esp + 0x40]
call fcn.100046e0
push eax
lea ecx, [esp + 0x3c]
call fcn.100046a0
cmp dword [esp + 0x48], 0
je 0x10001ee0
push ecx
push 0x100082f0
lea ecx, [esp + 0x40]
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001ee0
lea ecx, [esp + 0x10]
call fcn.10004780
push 0x100082f0
lea ecx, [esp + 0x24]
call fcn.100044e0
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x40]
push eax
call fcn.10006450
add esp, 0xc
lea ecx, [esp + 0x20]
call fcn.10004630
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jne 0x10001ee0
push ecx
push str.LOG_IQFACT_APP
mov ecx, esi
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001775
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001768
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4e8], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQFACT_INFRA
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100017a5
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001798
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4ec], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQLITE_CORE
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100017d5
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x100017c8
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4f0], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQLITE_TM
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001805
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x100017f8
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4f4], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQLITE_VDUT
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001835
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001828
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4f8], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQMEASURE_SCPI
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001865
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001858
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c524], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQMEASURE
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001895
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001888
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4fc], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_IQMEASURE_SCPI
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100018c5
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x100018b8
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c524], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_DUT_DLL
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100018f5
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x100018e8
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c500], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_DUT1
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001925
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001918
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c50c], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_DUT2
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001955
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001948
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c510], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_DUT3
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001985
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001978
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c514], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_DUT4
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100019b5
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x100019a8
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c518], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOGGER_DEBUGGING_MODE
call fcn.100046e0
cmp eax, 0xffffffff
je 0x100019e5
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x100019d8
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4e4], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOGGER_LEVEL
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001ac9
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push str.NONE
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001a30
cmp byte [0x1000c4d5], 0
jne 0x10001ee0
mov dword [0x1000b044], 1
jmp 0x10001ee0
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push str.ERROR
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001a63
cmp byte [0x1000c4d5], 0
jne 0x10001ee0
mov dword [0x1000b044], 2
jmp 0x10001ee0
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push str.WARNING
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001a96
cmp byte [0x1000c4d5], 0
jne 0x10001ee0
mov dword [0x1000b044], 3
jmp 0x10001ee0
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push str.INFORMATION
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001a47
cmp byte [0x1000c4d5], 0
jne 0x10001ee0
mov dword [0x1000b044], 4
jmp 0x10001ee0
push ecx
mov ecx, dword [esp + 0x14]
push str.PRINT_INPUT_INFO
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001b79
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push 0x10008408
call fcn.100046e0
cmp eax, 0xffffffff
jne 0x10001b0f
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push 0x1000840c
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001b2b
cmp byte [0x1000c4d5], 0
jne 0x10001ee0
mov dword [0x1000b040], 2
jmp 0x10001ee0
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push 0x10008410
call fcn.10004c80
cmp eax, 0xffffffff
jne 0x10001b5d
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push 0x10008414
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001a47
cmp byte [0x1000c4d5], 0
jne 0x10001ee0
mov dword [0x1000b040], 1
jmp 0x10001ee0
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_ALL_FOR_DEBUG
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001ba9
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001b9c
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c54c], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.DISABLE_LOG_ALL
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001bd9
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001bcc
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c4cc], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_WIFIMPS_RESULT_FORMAT
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001c09
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001bfc
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c504], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_SHOW_POWER_LEVEL
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001c39
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001c2c
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c508], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_SCPI_CONTROL
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001c6e
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001c5c
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c520], eax
mov dword [0x1000c524], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_SCPI_SEPARATED
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001c9e
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001c91
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c51c], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_TIMESTAMP
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001cce
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001cc1
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c528], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_LINE_TIMESTAMP
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001cfe
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001cf1
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c52c], eax
jmp 0x10001edd
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_FILEPATH
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001dbf
push str.__t_n_r
lea ecx, [esp + 0x24]
call fcn.100044e0
push 1
push 1
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x1c]
add eax, 0x18
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10006690
add esp, 0x14
lea ecx, [esp + 0x50]
call fcn.10004630
lea ecx, [esp + 0x20]
call fcn.10004630
push 0x100084cc
lea ecx, [esp + 0x24]
call fcn.100044e0
push 1
push 1
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x1c]
add eax, 0x18
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10006690
add esp, 0x14
lea ecx, [esp + 0x50]
call fcn.10004630
lea ecx, [esp + 0x20]
call fcn.10004630
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001da1
mov eax, dword [eax]
push eax
push 0x100084d0
push 0x1000
push str.._Log
call dword [sym.imp.MSVCR110.dll_sprintf_s]
add esp, 0x10
jmp 0x10001ee0
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_FILENAME
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001e3e
push str.__t_n_r
lea ecx, [esp + 0x24]
call fcn.100044e0
push 1
push 1
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x1c]
add eax, 0x18
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10006690
add esp, 0x14
lea ecx, [esp + 0x50]
call fcn.10004630
lea ecx, [esp + 0x20]
call fcn.10004630
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001e20
mov eax, dword [eax]
push eax
push 0x100084d0
push 0x1000
push str.Log_all
call dword [sym.imp.MSVCR110.dll_sprintf_s]
add esp, 0x10
jmp 0x10001ee0
push ecx
mov ecx, dword [esp + 0x14]
push str.ENABLE_ABSOLUTE_PATH
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001eb2
push str.__t_n_r
lea ecx, [esp + 0x24]
call fcn.100044e0
push 1
push 1
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x1c]
add eax, 0x18
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10006690
add esp, 0x14
lea ecx, [esp + 0x50]
call fcn.10004630
lea ecx, [esp + 0x20]
call fcn.10004630
mov ecx, dword [esp + 0x10]
add ecx, 0x18
push ecx
push 0x10008408
call fcn.100046e0
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov dword [0x1000c4d8], ecx
jmp 0x10001ee0
push ecx
mov ecx, dword [esp + 0x14]
push str.LOG_RUN_INTERVALS
call fcn.100046e0
cmp eax, 0xffffffff
je 0x10001ee0
mov eax, dword [esp + 0x10]
add eax, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10001ed5
mov eax, dword [eax]
push eax
call edi
mov dword [0x1000c548], eax
add esp, 4
push dword [esp + 0x1c]
call dword [sym.imp.MSVCR110.dll_feof]
add esp, 4
test eax, eax
je 0x100015f1
push dword [esp + 0x1c]
call dword [sym.imp.MSVCR110.dll_fclose]
mov esi, dword [esp + 0x14]
mov edi, dword [sym.imp.MSVCR110.dll_void___cdecl_operator_delete_void__]
add esp, 4
test esi, esi
je 0x10001f5f
mov ebx, dword [esp + 0x14]
cmp esi, ebx
je 0x10001f41
cmp dword [esi + 0x14], 0x10
jb 0x10001f25
push dword [esi]
call edi
add esp, 4
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
add esi, 0x18
cmp esi, ebx
jne 0x10001f18
mov esi, dword [esp + 0x10]
push esi
call edi
add esp, 4
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
cmp dword [esp + 0x4c], 0x10
jb 0x10001f91
push dword [esp + 0x38]
call edi
add esp, 4
jmp 0x10001f91
cmp byte [0x1000c4d5], 0
mov eax, dword [0x1000b044]
mov ecx, 2
cmove eax, ecx
mov dword [0x1000b044], eax
mov byte [0x1000c4d5], 0
cmp dword [0x1000c4e4], 0
mov dword [0x1000c520], 0
jne 0x10001fe0
mov dword [0x1000c4f0], 0
mov dword [0x1000c4f4], 0
mov dword [0x1000c4f8], 0
mov dword [0x1000c500], 0
mov dword [0x1000c4fc], 0
mov dword [0x1000c524], 0
push str.._Log
mov dword [0x1000c488], 1
mov dword [0x1000c48c], 1
mov dword [0x1000c490], 1
mov dword [0x1000c498], 1
mov dword [0x1000c494], 1
mov dword [0x1000c4bc], 1
call dword [sym.imp.MSVCR110.dll__mkdir]
mov esi, eax
add esp, 4
test esi, esi
je 0x1000203d
call dword [sym.imp.MSVCR110.dll__errno]
cmp dword [eax], 0x11
jne 0x10002059
xor esi, esi
call sym.IQlite_Logger.dll_LOGGER_CheckPrivilege
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1060]
xor ecx, esp
call fcn.10006ab7
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x106c]
pop edi
pop esi
pop ebx
xor ecx, esp
mov eax, 7
call fcn.10006ab7
mov esp, ebp
pop ebp
ret