Function at 0x100eb626
Capabilities:
Set current directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x234
mov eax, dword [0x101042d0]
xor eax, esp
mov dword [esp + 0x230], eax
push ebx
push esi
push edi
test ecx, ecx
jne 0x100eb7e0
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x101042e0]
mov esi, eax
call fcn.100290c0
mov ecx, dword [0x101042e4]
xor ebx, ebx
mov dword [esp + 0xc], eax
cmp ecx, 0xffffffff
je 0x100eb69f
call fcn.100290c0
mov edi, eax
test edi, edi
je 0x100eb699
cmp edi, 0xffffffff
jne 0x100eb6fe
mov edi, ebx
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
test edi, edi
jne 0x100eb713
mov edi, 0x101049f8
jmp 0x100eb716
mov ecx, dword [0x101042e4]
or edx, 0xffffffff
call fcn.1003b000
test eax, eax
je 0x100eb681
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
pop ecx
mov edi, eax
pop ecx
mov ecx, dword [0x101042e4]
test edi, edi
jne 0x100eb6d5
xor edx, edx
call fcn.1003b000
push ebx
call sym.ucrtbase.dll__free_base
pop ecx
jmp 0x100eb681
mov edx, edi
call fcn.1003b000
test eax, eax
jne 0x100eb6f0
mov ecx, dword [0x101042e4]
xor edx, edx
call fcn.1003b000
push edi
jmp 0x100eb6cd
mov ecx, edi
call fcn.1003e545
push ebx
call sym.ucrtbase.dll__free_base
pop ecx
imul eax, dword [esp + 0xc], 0x364
add eax, edi
mov dword [esp + 0xc], eax
mov edi, eax
jmp 0x100eb683
add edi, 0x14
mov dword [edi], ebx
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x101042e0]
mov esi, eax
call fcn.100290c0
mov ecx, dword [0x101042e4]
mov dword [esp + 0xc], eax
cmp ecx, 0xffffffff
je 0x100eb752
call fcn.100290c0
mov edi, eax
test edi, edi
je 0x100eb74c
cmp edi, 0xffffffff
je 0x100eb7bb
jmp 0x100eb7b1
mov ecx, dword [0x101042e4]
or edx, 0xffffffff
call fcn.1003b000
test eax, eax
je 0x100eb7bb
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
pop ecx
mov edi, eax
pop ecx
mov ecx, dword [0x101042e4]
test edi, edi
jne 0x100eb788
xor edx, edx
call fcn.1003b000
push ebx
call sym.ucrtbase.dll__free_base
pop ecx
jmp 0x100eb7bb
mov edx, edi
call fcn.1003b000
test eax, eax
jne 0x100eb7a3
mov ecx, dword [0x101042e4]
xor edx, edx
call fcn.1003b000
push edi
jmp 0x100eb780
mov ecx, edi
call fcn.1003e545
push ebx
call sym.ucrtbase.dll__free_base
pop ecx
imul ebx, dword [esp + 0xc], 0x364
add ebx, edi
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
test ebx, ebx
jne 0x100eb7cd
mov ebx, 0x101049f4
jmp 0x100eb7d0
add ebx, 0x10
mov dword [ebx], 0x16
call sym.ucrtbase.dll__invalid_parameter_noinfo
or eax, 0xffffffff
jmp 0x100eb846
push ecx
call dword [sym.imp.api_ms_win_core_processenvironment_l1_1_0.dll_SetCurrentDirectoryW]
test eax, eax
jne 0x100eb7fa
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, eax
call fcn.10042889
jmp 0x100eb7db
mov ecx, 0x105
lea eax, [esp + 0x28]
mov dword [esp + 0x14], ecx
xor ebx, ebx
mov dword [esp + 0x1c], ecx
push ecx
lea ecx, [esp + 0x14]
mov dword [esp + 0x14], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], ebx
mov byte [esp + 0x28], bl
call fcn.100eb2be
test eax, eax
je 0x100eb830
or esi, 0xffffffff
jmp 0x100eb83b
mov ecx, dword [esp + 0x18]
call fcn.100eb8bb
mov esi, eax
lea ecx, [esp + 0x10]
call fcn.100978b6
mov eax, esi
mov ecx, dword [esp + 0x23c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10068820
mov esp, ebp
pop ebp
ret