Function at 0x10032b6
Capabilities:
Set current directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x254
mov eax, dword [0x1009004]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
push 0xffffffffffffffec
push dword [0x10095a0]
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov edi, dword [0x1009bcc]
and eax, 0x400000
xor esi, esi
mov dword [ebp - 0x218], eax
cmp edi, esi
je 0x100359e
push ebx
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [edi + 0x20], esi
je 0x1003592
cmp dword [edi + 0x1c], esi
jne 0x1003592
push dword [edi + 4]
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push 0x3c
lea eax, [ebp - 0x254]
push esi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
cmp dword [ebp - 0x238], 0xffffffff
mov dword [ebp - 0x254], 5
je 0x1003350
mov dword [ebp - 0x254], 7
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], edi
mov dword [ebp - 0x24c], esi
mov eax, dword [edi]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0x254]
push eax
push esi
push 0x104d
push dword [0x1009020]
mov dword [ebp - 0x250], 0x7fffffff
call ebx
mov dword [ebp - 0x250], eax
xor eax, eax
inc eax
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x24c], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0x254]
push eax
push esi
push 0x104c
push dword [0x1009020]
call ebx
push 0x32
push 0x104
lea eax, [ebp - 0x20c]
push eax
call fcn.01005682
mov esi, dword [ebp - 0x218]
neg esi
sbb esi, esi
xor ecx, ecx
push ecx
push ecx
push ecx
lea eax, [edi + 0x2c]
and esi, 0x20
push eax
inc esi
push esi
push 0x400
call dword [sym.imp.KERNEL32.dll_GetDateFormatW]
mov dword [ebp - 0x214], eax
test eax, eax
je 0x1003471
lea eax, [eax + eax + 2]
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebp - 0x210], eax
test eax, eax
je 0x1003471
push dword [ebp - 0x214]
push eax
push 0
lea eax, [edi + 0x2c]
push eax
push esi
push 0x400
call dword [sym.imp.KERNEL32.dll_GetDateFormatW]
test eax, eax
je 0x100345c
push dword [ebp - 0x210]
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0100170e
test eax, eax
jge 0x100345c
cmp eax, 0x8007007a
je 0x100345c
xor eax, eax
mov word [ebp - 0x20c], ax
push dword [ebp - 0x210]
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0x254]
push eax
push 0
mov esi, 0x104c
push esi
push dword [0x1009020]
mov dword [ebp - 0x254], 1
mov dword [ebp - 0x24c], 2
call ebx
mov eax, dword [edi + 0x14]
test eax, eax
je 0x10034d7
push eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
call fcn.0100170e
test eax, eax
jge 0x10034ea
cmp eax, 0x8007007a
je 0x10034ea
xor eax, eax
mov word [ebp - 0x20c], ax
jmp 0x10034ea
push 0x32
push 0x104
lea eax, [ebp - 0x20c]
push eax
call fcn.01005682
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0x254]
push eax
push 0
push esi
push dword [0x1009020]
mov dword [ebp - 0x254], 1
mov dword [ebp - 0x24c], 3
call ebx
mov eax, dword [edi + 8]
test eax, eax
je 0x100354b
push eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
call fcn.0100170e
test eax, eax
jge 0x100355e
cmp eax, 0x8007007a
je 0x100355e
xor eax, eax
mov word [ebp - 0x20c], ax
jmp 0x100355e
push 0x1f
push 0x104
lea eax, [ebp - 0x20c]
push eax
call fcn.01005682
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0x254]
push eax
push 0
push esi
push dword [0x1009020]
mov dword [ebp - 0x254], 1
mov dword [ebp - 0x24c], 4
call ebx
xor esi, esi
mov edi, dword [edi + 0x3c]
cmp edi, esi
jne 0x10032fd
pop ebx
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.01007194
leave
ret