Function at 0x471980
Capabilities:
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57d371
mov eax, dword fs:[0]
push eax
sub esp, 0x69c
mov eax, dword [0x5b107c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, 0xb
mov dword [ebp - 0x69c], eax
cmp dword [0x6573f0], esi
je 0x4719d7
mov ecx, dword [0x6573d4]
push ecx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov dword [0x6573f0], esi
mov esi, vtable.CMHFile.0
lea eax, [ebp - 0x564]
mov dword [ebp - 0x698], esi
call fcn.004061b0
xor ebx, ebx
push 0x104
xor eax, eax
lea edx, [ebp - 0x668]
push ebx
push edx
mov dword [ebp - 0x694], ebx
mov dword [ebp - 0x680], eax
mov dword [ebp - 0x67c], eax
mov dword [ebp - 0x678], eax
mov word [ebp - 0x674], bx
mov dword [ebp - 0x670], ebx
mov dword [ebp - 0x684], ebx
mov dword [ebp - 0x66c], ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x68c], ebx
mov dword [ebp - 0x688], ebx
movzx eax, word [ebp + 0xc]
push eax
lea ecx, [ebp - 0x50]
push str.Minimap_d.bin
push ecx
mov dword [ebp - 4], ebx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
push 0x10
lea edx, [ebp - 0x50]
push edx
mov ecx, 0x587394
lea edi, [ebp - 0x698]
call fcn.00528720
mov eax, dword [ebp - 0x690]
sub eax, ebx
je 0x471ae1
dec eax
je 0x471ad7
dec eax
jne 0x471a97
push str.MHFile.cpp
xor ecx, ecx
mov edx, 0x268
call fcn.0052cb10
add esp, 4
xor edi, edi
mov dword [ebp - 0x6a0], edi
nop
lea ecx, [ebp - 0x150]
push ecx
lea esi, [ebp - 0x698]
call fcn.00528970
mov eax, dword [ebp - 0x690]
sub eax, ebx
je 0x471b29
dec eax
jne 0x471bc1
mov edx, dword [ebp - 0x678]
cmp edx, dword [ebp - 0x684]
je 0x471bd8
jmp 0x471b45
xor eax, eax
cmp dword [ebp - 0x66c], ebx
jmp 0x471ae9
xor eax, eax
cmp dword [ebp - 0x694], ebx
setne al
cmp eax, ebx
jne 0x471a97
cmp dword [0x6573f0], ebx
je 0x471b0a
mov eax, dword [0x6573a8]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov dword [0x6573f0], ebx
mov dword [ebp - 0x698], esi
lea esi, [ebp - 0x698]
mov dword [ebp - 4], 1
call fcn.00528910
xor eax, eax
jmp 0x471cef
mov eax, dword [ebp - 0x694]
push eax
call dword [sym.imp.MSVCR100.dll_feof]
add esp, 4
neg eax
sbb eax, eax
neg eax
jne 0x471bd8
push 0x69d3c8
lea esi, [ebp - 0x698]
call fcn.00528970
push 0x69d3c8
call dword [sym.imp.MSVCR100.dll_atoi]
mov ecx, dword [ebp - 0x69c]
add esp, 4
push 0x69d3c8
mov dword [ecx + 0x274], eax
call fcn.00528970
push 0x69d3c8
call dword [sym.imp.MSVCR100.dll_atoi]
mov ecx, dword [ebp - 0x69c]
add esp, 4
mov dword [ecx + 0x278], eax
cmp edi, 1
jne 0x471baf
lea esi, [ecx + 0x254]
lea edi, [ebp - 0x150]
call fcn.0043f400
mov edi, dword [ebp - 0x6a0]
inc edi
mov dword [ebp - 0x6a0], edi
cmp edi, 2
jl 0x471aa0
jmp 0x471bd8
dec eax
jne 0x471bd8
push str.MHFile.cpp
xor ecx, ecx
mov edx, 0x258
call fcn.0052cb10
add esp, 4
mov eax, dword [ebp - 0x694]
mov esi, dword [sym.imp.MSVCR100.dll_fclose]
cmp eax, ebx
je 0x471bf4
push eax
call esi
add esp, 4
mov dword [ebp - 0x694], ebx
mov eax, dword [ebp - 0x670]
mov edi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
cmp eax, ebx
je 0x471c10
push eax
call edi
add esp, 4
mov dword [ebp - 0x670], ebx
mov ecx, dword [ebp - 0x688]
mov dword [ebp - 0x684], ebx
mov dword [ebp - 0x66c], ebx
cmp ecx, ebx
je 0x471c4f
mov eax, dword [ebp - 0x68c]
mov edx, dword [eax]
push ecx
push eax
mov eax, dword [edx + 0x54]
call eax
mov eax, dword [ebp - 0x68c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [ebp - 0x688], ebx
mov dword [ebp - 0x68c], ebx
cmp dword [0x6573f0], ebx
je 0x471c69
mov eax, dword [0x6573a8]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov dword [0x6573f0], ebx
mov cx, word [ebp + 0xc]
mov edx, dword [ebp - 0x69c]
mov word [edx + 0x2b0], cx
mov dword [ebp - method.CMHFile.virtual_0], vtable.CMHFile.0
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x694]
cmp eax, ebx
je 0x471ca1
push eax
call esi
add esp, 4
mov dword [ebp - 0x694], ebx
mov eax, dword [ebp - 0x670]
cmp eax, ebx
je 0x471cb7
push eax
call edi
add esp, 4
mov dword [ebp - 0x670], ebx
mov ecx, dword [ebp - 0x688]
mov dword [ebp - 0x684], ebx
mov dword [ebp - 0x66c], ebx
cmp ecx, ebx
je 0x471cea
mov eax, dword [ebp - 0x68c]
mov edx, dword [eax]
push ecx
push eax
mov eax, dword [edx + 0x54]
call eax
mov eax, dword [ebp - 0x68c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005762ee
mov esp, ebp
pop ebp
ret 8