Function at 0x415020
Capabilities:
Parse url

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7f4
mov eax, dword [0x4b1120]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x3c
push 0
lea eax, [ebp - 0x388]
push eax
call fcn.00447660
add esp, 0xc
mov dword [eax], 0x3c
xor ecx, ecx
mov word [ebp - 0x7a8], cx
xor edx, edx
mov dword [ebp - 0x7a6], edx
mov dword [ebp - 0x7a2], edx
mov dword [ebp - 0x79e], edx
mov dword [ebp - 0x79a], edx
mov dword [ebp - 0x796], edx
mov dword [ebp - 0x792], edx
mov dword [ebp - 0x78e], edx
mov word [ebp - 0x78a], dx
lea eax, [ebp - 0x7a8]
mov dword [ebp - 0x384], eax
mov dword [ebp - 0x380], 0x20
xor ecx, ecx
mov word [ebp - 0x308], cx
push 0xfe
push 0
lea edx, [ebp - 0x306]
push edx
call fcn.00447660
add esp, 0xc
lea eax, [ebp - 0x308]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], 0x100
xor ecx, ecx
mov word [ebp - 0x7e8], cx
push 0x3e
push 0
lea edx, [ebp - 0x7e6]
push edx
call fcn.00447660
add esp, 0xc
lea eax, [ebp - 0x7e8]
mov dword [ebp - 0x36c], eax
mov dword [ebp - 0x368], 0x40
xor ecx, ecx
mov word [ebp - 0x348], cx
push 0x3e
push 0
lea edx, [ebp - 0x346]
push edx
call fcn.00447660
add esp, 0xc
lea eax, [ebp - 0x348]
mov dword [ebp - 0x364], eax
mov dword [ebp - 0x360], 0x40
xor ecx, ecx
mov word [ebp - 0x208], cx
push 0x1fe
push 0
lea edx, [ebp - 0x206]
push edx
call fcn.00447660
add esp, 0xc
lea eax, [ebp - 0x208]
mov dword [ebp - 0x35c], eax
mov dword [ebp - 0x358], 0x200
xor ecx, ecx
mov word [ebp - 0x788], cx
push 0x3fe
push 0
lea edx, [ebp - 0x786]
push edx
call fcn.00447660
add esp, 0xc
lea eax, [ebp - 0x788]
mov dword [ebp - 0x354], eax
mov dword [ebp - 0x350], 0x400
mov dword [ebp - 0x37c], 0xffffffff
lea ecx, [ebp - 0x388]
push ecx
push closesocket
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push eax
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
mov dword [ebp - 0x34c], eax
cmp dword [ebp - 0x34c], 0
jne 0x415367
push 0x2f
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044a60d
add esp, 8
mov dword [ebp - 0x7ec], eax
cmp dword [ebp - 0x7ec], 0
jne 0x415210
push 0x5c
mov edx, dword [ebp + 8]
push edx
call fcn.0044a60d
add esp, 8
mov dword [ebp - 0x7ec], eax
cmp dword [ebp - 0x7ec], 0
je 0x415367
mov eax, dword [ebp - 0x7ec]
sub eax, dword [ebp + 8]
sar eax, 1
add eax, 1
cmp eax, 0x80
jae 0x415248
mov ecx, dword [ebp - 0x7ec]
sub ecx, dword [ebp + 8]
sar ecx, 1
add ecx, 1
mov dword [ebp - 0x7f4], ecx
jmp 0x415252
mov dword [ebp - 0x7f4], 0x80
mov edx, dword [ebp - 0x7f4]
push edx
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x308]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 0x2e
lea edx, [ebp - 0x308]
push edx
call fcn.0040e7b0
add esp, 8
test eax, eax
je 0x415367
mov dword [ebp - 0x34c], 1
mov dword [ebp - 0x360], 0
mov eax, dword [ebp - 0x360]
mov dword [ebp - 0x368], eax
mov ecx, dword [ebp - 0x368]
mov dword [ebp - 0x380], ecx
mov dword [ebp - 0x37c], 0xfffffffe
lea edx, [ebp - 0x308]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [ebp - 0x374], eax
push 0x100
mov eax, dword [ebp - 0x7ec]
push eax
lea ecx, [ebp - 0x208]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 0x3f
lea edx, [ebp - 0x208]
push edx
call fcn.0040e7b0
add esp, 8
mov dword [ebp - 0x7f0], eax
cmp dword [ebp - 0x7f0], 0
je 0x415339
mov eax, dword [ebp - 0x7f0]
push eax
lea ecx, [ebp - 0x788]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
xor edx, edx
mov eax, dword [ebp - 0x7f0]
mov word [eax], dx
mov ecx, dword [ebp - 0x354]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [ebp - 0x350], eax
jmp 0x415343
mov dword [ebp - 0x350], 0
lea edx, [ebp - 0x208]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [ebp - 0x358], eax
mov eax, dword [ebp + 8]
push eax
push str.SplitURL_____Trying_URL____s___predicted_bad_URL_
call fcn.00437970
add esp, 8
cmp dword [ebp + 0xc], 0
je 0x415385
mov ecx, dword [ebp - 0x378]
push ecx
push 0x80
mov edx, dword [ebp + 0xc]
push edx
call fcn.0044a00d
add esp, 0xc
cmp dword [ebp + 0x10], 0
je 0x4153a3
mov eax, dword [ebp - 0x35c]
push eax
push 0x100
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0044a00d
add esp, 0xc
cmp dword [ebp + 0x14], 0
je 0x4153be
mov edx, dword [ebp - 0x36c]
push edx
push 0x20
mov eax, dword [ebp + 0x14]
push eax
call fcn.0044a00d
add esp, 0xc
cmp dword [ebp + 0x18], 0
je 0x4153d9
mov ecx, dword [ebp - 0x364]
push ecx
push 0x20
mov edx, dword [ebp + 0x18]
push edx
call fcn.0044a00d
add esp, 0xc
cmp dword [ebp + 0x1c], 0
je 0x4153ea
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp - 0x37c]
mov dword [eax], ecx
cmp dword [ebp + 0x20], 0
je 0x4153fc
movzx edx, word [ebp - 0x370]
mov eax, dword [ebp + 0x20]
mov dword [eax], edx
movzx ecx, word [ebp - 0x370]
push ecx
mov edx, dword [ebp - 0x37c]
push edx
mov eax, dword [ebp - 0x364]
push eax
mov ecx, dword [ebp - 0x36c]
push ecx
mov edx, dword [ebp - 0x35c]
push edx
mov eax, dword [ebp - 0x378]
push eax
push str.SplitURL____HostName_s_UrlPath_s_UserName_s_Password_s_Scheme_d_Port_d
call fcn.00437970
add esp, 0x1c
mov eax, dword [ebp - 0x34c]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00447645
mov esp, ebp
pop ebp
ret