Function at 0x408230
Capabilities:
Parse url

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x85c
mov eax, dword [0x440320]
xor eax, ebp
mov dword [ebp - 0x10], eax
cmp dword [ebp + 0xc], 0
je 0x40824f
cmp dword [ebp + 8], 0
jne 0x408256
xor eax, eax
jmp 0x4084cb
mov dword [ebp - 4], 0x824
mov dword [ebp - 8], 0
mov eax, dword [ebp + 0x18]
and eax, 0x2e000000
mov dword [ebp - 0x844], eax
mov dword [ebp - 0x848], 0
mov dword [ebp - 0x83c], 0
mov ecx, dword [ebp + 0x18]
and ecx, 0x90000000
je 0x4082c2
mov edx, dword [ebp + 0xc]
cmp dword [edx + 0x30], 0
je 0x4082c2
mov eax, dword [ebp + 0x18]
and eax, 0x2000000
je 0x4082b0
mov dword [ebp - 0x83c], 1
jmp 0x4082c2
mov ecx, dword [ebp - 0x848]
or ecx, 0x80000000
mov dword [ebp - 0x848], ecx
mov edx, dword [ebp - 0x844]
push edx
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x838]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.WININET.dll_InternetCanonicalizeUrlA]
mov dword [ebp - 0x840], eax
cmp dword [ebp - 0x840], 0
jne 0x40837b
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x408303
xor eax, eax
jmp 0x4084cb
mov eax, dword [ebp - 4]
push eax
call fcn.0041d794
add esp, 4
mov dword [ebp - 0x84c], eax
mov ecx, dword [ebp - 0x84c]
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], 0
jne 0x40832b
xor eax, eax
jmp 0x4084cb
mov dword [ebp - 8], 1
mov edx, dword [ebp - 0x844]
push edx
lea eax, [ebp - 4]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.WININET.dll_InternetCanonicalizeUrlA]
mov dword [ebp - 0x840], eax
cmp dword [ebp - 0x840], 0
jne 0x408379
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x850], eax
mov ecx, dword [ebp - 0x850]
push ecx
call fcn.0041e99d
add esp, 4
xor eax, eax
jmp 0x4084cb
jmp 0x408384
lea edx, [ebp - 0x838]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x848]
push ecx
push 0
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
mov dword [ebp - 0x840], eax
cmp dword [ebp - 0x83c], 0
je 0x4083fc
push 0x2100000
push 0
push 0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x2c]
push ecx
call dword [sym.imp.SHLWAPI.dll_UrlUnescapeA]
test eax, eax
je 0x4083e9
cmp dword [ebp - 8], 0
je 0x4083e2
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x854], edx
mov eax, dword [ebp - 0x854]
push eax
call fcn.0041e99d
add esp, 4
xor eax, eax
jmp 0x4084cb
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x30], eax
cmp dword [ebp - 8], 0
je 0x40841a
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x858], edx
mov eax, dword [ebp - 0x858]
push eax
call fcn.0041e99d
add esp, 4
cmp dword [ebp - 0x840], 0
jne 0x408431
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 0x1000
jmp 0x4084c5
mov edx, dword [ebp + 0x14]
mov eax, dword [ebp + 0xc]
mov cx, word [eax + 0x18]
mov word [edx], cx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x85c], eax
mov ecx, dword [ebp - 0x85c]
sub ecx, 1
mov dword [ebp - 0x85c], ecx
cmp dword [ebp - 0x85c], 6
ja case.default.0x408468
mov edx, dword [ebp - 0x85c]
jmp dword [edx*4 + 0x4084dc]
mov eax, dword [ebp + 0x10]
mov dword [eax], 1
jmp 0x4084c5
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 2
jmp 0x4084c5
mov edx, dword [ebp + 0x10]
mov dword [edx], 3
jmp 0x4084c5
mov eax, dword [ebp + 0x10]
mov dword [eax], 0x100b
jmp 0x4084c5
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 0x1001
jmp 0x4084c5
mov edx, dword [ebp + 0x10]
mov dword [edx], 0x1006
jmp 0x4084c5
mov eax, dword [ebp + 0x10]
mov dword [eax], 0x1002
jmp 0x4084c5
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 0x1000
mov eax, dword [ebp - 0x840]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041e0c4
mov esp, ebp
pop ebp
ret