Function at 0x40240e
Capabilities:
Parse url

Disassembly:
push 0x50
mov eax, 0x455ab3
call fcn.0043cc79
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], ecx
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebx]
sub ecx, 0x10
call fcn.00401b37
lea esi, [eax + 0x10]
mov dword [ebp + 0xc], esi
and dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00401b37
lea edi, [eax + 0x10]
mov dword [ebp - 0x10], edi
mov byte [ebp - 4], 1
mov eax, dword [ebx]
cmp dword [eax - 0xc], 0
jne 0x402709
push 0x3c
pop ebx
push ebx
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043dd90
push ebx
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043dd90
add esp, 0x18
mov dword [ebp - 0x2c], 0x104
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], ebx
push eax
mov eax, dword [ebp - 0x1c]
push 0
push 0
push dword [eax]
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
jne 0x4024bf
call fcn.00402af7
mov ecx, dword [ebp - 0x18]
push eax
call fcn.00402918
lea ecx, [edi - 0x10]
call fcn.00401b8a
lea ecx, [esi - 0x10]
call fcn.00401b8a
mov eax, dword [ebp - 0x18]
jmp 0x402764
mov edi, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x30]
call fcn.00402af7
push eax
push edi
push ebx
lea ecx, [ebp + 8]
call fcn.004028b4
push 0x2f
mov byte [ebp - 4], 2
mov edi, dword [ebp + 8]
cmp dword [ebp - 0x50], 5
pop ebx
push 0x5c
mov eax, dword [edi - 0xc]
pop ecx
cmove ebx, ecx
mov dword [ebp - 0x1c], eax
test eax, eax
jle 0x402532
dec eax
lea ecx, [ebp + 8]
push eax
call fcn.00402870
cmp ax, bx
jne 0x402532
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp + 8]
dec eax
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.0040276a
push eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 3
call fcn.00402825
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00401b8a
mov edi, dword [ebp + 8]
push ebx
push edi
call fcn.0043e594
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
je 0x402579
sub ecx, edi
sar ecx, 1
js 0x402579
mov eax, dword [edi - 0xc]
sub eax, ecx
lea ecx, [ebp + 8]
dec eax
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004027aa
push eax
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 4
call fcn.00402825
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00401b8a
mov esi, dword [ebp + 0xc]
cmp dword [ebp - 0x50], 3
je 0x402595
cmp dword [ebp - 0x50], 4
je 0x402595
cmp dword [ebp - 0x50], 1
jne 0x402679
push 0
push 0x3b
jmp 0x402599
push 0
push 0x3f
lea ecx, [ebp + 0xc]
call fcn.004027f3
test eax, eax
jle 0x4025cb
push eax
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp + 0xc]
call fcn.0040276a
push eax
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 5
call fcn.00402825
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
jmp 0x402671
jne 0x402679
mov eax, dword [esi - 0xc]
lea ecx, [ebp + 0xc]
dec eax
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004027aa
push eax
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 6
call fcn.00402825
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00401b8a
push 0
push 0x26
lea ecx, [ebp + 0xc]
call fcn.004027f3
test eax, eax
jle 0x402637
push eax
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp + 0xc]
call fcn.0040276a
push eax
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 7
call fcn.00402825
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00401b8a
push 0
push 0x3d
lea ecx, [ebp + 0xc]
call fcn.004027f3
test eax, eax
jle 0x402679
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx - 0xc]
sub ecx, eax
lea eax, [ebp - 0x20]
dec ecx
push ecx
push eax
lea ecx, [ebp + 0xc]
call fcn.004027aa
push eax
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 8
call fcn.00402825
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.00401b8a
lea ecx, [ebp + 0xc]
call fcn.004056d8
push str..aiu
lea ecx, [ebp - 0x14]
call fcn.00402eb5
mov byte [ebp - 4], 9
mov esi, dword [ebp + 0xc]
push 0x2e
push esi
call fcn.0043e594
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
je 0x4026cc
sub ecx, esi
sar ecx, 1
js 0x4026cc
mov eax, dword [esi - 0xc]
sub eax, ecx
push eax
push ecx
lea ecx, [ebp + 0xc]
call fcn.0040435e
mov eax, dword [ebp - 0x14]
lea ecx, [ebp + 0xc]
push dword [eax - 0xc]
push eax
call fcn.004019fa
mov esi, dword [ebp + 0xc]
push 0
push 0x2e
lea ecx, [ebp + 0xc]
call fcn.004027f3
cmp eax, 0xffffffff
jne 0x4026ef
mov eax, dword [ebp - 0x14]
lea ecx, [ebp + 0xc]
push dword [eax - 0xc]
push eax
call fcn.004019fa
mov esi, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00401b8a
lea ecx, [edi - 0x10]
mov byte [ebp - 4], 1
call fcn.00401b8a
mov edi, dword [ebp - 0x10]
lea ecx, [ebp + 0xc]
call fcn.00405afd
test al, al
je 0x40271a
lea ecx, [esi - 0x10]
jmp 0x402745
cmp dword [edi - 0xc], 0
lea ecx, [ebp - 0x10]
je 0x402736
call fcn.00405385
push dword [esi - 0xc]
lea ecx, [ebp - 0x10]
push esi
call fcn.004019fa
jmp 0x40273f
lea eax, [ebp + 0xc]
push eax
call fcn.00402825
mov edi, dword [ebp - 0x10]
lea ecx, [edi - 0x10]
call fcn.00401b37
mov ebx, dword [ebp - 0x18]
lea ecx, [edi - 0x10]
add eax, 0x10
mov dword [ebx], eax
call fcn.00401b8a
lea ecx, [esi - 0x10]
call fcn.00401b8a
mov eax, ebx
call fcn.0043cc42
ret