Function at 0x4062d8
Capabilities:
Create directory
Set environment variable

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x430b11
push eax
mov dword fs:[0], esp
sub esp, 0x2bc
push ebx
push ebp
push esi
push edi
push str.CNetworkColdstoneApp::InitInstance__
push 2
mov ebp, ecx
push 0x4437f0
call fcn.004018f0
add esp, 0xc
mov ecx, ebp
push 1
call fcn.00401c60
test eax, eax
je 0x4065fe
lea eax, [esp + 0x13c]
push eax
call fcn.0043046a
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x34], eax
jne 0x4061df
push str.WSAStartup__
push str._s_failed_n
push 0x4437f0
call fcn.0040ba1f
add esp, 0xc
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp + 0x2ec], eax
mov dword [ebp + 0xc0], eax
xor eax, eax
jmp 0x4066e8
mov cl, byte [esp + 0x13]
push 0
mov byte [esp + 0x28], cl
lea ecx, [esp + 0x28]
call fcn.004046d0
lea edx, [esp + 0x24]
lea ecx, [ebp + 0x1c8]
push edx
push str.ice2bytefix
mov dword [esp + 0x2dc], 0
call fcn.00412061
push 1
lea ecx, [esp + 0x28]
mov esi, eax
mov dword [esp + 0x2d8], 0xffffffff
call fcn.004046d0
test esi, esi
jne 0x40624c
mov eax, dword [ebp]
push esi
push str.ice2bytefix
push str.Network
mov ecx, ebp
call dword [eax + 0xa0]
test al, al
je 0x40640c
mov cl, byte [esp + 0x13]
push 0
mov byte [esp + 0x28], cl
lea ecx, [esp + 0x28]
call fcn.004046d0
mov edi, str._WindowsDrive_TEMP
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x28]
push ebx
call fcn.004044e0
test al, al
je 0x4062a3
mov edi, dword [esp + 0x28]
mov ecx, ebx
mov edx, ecx
mov esi, str._WindowsDrive_TEMP
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x28]
call fcn.00404440
push 0x800
lea eax, [esp + 0x28]
push 0
push eax
lea ecx, [ebp + 0x1fc]
mov dword [esp + 0x2e0], 1
call fcn.00411326
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x4062d2
mov eax, 0x433518
push eax
push str.Attempting_to_create___s__for_use_as_the_temp_path
push 1
push 0x4437f0
call fcn.004018f0
mov eax, dword [esp + 0x38]
add esp, 0x10
test eax, eax
jne 0x4062f4
mov eax, 0x433518
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x406377
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x40630e
mov eax, 0x433518
push eax
push str.Created_folder__s
push 0x20
push 0x4437f0
call fcn.004018f0
mov eax, dword [esp + 0x38]
add esp, 0x10
test eax, eax
jne 0x406330
mov eax, 0x433518
push eax
push str._s_was_created_and_will_be_used_for_the_temp_path.
push 1
push 0x4437f0
call fcn.004018f0
mov eax, dword [esp + 0x38]
add esp, 0x10
test eax, eax
jne 0x406352
mov eax, 0x433518
mov esi, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
push eax
push str.TEMP
call esi
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x40636d
mov eax, 0x433518
push eax
push 0x43b9c4
call esi
jmp 0x4063f6
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
mov eax, dword [esp + 0x28]
jne 0x4063d8
test eax, eax
jne 0x406391
mov eax, 0x433518
push eax
push str.Directory__s_was_not_created__but_it_already_exists__so_we_will_still_set_the_environment_variable__.
push 1
push 0x4437f0
call fcn.004018f0
mov eax, dword [esp + 0x38]
add esp, 0x10
test eax, eax
jne 0x4063b3
mov eax, 0x433518
mov esi, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
push eax
push str.TEMP
call esi
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x4063ce
mov eax, 0x433518
push eax
push 0x43b9c4
call esi
jmp 0x4063f6
test eax, eax
jne 0x4063e1
mov eax, 0x433518
push eax
push str.Directory__s_could_not_be_created.
push 8
push 0x4437f0
call fcn.004018f0
add esp, 0x10
push 1
lea ecx, [esp + 0x28]
mov dword [esp + 0x2d8], 0xffffffff
call fcn.004046d0
mov cl, byte [ebp + 0x1a0]
lea esi, [ebp + 0x1a0]
mov byte [esp + 0x14], cl
push 0
lea ecx, [esp + 0x18]
call fcn.004046d0
mov edx, dword [0x433514]
lea ecx, [esp + 0x14]
push edx
push 0
push esi
call fcn.00404070
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2d4], 2
test eax, eax
je 0x406488
lea ecx, [esp + 0x14]
call fcn.00404460
mov eax, dword [esp + 0x18]
test eax, eax
je 0x406464
mov ecx, dword [esp + 0x1c]
add eax, ecx
cmp byte [eax - 1], 0x5c
je 0x406488
mov edi, 0x43b458
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43b458
lea ecx, [esp + 0x1c]
call fcn.00403fb0
mov edi, str.hpntwkwiz.dll
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [0x433514]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
mov ecx, dword [esp + 0x1c]
sub edx, ecx
cmp edx, esi
ja 0x4064ae
call fcn.00428435
test esi, esi
jbe 0x4064f5
mov eax, dword [esp + 0x1c]
push 0
lea ecx, [esp + 0x18]
lea ebx, [eax + esi]
push ebx
call fcn.004044e0
test al, al
je 0x4064f5
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov ecx, esi
mov esi, str.hpntwkwiz.dll
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
mov byte [eax + ebx], 0
mov cl, byte [esp + 0x14]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x44], esp
push 0
mov byte [esi], cl
mov ecx, esi
call fcn.004046d0
mov edx, dword [0x433514]
lea eax, [esp + 0x24]
push edx
push 0
push eax
mov ecx, esi
call fcn.00404070
mov ecx, ebp
call fcn.0040aaa0
test eax, eax
jne 0x406592
push str.The_version_of_Coldstone_is_not_valid.__Exiting_the_network_plug_in.
push 8
push 0x4437f0
call fcn.004018f0
add esp, 0xc
xor edx, edx
mov dx, word [ebp + 0x104]
lea ecx, [esp + 0x38]
push 0
push 0x104
push ecx
push edx
push 0xd
push 0
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
mov eax, dword [ebp + 0x2f4]
test eax, eax
jne 0x406575
mov eax, 0x433518
push 0
push eax
lea eax, [esp + 0x40]
mov ecx, ebp
push eax
push 0
call fcn.004039c0
mov dword [ebp + 0xc0], 0x3e3
jmp 0x4065d5
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x40659f
mov eax, 0x433518
push eax
call fcn.004039f0
add esp, 4
mov dword [ebp + 0x2e0], eax
test eax, eax
jne 0x406605
push str.Unable_to_load_hpntwkwiz.dll
push str._s_failed_n
push 0x4437f0
call fcn.0040ba1f
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0xc0], eax
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4065fe
mov al, byte [ecx - 1]
test al, al
je 0x4065f4
cmp al, 0xff
je 0x4065f4
dec al
mov byte [ecx - 1], al
xor eax, eax
jmp 0x4066e8
dec ecx
push ecx
call fcn.0042a2c4
add esp, 4
xor eax, eax
jmp 0x4066e8
mov ecx, ebp
call fcn.00406710
test eax, eax
jne 0x40668e
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
lea esi, [ebp + 0x2f0]
mov edi, 0x480
push str.There_is_another_copy_of_network_running_n
push 0x400
push 0x4437f0
call fcn.004018f0
add esp, 0xc
mov ecx, ebp
mov dword [ebp + 0xc0], edi
push esi
call fcn.00402a00
mov eax, dword [esi + 4]
test eax, eax
jne 0x406652
mov eax, 0x433518
push 0x35
push eax
push edi
call fcn.00414044
mov ecx, dword [ebp + 0x138]
add esp, 4
push eax
push ecx
mov ecx, ebp
call fcn.004039c0
cmp eax, 2
je 0x4066ab
push 0x3e8
mov dword [ebp + 0xc0], 0
call ebx
mov ecx, ebp
call fcn.00406710
test eax, eax
je 0x406621
mov ecx, ebp
call fcn.004067c0
test eax, eax
je 0x4066ab
mov ecx, ebp
call fcn.004067e0
test eax, eax
je 0x4066ab
mov esi, 1
jmp 0x4066ad
xor esi, esi
push esi
push str.CNetworkColdstoneApp::InitInstance____d
push 4
push 0x4437f0
call fcn.004018f0
mov ecx, dword [esp + 0x28]
add esp, 0x10
test ecx, ecx
je 0x4066e6
mov al, byte [ecx - 1]
test al, al
je 0x4066dc
cmp al, 0xff
je 0x4066dc
dec al
mov byte [ecx - 1], al
jmp 0x4066e6
dec ecx
push ecx
call fcn.0042a2c4
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x2cc]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x2c8
ret