Function at 0x450390
Capabilities:
Set current directory

Disassembly:
push ebx
push esi
xor ebx, ebx
push edi
push ebx
call fcn.0043b320
mov ecx, dword [0x47d798]
add esp, 4
xor edi, edi
cmp ecx, ebx
jle 0x4503f4
mov eax, 0x47d798
test eax, eax
je 0x4503ef
cmp edi, ecx
jge 0x4503ef
cmp edi, ebx
jl 0x4503ef
mov esi, dword [0x47d7a4]
mov edx, dword [0x47d7a8]
imul esi, edi
add esi, edx
cmp esi, ebx
je 0x4503ef
mov eax, dword [esi + 0x2b4]
cmp eax, ebx
je 0x4503ef
push eax
call fcn.00450d9f
mov dword [esi + 0x2b4], ebx
mov ecx, dword [0x47d798]
add esp, 4
inc edi
cmp edi, ecx
jl 0x4503aa
push 0x47d798
call fcn.00407f20
mov eax, dword [0x47de54]
add esp, 4
cmp eax, ebx
je 0x450419
push eax
call fcn.00450d9f
add esp, 4
mov dword [0x47de54], ebx
cmp dword [0x48546c], ebx
je 0x45050a
mov eax, dword [0x480ed8]
mov dword [0x4854a8], ebx
cmp eax, 2
jne case.0x450443.8
mov ecx, dword [0x484998]
lea eax, [ecx - 1]
cmp eax, 8
ja case.0x450443.8
jmp dword [eax*4 + 0x450708]
mov dword [0x4819c8], ebx
jmp case.0x450443.8
mov dword [0x4819c8], ebx
mov dword [0x481dd8], ebx
jmp case.0x450443.8
mov dword [0x4819c8], ebx
jmp 0x450474
mov dword [0x4819c8], ebx
mov dword [0x481dd8], ebx
call fcn.00416980
push 0x4855a8
call fcn.00416030
add esp, 4
call fcn.0044e380
mov eax, dword [0x4853e0]
cmp eax, ebx
je 0x4504a3
push eax
call fcn.00450d9f
add esp, 4
mov dword [0x4853e0], ebx
mov eax, dword [0x4853e8]
cmp eax, ebx
je 0x4504bb
push eax
call fcn.00450d9f
add esp, 4
mov dword [0x4853e8], ebx
mov eax, dword [0x4853e4]
cmp eax, ebx
je 0x4504d3
push eax
call fcn.00450d9f
add esp, 4
mov dword [0x4853e4], ebx
mov ecx, 0xd
xor eax, eax
mov edi, 0x4853d0
rep stosd dword es:[edi], eax
call fcn.0041eb20
mov eax, dword [0x485500]
mov dword [0x4853b4], ebx
cmp eax, ebx
mov dword [0x48546c], ebx
mov dword [0x46b7b0], 1
jne 0x45050a
call fcn.0040ca50
mov eax, dword [0x484ee8]
xor edi, edi
cmp eax, ebx
mov dword [0x485530], ebx
jle 0x450568
mov edx, 0x484ee8
test edx, edx
je 0x45055e
cmp edi, eax
jge 0x45055e
cmp edi, ebx
jl 0x45055e
mov esi, dword [0x484ef4]
mov ecx, dword [0x484ef8]
imul esi, edi
add esi, ecx
cmp esi, ebx
je 0x45055e
push esi
call dword [0x481530]
mov eax, dword [esi + 0x54]
add esp, 4
cmp eax, ebx
je 0x45055e
push eax
call fcn.00450d9f
add esp, 4
mov dword [esi + 0x54], ebx
mov eax, dword [0x484ee8]
inc edi
cmp edi, eax
jl 0x45051b
mov eax, dword [0x485530]
push 0x484ee8
mov dword [0x484ee8], eax
call fcn.00407f20
push 0x481f10
call fcn.00407f20
push 0x483a40
call fcn.00407f20
push 0x483a28
call fcn.00407c50
push 0x4839d8
call fcn.00407f20
push 0x484ec8
call fcn.00407f20
push 0x47f8d0
mov dword [0x46b7c4], 0xffffffff
call fcn.00407f20
push 0x47db08
call fcn.00407f20
mov eax, dword [0x485500]
add esp, 0x20
cmp eax, ebx
jne 0x450606
push ebx
push ebx
push ebx
call dword [0x483ee8]
push 1
call dword [0x47db00]
mov ecx, dword [0x4849bc]
push ecx
call dword [0x47f770]
call dword [0x4816b8]
call fcn.0040c810
call fcn.0040baf0
cmp dword [0x485500], 2
jne 0x450614
call fcn.0040f3d0
cmp dword [0x485500], 1
jne 0x450622
call fcn.0040fb30
mov ecx, dword [0x47d688]
cmp ecx, ebx
je 0x450676
xor esi, esi
cmp esi, 0x1800
jge 0x450676
mov eax, dword [esi + ecx + 4]
cmp eax, ebx
je 0x450653
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [0x47d688]
mov dword [esi + eax + 4], ebx
mov ecx, dword [0x47d688]
mov eax, dword [esi + ecx]
cmp eax, ebx
je 0x45066f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [0x47d688]
mov dword [esi + edx], ebx
mov ecx, dword [0x47d688]
add esi, 0x60
cmp ecx, ebx
jne 0x45062e
mov eax, dword [0x47d694]
cmp eax, ebx
je 0x450691
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [0x47d688]
mov dword [0x47d694], ebx
mov eax, dword [0x47d698]
cmp eax, ebx
je 0x4506ac
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov ecx, dword [0x47d688]
mov dword [0x47d698], ebx
mov eax, dword [0x47d690]
cmp eax, ebx
je 0x4506c7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [0x47d688]
mov dword [0x47d690], ebx
cmp ecx, ebx
je 0x4506da
push ecx
call fcn.00450d9f
add esp, 4
mov dword [0x47d688], ebx
mov eax, dword [0x4854ec]
pop edi
pop esi
cmp eax, ebx
pop ebx
je 0x4506eb
call fcn.00447e30
push 0x483eec
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
call fcn.00408a90
push 0x483eec
call fcn.00409460
pop ecx
ret