Function at 0x556470
Capabilities:
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5815f5
mov eax, dword fs:[0]
push eax
sub esp, 0x758
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 ebx, ecx
mov esi, edx
push 0x69d3c8
mov dword [ebp - 0x758], ebx
mov dword [ebp - 0x764], esi
call fcn.00528970
push 0x69d3c8
call dword [sym.imp.MSVCR100.dll_atoi]
mov edi, eax
xor ecx, ecx
mov edx, 0x2c
mul edx
seto cl
mov dword [ebx + 4], edi
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.00576240
add esp, 8
mov dword [ebp - 0x75c], eax
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp eax, ebx
je 0x556518
push fcn.005552a0
push 0x555270
push edi
lea esi, [eax + 4]
push 0x2c
push esi
mov dword [eax], edi
call fcn.00576426
mov eax, esi
jmp 0x55651a
xor eax, eax
mov esi, dword [ebp - 0x758]
mov dword [esi + 8], eax
lea eax, [ebp - 0x620]
mov dword [ebp - method.CMHFile.virtual_0], vtable.CMHFile.0
call fcn.004061b0
push 0x104
xor eax, eax
lea ecx, [ebp - 0x724]
push ebx
push ecx
mov dword [ebp - 0x750], ebx
mov dword [ebp - 0x73c], eax
mov dword [ebp - 0x738], eax
mov dword [ebp - 0x734], eax
mov word [ebp - 0x730], bx
mov dword [ebp - 0x72c], ebx
mov dword [ebp - 0x740], ebx
mov dword [ebp - 0x728], ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x748], ebx
mov dword [ebp - 0x744], ebx
mov edi, 1
mov dword [ebp - 4], edi
mov dword [ebp - 0x760], ebx
cmp dword [esi + 4], ebx
jbe 0x55675b
jmp 0x5565b0
mov esi, dword [ebp - 0x764]
push 0x69d3c8
call fcn.00528970
push 0x69d3c8
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
lea edx, [ebp - 0x110]
push edx
mov dword [ebp - 0x75c], eax
call fcn.00528970
mov ecx, str.NULL
lea eax, [ebp - 0x110]
jmp 0x5565f0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x556610
cmp dl, bl
je 0x55660c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x556610
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x5565f0
xor eax, eax
jmp 0x556615
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x556739
cmp dword [0x6573f0], edi
je 0x556637
mov eax, dword [0x6573ac]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov dword [0x6573f0], edi
push 0x11
lea ecx, [ebp - 0x110]
push ecx
mov ecx, 0x587394
lea edi, [ebp - 0x754]
call fcn.00528720
mov esi, eax
cmp dword [0x6573f0], ebx
je 0x55666d
mov edx, dword [0x6573a8]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov dword [0x6573f0], ebx
cmp esi, ebx
je 0x556739
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x758]
imul ecx, ecx, 0x2c
mov eax, dword [ebp + 8]
add ecx, dword [edx + 8]
push eax
lea edx, [ebp - 0x754]
call fcn.00555380
test eax, eax
jne 0x5566c6
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x210]
push str.Error_In_Loding__s_File..._plz_Check_it__
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
push ebx
push ebx
lea edx, [ebp - 0x210]
push edx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [ebp - 0x750]
cmp eax, ebx
je 0x5566e0
push eax
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
mov dword [ebp - 0x750], ebx
mov eax, dword [ebp - 0x72c]
cmp eax, ebx
je 0x5566fa
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov dword [ebp - 0x72c], ebx
mov ecx, dword [ebp - 0x744]
mov dword [ebp - 0x740], ebx
mov dword [ebp - 0x728], ebx
cmp ecx, ebx
je 0x556739
mov eax, dword [ebp - 0x748]
mov edx, dword [eax]
push ecx
push eax
mov eax, dword [edx + 0x54]
call eax
mov eax, dword [ebp - 0x748]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [ebp - 0x744], ebx
mov dword [ebp - 0x748], ebx
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x758]
mov edi, 1
add eax, edi
mov dword [ebp - 0x760], eax
cmp eax, dword [ecx + 4]
jb 0x5565b0
mov dword [ebp - method.CMHFile.virtual_0], vtable.CMHFile.0
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x750]
cmp eax, ebx
je 0x556786
push eax
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
mov dword [ebp - 0x750], ebx
mov eax, dword [ebp - 0x72c]
cmp eax, ebx
je 0x5567a0
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov dword [ebp - 0x72c], ebx
mov ecx, dword [ebp - 0x744]
mov dword [ebp - 0x740], ebx
mov dword [ebp - 0x728], ebx
cmp ecx, ebx
je 0x5567d3
mov eax, dword [ebp - 0x748]
mov edx, dword [eax]
push ecx
push eax
mov eax, dword [edx + 0x54]
call eax
mov eax, dword [ebp - 0x748]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, edi
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 4