Function at 0x10073170
Capabilities:
Create directory

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008426e
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x60
mov eax, dword [0x1009c018]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x4c], 0
mov edi, dword [0x100a0278]
mov esi, dword [0x100a0274]
cmp esi, edi
je 0x100731d9
mov ecx, esi
call fcn.10005a90
add esi, 0x18
cmp esi, edi
jne 0x100731c5
mov esi, dword [0x100a0274]
mov dword [0x100a0278], esi
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x44]
call fcn.1000fdc0
mov byte [ebp - 4], 1
push ecx
push 0x10088460
lea ecx, [ebp - 0x44]
call fcn.100118e0
push eax
push 0
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x44]
call fcn.10011830
mov dword [ebp - 0x4c], 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x44]
call fcn.10005a90
push str.1_kejconfigs
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x2c]
call fcn.1000acc0
add esp, 4
mov byte [ebp - 4], 2
mov eax, 1
mov dword [ebp - 0x4c], eax
and eax, 0xfffffffe
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.10005a90
lea ecx, [ebp - 0x2c]
call fcn.1000ff20
test al, al
jne 0x1007329d
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__mkdir]
add esp, 4
cmp eax, 0xffffffff
jne 0x1007329d
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push str.Unable_to_create_directory__s__missing_permissions__n
push 2
call fcn.10015a80
add esp, 0xc
mov byte [ebp - 0x45], 0
jmp 0x100734e5
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1009cb2c]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x100a397c]
cmp eax, dword [esi + 4]
jle 0x100732f1
push 0x100a397c
call fcn.1007e746
add esp, 4
cmp dword [0x100a397c], 0xffffffff
jne 0x100732f1
mov byte [ebp - 4], 4
push 0x10086820
call fcn.1007eb21
add esp, 4
mov byte [ebp - 4], 3
push 0x100a397c
call fcn.1007e6fc
add esp, 4
mov edx, 0x100a0280
lea ecx, [ebp - 0x2c]
call fcn.100105c0
mov eax, dword [0x100a3980]
cmp eax, dword [esi + 4]
jle 0x10073361
push 0x100a3980
call fcn.1007e746
add esp, 4
cmp dword [0x100a3980], 0xffffffff
jne 0x10073361
mov byte [ebp - 4], 5
push 0x10086810
mov dword [0x100a3984], 0
mov dword [0x100a3994], 0
mov dword [0x100a3998], 0xf
call fcn.1007eb21
add esp, 4
mov byte [ebp - 4], 3
push 0x100a3980
call fcn.1007e6fc
add esp, 4
mov eax, dword [0x100a0284]
mov edi, dword [0x100a0280]
mov dword [ebp - 0x54], eax
cmp edi, eax
je 0x100734e1
nop word [eax + eax]
mov edx, edi
lea ecx, [ebp - 0x70]
call fcn.10010ab0
mov byte [ebp - 4], 6
cmp dword [eax + 0x14], 0x10
mov edx, dword [eax + 0x10]
jb 0x10073399
mov eax, dword [eax]
push 4
push str..cfg
mov ecx, eax
call fcn.1000e950
add esp, 8
mov esi, eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.10005a90
test esi, esi
jne 0x100734d5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x58], esp
push edi
call fcn.10008010
mov byte [ebp - 4], 7
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x44]
call fcn.10010c50
add esp, 0x18
mov esi, eax
mov byte [ebp - 4], 8
cmp esi, 0x100a3984
je 0x10073421
mov ecx, 0x100a3984
call fcn.10005a90
movups xmm0, xmmword [esi]
movups xmmword [0x100a3984], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x100a3994], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x44]
call fcn.10005a90
cmp dword [0x100a3998], 0x10
mov eax, 0x100a3984
mov edx, dword [0x100a3994]
jb 0x10073464
mov esi, dword [0x100a3984]
lea eax, [edx - 4]
add eax, esi
mov ecx, eax
sub ecx, esi
sub esi, eax
mov eax, edx
add esi, edx
sub eax, ecx
cmp eax, esi
cmovb esi, eax
mov eax, dword [0x100a3984]
jmp 0x10073489
lea esi, [eax + edx]
mov eax, 0x100a3984
add eax, 0xfffffffc
add eax, edx
mov ecx, eax
sub esi, eax
sub ecx, 0x100a3984
mov eax, edx
sub eax, ecx
cmp eax, esi
cmovb esi, eax
mov eax, 0x100a3984
sub edx, esi
mov dword [ebp - 0x50], ecx
add ecx, eax
mov dword [0x100a3994], edx
sub edx, dword [ebp - 0x50]
inc edx
push edx
lea eax, [ecx + esi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [0x100a0278]
add esp, 0xc
push 0x100a3984
cmp eax, dword [0x100a027c]
je 0x100734ca
mov ecx, eax
call fcn.10008010
add dword [0x100a0278], 0x18
jmp 0x100734d5
push eax
mov ecx, 0x100a0274
call fcn.10011d60
add edi, 0x18
cmp edi, dword [ebp - 0x54]
jne 0x10073380
mov byte [ebp - 0x45], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.10005a90
mov al, byte [ebp - 0x45]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1007e605
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4