Function at 0x402920
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x23c
mov eax, dword [0x44b024]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], str.getaddrinfo
mov dword [ebp - 0x22c], 0x4022d0
mov dword [ebp - 0x228], str.getnameinfo
mov dword [ebp - 0x224], 0x402670
mov dword [ebp - 0x220], str.freeaddrinfo
mov dword [ebp - 0x21c], fcn.00402260
xor eax, eax
jne 0x402979
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x238], 0
cmp dword [0x44b990], 0
je 0x4029aa
movzx ecx, word [ebp + 8]
mov eax, dword [ecx*8 + 0x44b004]
jmp 0x402bcc
push 0x104
lea edx, [ebp - 0x218]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
jne 0x4029c5
jmp 0x402aea
lea eax, [ebp - 0x218]
push eax
push 0x10c
lea ecx, [ebp - 0x110]
push ecx
call fcn.004141d0
add esp, 0xc
push str.ws2_32
push 0x10c
lea edx, [ebp - 0x110]
push edx
call fcn.00414600
add esp, 0xc
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 0
je 0x402a4d
push str.getaddrinfo
mov ecx, dword [ebp - 0x234]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0
jne 0x402a4d
mov edx, dword [ebp - 0x234]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x234], 0
cmp dword [ebp - 0x234], 0
je 0x402a5b
jmp 0x402aea
lea eax, [ebp - 0x218]
push eax
push 0x10c
lea ecx, [ebp - 0x110]
push ecx
call fcn.004141d0
add esp, 0xc
push str.wship6
push 0x10c
lea edx, [ebp - 0x110]
push edx
call fcn.00414600
add esp, 0xc
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 0
je 0x402ae3
push str.getaddrinfo
mov ecx, dword [ebp - 0x234]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0
jne 0x402ae3
mov edx, dword [ebp - 0x234]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x234], 0
jmp 0x402aea
cmp dword [ebp - 0x234], 0
je 0x402bb7
mov dword [ebp - 0x238], 0
jmp 0x402b12
mov eax, dword [ebp - 0x238]
add eax, 1
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 3
jge 0x402b6e
mov ecx, dword [ebp - 0x238]
mov edx, dword [ebp + ecx*8 - 0x230]
push edx
mov eax, dword [ebp - 0x234]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 0x238]
mov dword [ebp + ecx*8 - 0x22c], eax
mov edx, dword [ebp - 0x238]
cmp dword [ebp + edx*8 - 0x22c], 0
jne 0x402b6c
mov eax, dword [ebp - 0x234]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x234], 0
jmp 0x402b6e
jmp 0x402b03
cmp dword [ebp - 0x234], 0
je 0x402bb7
mov dword [ebp - 0x238], 0
jmp 0x402b92
mov ecx, dword [ebp - 0x238]
add ecx, 1
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 3
jge 0x402bb7
mov edx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x238]
mov ecx, dword [ebp + eax*8 - 0x22c]
mov dword [edx*8 + 0x44b004], ecx
jmp 0x402b83
mov dword [0x44b990], 1
movzx edx, word [ebp + 8]
mov eax, dword [edx*8 + 0x44b004]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004030d0
mov esp, ebp
pop ebp
ret 4