Function at 0x4047d0
Capabilities:
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
lea ecx, [ebp + 8]
push esi
sub esp, 8
call fcn.00414200
mov ecx, eax
cmp ecx, 0xffffffff
jne 0x404816
push 0
push 0x43b4fb
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00414b30
lea eax, [ebp - 0x30]
mov esi, 1
xor ecx, ecx
jmp 0x40484c
cmp dword [ebp + 0x18], ecx
lea eax, [ebp + 8]
mov dword [ebp - 8], 0
cmovb ecx, dword [ebp + 0x18]
cmp dword [ebp + 0x1c], 0x10
push ecx
cmovae eax, dword [ebp + 8]
lea ecx, [ebp - 0x18]
push eax
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
call fcn.00414b30
xor esi, esi
lea eax, [ebp - 0x18]
lea ecx, [esi + 2]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x48], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x38], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
test ecx, ecx
je 0x4048a6
mov edx, dword [ebp - 4]
cmp edx, 0x10
jb 0x4048a6
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40489c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404aab
push edx
push ecx
call fcn.00415fcc
add esp, 8
test esi, esi
je 0x4048de
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x4048de
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4048d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404aab
push edx
push ecx
call fcn.00415fcc
add esp, 8
cmp dword [ebp - 0x34], 0x10
lea eax, [ebp - 0x48]
cmovae eax, dword [ebp - 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x404924
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40491a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404aab
push edx
push ecx
call fcn.00415fcc
add esp, 8
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x43f968
call fcn.004147b0
lea ecx, [ebp - 0x18]
call fcn.00402fb0
add esp, 0x18
push eax
lea eax, [ebp + 8]
push eax
sub esp, 0x18
mov ecx, esp
push 0x43fd10
call fcn.004147b0
lea ecx, [ebp - 0x30]
call fcn.00402fb0
add esp, 0x18
lea ecx, [ebp - 0x48]
mov edx, eax
call fcn.00414d60
add esp, 4
mov edx, eax
mov ecx, esi
call fcn.00414c70
sub esp, 0x14
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x440028
call fcn.004147b0
mov ecx, esi
call fcn.00402fb0
mov ecx, esp
push 1
push str.0123456789
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
call fcn.00414b30
call fcn.00404130
mov edx, dword [ebp - 0x34]
add esp, 0x48
cmp edx, 0x10
jb 0x4049ee
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4049e4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404ab0
push edx
push ecx
call fcn.00415fcc
add esp, 8
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
cmp edx, 0x10
jb 0x404a34
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404a2a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404ab0
push edx
push ecx
call fcn.00415fcc
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x404a76
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404a6c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404ab0
push edx
push ecx
call fcn.00415fcc
add esp, 8
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x404aa6
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404a9c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404ab5
push edx
push ecx
call fcn.00415fcc
add esp, 8
pop esi
mov esp, ebp
pop ebp
ret
call fcn.0041bb2d
call fcn.0041bb2d
call fcn.0041bb2d
int3