Function at 0x5477b0
Capabilities:
Parse url

Disassembly:
push 0xffffffffffffffff
push 0x656bcf
mov eax, dword fs:[0]
push eax
mov eax, 0x2848
call fcn.006197b0
mov eax, dword [0x74f8a0]
xor eax, esp
mov dword [esp + 0x2844], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x74f8a0]
xor eax, esp
push eax
lea eax, [esp + 0x285c]
mov dword fs:[0], eax
mov esi, dword [esp + 0x286c]
mov eax, esi
mov ebp, ecx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x547800
sub eax, edx
cmp eax, 0x2800
ja 0x54811e
push esi
call fcn.00406b80
add esp, 4
test eax, eax
jne 0x54811e
lea edx, [esp + 0x58]
mov eax, esi
sub edx, esi
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x547830
lea ecx, [esp + 0x38]
call fcn.00402500
mov dword [esp + 0x2864], 0
lea ecx, [esp + 0x30]
call fcn.00402500
mov byte [esp + 0x2864], 1
lea eax, [esp + 0x58]
push 0x40
push eax
mov byte [esp + 0x27], 0
call fcn.00619660
add esp, 8
test eax, eax
je 0x547a1e
lea ecx, [esp + 0x58]
push 0x670998
push ecx
call fcn.00619720
mov esi, eax
add esp, 8
test esi, esi
je 0x547a1e
mov edx, esi
lea eax, [esp + 0x58]
sub edx, eax
cmp edx, 8
jg 0x547a1e
mov eax, esi
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5478b0
sub eax, edx
cmp eax, 4
jbe 0x547a1e
add esi, 3
push 0x681430
push esi
call fcn.0061a7e0
add esp, 8
test eax, eax
je 0x547a1e
cmp byte [eax], 0x40
jne 0x547a1e
inc eax
push 0x681430
push eax
call fcn.0061a7e0
mov edi, eax
add esp, 8
cmp byte [edi], 0x40
jne 0x547a1e
mov edi, edi
lea eax, [edi + 1]
push 0x681430
push eax
call fcn.0061a7e0
add esp, 8
test eax, eax
je 0x54791e
cmp byte [eax], 0x40
jne 0x54791e
mov edi, eax
jmp 0x547900
lea ecx, [esp + 0x28]
call fcn.00402500
mov byte [esp + 0x2864], 2
mov ebx, edi
sub ebx, esi
lea ecx, [ebx + 1]
push ecx
lea ecx, [esp + 0x2c]
call fcn.00402850
push ebx
push esi
push eax
mov dword [esp + 0x38], eax
call fcn.00619c20
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x3c]
push edx
lea ecx, [esp + 0x48]
push ecx
push eax
mov byte [eax + ebx], 0
call fcn.00546c30
add esp, 0x18
test eax, eax
je 0x547a0d
lea ecx, [esp + 0x20]
mov byte [esp + 0x1f], 1
call fcn.00402500
mov byte [esp + 0x2864], 3
lea edx, [esp + 0x58]
sub esi, edx
lea eax, [esi + 1]
push eax
lea ecx, [esp + 0x24]
call fcn.00402850
push esi
lea ecx, [esp + 0x5c]
mov ebx, eax
push ecx
push ebx
call fcn.00619c20
add esp, 0xc
lea ecx, [esp + 0x18]
mov byte [ebx + esi], 0
call fcn.00402500
mov byte [esp + 0x2864], 4
mov edx, dword [esp + 0x20]
inc edi
push edi
push edx
lea eax, [esp + 0x20]
push 0x66fde0
push eax
call fcn.00402f70
mov ecx, dword [esp + 0x28]
push 0x2800
push ecx
lea edx, [esp + 0x70]
push edx
call fcn.004054a0
add esp, 0x1c
mov byte [esp + 0x2864], 3
lea ecx, [esp + 0x18]
call fcn.00402570
mov byte [esp + 0x2864], 2
lea ecx, [esp + 0x20]
call fcn.00402570
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x28]
call fcn.00402570
lea eax, [esp + 0x58]
push 0x670998
push eax
call fcn.00619720
add esp, 8
test eax, eax
je 0x547dde
add eax, 4
push 0x2f
push eax
call fcn.00619660
mov esi, eax
add esp, 8
test esi, esi
je 0x547dde
inc esi
push 0x6a19c0
push esi
mov dword [esp + 0x58], esi
call fcn.00619720
add esp, 8
test eax, eax
jne 0x547a7d
push str._26
push esi
call fcn.00619720
add esp, 8
test eax, eax
je 0x547dde
lea ecx, [esp + 0x20]
call fcn.00402500
mov byte [esp + 0x2864], 5
push esi
lea ecx, [esp + 0x24]
push 0x66fea8
push ecx
call fcn.00402f70
add esp, 0xc
push 0x6a19c0
push str._26
lea ecx, [esp + 0x28]
call fcn.00402c10
mov edx, dword [esp + 0x20]
push 0x6a19c0
push edx
call fcn.00619720
add esp, 8
mov byte [esp + 0x27], 0
test eax, eax
je 0x547dcd
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x547ad8
sub ecx, esi
cmp ecx, 3
jbe 0x547d78
lea edi, [eax + 2]
push 0x3b
push edi
call fcn.00619660
add esp, 8
test eax, eax
je 0x547d78
sub eax, edi
mov ebx, eax
je 0x547d3e
push 0x6a19c0
lea ecx, [esp + 0x38]
call fcn.004030b0
mov byte [esp + 0x2864], 6
lea ecx, [esp + 0x18]
call fcn.00402500
mov byte [esp + 0x2864], 7
mov al, byte [edi]
mov byte [esp + 0x17], 1
mov byte [esp + 0x26], 1
cmp al, 0x78
je 0x547b9c
cmp al, 0x58
je 0x547b9c
xor esi, esi
mov byte [esp + 0x26], 0
test ebx, ebx
jbe 0x547c11
movsx eax, byte [esi + edi]
push eax
call fcn.0061a05c
add esp, 4
test eax, eax
jne 0x547b6b
mov byte [esp + 0x17], al
jmp 0x547b95
mov cl, byte [esi + edi]
mov byte [esp + 0x44], cl
mov edx, dword [esp + 0x44]
push edx
lea ecx, [esp + 0x38]
call fcn.00415e80
mov al, byte [esi + edi]
mov byte [esp + 0x54], al
mov ecx, dword [esp + 0x54]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00415e80
inc esi
cmp esi, ebx
jb 0x547b54
jmp 0x547c06
mov byte [esp + 0x4c], al
mov edx, dword [esp + 0x4c]
push edx
lea ecx, [esp + 0x38]
call fcn.00415e80
mov esi, 1
cmp ebx, esi
jbe 0x547c11
jmp 0x547bc0
movsx eax, byte [esi + edi]
push eax
call fcn.0061a0e0
add esp, 4
test eax, eax
jne 0x547bd7
mov byte [esp + 0x17], al
jmp 0x547c01
mov cl, byte [esi + edi]
mov byte [esp + 0x40], cl
mov edx, dword [esp + 0x40]
push edx
lea ecx, [esp + 0x38]
call fcn.00415e80
mov al, byte [esi + edi]
mov byte [esp + 0x48], al
mov ecx, dword [esp + 0x48]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00415e80
inc esi
cmp esi, ebx
jb 0x547bc0
cmp byte [esp + 0x17], 0
je 0x547d56
push 0x6814a4
lea ecx, [esp + 0x38]
mov byte [esp + 0x2b], 1
call fcn.00403070
cmp byte [esp + 0x26], 0
je 0x547c73
push 0x683adc
lea ecx, [esp + 0x40]
call fcn.004030b0
mov byte [esp + 0x2864], 8
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x40]
call fcn.0040e5e0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x34]
push eax
push ecx
lea ecx, [esp + 0x28]
call fcn.00402c10
mov byte [esp + 0x2864], 7
lea ecx, [esp + 0x3c]
jmp 0x547d17
lea ecx, [esp + 0x28]
call fcn.00402500
mov byte [esp + 0x2864], 9
mov edx, dword [esp + 0x18]
push edx
call fcn.006198b1
mov ebx, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
add esp, 4
mov word [esp + 0x2c], ax
xor eax, eax
push eax
push eax
push eax
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x40]
push ecx
push eax
push 0xfde9
mov word [esp + 0x4e], ax
call ebx
mov esi, eax
test esi, esi
je 0x547d0b
push esi
lea ecx, [esp + 0x2c]
call fcn.00402850
push 0
push 0
push esi
push eax
push 0xffffffffffffffff
lea edx, [esp + 0x40]
push edx
push 0
push 0xfde9
call ebx
test eax, eax
je 0x547d0b
mov eax, dword [esp + 0x28]
push eax
call fcn.004a9210
mov esi, eax
add esp, 4
test esi, esi
je 0x547d0b
mov ecx, dword [esp + 0x34]
push esi
push ecx
lea ecx, [esp + 0x28]
call fcn.00402c10
push esi
call fcn.005ec337
add esp, 4
mov byte [esp + 0x2864], 7
lea ecx, [esp + 0x28]
call fcn.00402570
mov byte [esp + 0x2864], 6
lea ecx, [esp + 0x18]
call fcn.00402570
mov byte [esp + 0x2864], 5
lea ecx, [esp + 0x34]
call fcn.00402570
push 0x6a19c0
push edi
call fcn.00619720
add esp, 8
test eax, eax
jne 0x547ad3
jmp 0x547d78
mov byte [esp + 0x2864], 6
lea ecx, [esp + 0x18]
call fcn.00402570
mov byte [esp + 0x2864], 5
lea ecx, [esp + 0x34]
call fcn.00402570
cmp byte [esp + 0x27], 0
je 0x547dcd
mov eax, dword [esp + 0x20]
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x547d88
mov edx, dword [esp + 0x50]
sub ecx, esi
lea esi, [esp + 0x2858]
sub esi, edx
cmp ecx, esi
jge 0x547dcd
mov byte [edx], 0
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x547da7
lea edi, [esp + 0x58]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x547db7
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x20]
call fcn.00402570
lea edx, [esp + 0x58]
push edx
call fcn.005462f0
push 0x3c
mov byte [ebp + 0x7918], al
mov eax, dword [esp + 0x2878]
lea esi, [ebp + 4]
push 0
push esi
mov dword [ebp + 0x7914], eax
call fcn.00618760
lea eax, [ebp + 0x2840]
lea ecx, [ebp + 0x5040]
mov byte [eax], 0
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x5108]
mov byte [ecx], 0
mov dword [ebp + 0x28], ecx
add esp, 0x10
xor ecx, ecx
lea edi, [ebp + 0x40]
lea ebx, [ebp + 0x7908]
lea edx, [ebp + 0x50a4]
mov dword [ebp + 0x30], eax
lea eax, [esp + 0x58]
mov word [ebp + 0x1c], cx
mov byte [ebp + 0x791c], cl
mov byte [ebp + 0x791d], cl
mov byte [ebp + 0x791e], cl
mov byte [edi], 0
mov byte [ebx], 0
mov byte [ebp + 0x5108], 0
mov byte [edx], 0
mov dword [esi], 0x3c
mov dword [ebp + 0x3c], 0x2800
mov dword [ebp + 0x18], 0x2800
mov dword [ebp + 0x2c], 0x64
mov dword [ebp + 0xc], 0xa
mov dword [ebp + 0x34], 0x2800
mov dword [ebp + 0x24], 0x64
mov dword [ebp + 0x38], edi
mov dword [ebp + 8], ebx
mov dword [ebp + 0x20], edx
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x547ea3
push esi
push 0
sub eax, ecx
push eax
lea edx, [esp + 0x64]
push edx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
test eax, eax
je 0x5480f9
push 0x26
lea ebx, [ebp + 0x5108]
push ebx
call fcn.00619660
add esp, 8
test eax, eax
je 0x547ef1
push str._IDMAppersandRpl_SS_P789EO96_
push ebx
call fcn.00619720
add esp, 8
test eax, eax
jne 0x547ef1
mov byte [ebp + 0x791c], 1
push 0x5b
push ebx
call fcn.00619660
add esp, 8
test eax, eax
je 0x547f19
push str._IDM_LSB_Rpl_SS_P789EO96_
push ebx
call fcn.00619720
add esp, 8
test eax, eax
jne 0x547f19
mov byte [ebp + 0x791d], 1
push 0x5d
push ebx
call fcn.00619660
add esp, 8
test eax, eax
je 0x547f41
push str._IDM_RSB_Rpl_SS_P789EO96_
push ebx
call fcn.00619720
add esp, 8
test eax, eax
jne 0x547f41
mov byte [ebp + 0x791e], 1
push 3
push 0x670bf4
lea ebx, [ebp + 0x7908]
push ebx
call fcn.0061caaf
add esp, 0xc
test eax, eax
je 0x547fd6
push 3
push 0x670be8
push ebx
call fcn.0061caaf
add esp, 0xc
test eax, eax
je 0x547fd6
push 4
push str.rtmp
push ebx
call fcn.0061caaf
add esp, 0xc
test eax, eax
je 0x547fd6
cmp byte [ebp + 0x7918], 0
jne 0x547fe3
lea eax, [ebp + 0x5108]
push 0x25
push eax
call fcn.00619660
add esp, 8
test eax, eax
je 0x547fd6
mov bl, 0x30
cmp byte [eax], 0x25
jne 0x548060
cmp byte [eax + 1], 0x32
lea ecx, [eax + 1]
jne 0x548060
cmp byte [eax + 2], bl
jne 0x548060
cmp byte [ecx], 0
je 0x547fd6
push 0x25
push ecx
call fcn.00619660
add esp, 8
test eax, eax
jne 0x547fa3
cmp byte [ebp + 0x7918], 0
je 0x54816c
mov eax, dword [ebp + 0x30]
push eax
lea ecx, [esp + 0x30]
call fcn.004030b0
mov byte [esp + 0x2864], 0xa
mov ebx, dword [esp + 0x2870]
mov ecx, dword [ebp + 0x30]
push ebx
push ecx
call fcn.005afee0
lea eax, [ebp + 0x7908]
push 0x670bf4
push eax
call fcn.00619b9e
add esp, 0x10
test eax, eax
jne 0x54815b
mov edx, dword [ebp + 0x30]
push edx
call fcn.005462f0
add esp, 4
test al, al
je 0x54815b
mov ecx, dword [esp + 0x2c]
mov eax, dword [ebp + 0x30]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x54806c
test dl, dl
je 0x54805c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x54806c
add eax, 2
add ecx, 2
test dl, dl
jne 0x548040
xor eax, eax
jmp 0x548071
mov ecx, ebp
call fcn.005469f0
jmp 0x548392
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x54815b
push edi
lea ecx, [esp + 0x2c]
call fcn.004030b0
mov byte [esp + 0x2864], 0xb
mov eax, 0x2800
mov dword [ebp + 0x3c], eax
mov dword [ebp + 0x18], eax
mov ecx, 0x64
mov dword [ebp + 0x34], eax
lea eax, [esp + 0x58]
mov dword [esi], 0x3c
mov dword [ebp + 0x2c], ecx
mov dword [ebp + 0xc], 0xa
mov dword [ebp + 0x24], ecx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5480b8
push esi
sub eax, edx
push 0x10000000
push eax
lea eax, [esp + 0x64]
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
test eax, eax
jne 0x548125
mov byte [esp + 0x2864], 0xa
lea ecx, [esp + 0x28]
call fcn.00402570
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x2c]
call fcn.00402570
mov byte [esp + 0x2864], 0
lea ecx, [esp + 0x30]
call fcn.00402570
mov dword [esp + 0x2864], 0xffffffff
lea ecx, [esp + 0x38]
call fcn.00402570
xor eax, eax
jmp 0x5483bc
mov ecx, dword [ebp + 0x30]
push ebx
push ecx
call fcn.005afee0
mov ecx, dword [esp + 0x30]
mov edx, dword [ebp + 0x38]
add esp, 8
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x548140
mov byte [esp + 0x2864], 0xa
lea ecx, [esp + 0x28]
call fcn.00402570
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x2c]
jmp 0x548246
push edi
lea ecx, [esp + 0x1c]
call fcn.004030b0
mov byte [esp + 0x2864], 0xc
mov eax, 0x2800
mov dword [ebp + 0x3c], eax
mov dword [ebp + 0x18], eax
mov ecx, 0x64
mov dword [ebp + 0x34], eax
lea eax, [esp + 0x58]
mov dword [esi], 0x3c
mov dword [ebp + 0x2c], ecx
mov dword [ebp + 0xc], 0xa
mov dword [ebp + 0x24], ecx
lea edx, [eax + 1]
jmp 0x5481b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5481b0
push esi
sub eax, edx
push 0x10000000
push eax
lea edx, [esp + 0x64]
push edx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
test eax, eax
jne 0x5481e0
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x18]
jmp 0x5480f4
mov eax, dword [esp + 0x18]
push 0x23
push eax
call fcn.00619660
mov esi, eax
add esp, 8
test esi, esi
je 0x548222
push 0x671498
lea edi, [ebp + 0x7908]
push edi
call fcn.00619b9e
add esp, 8
test eax, eax
je 0x54821f
push 0x670bec
push edi
call fcn.00619b9e
add esp, 8
test eax, eax
jne 0x548222
mov byte [esi], 0
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0x38]
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x548230
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x18]
call fcn.00402570
mov ecx, ebp
call fcn.005469f0
cmp byte [ebp + 0x791c], 0
je 0x54827a
lea eax, [ebp + 0x5108]
push str._IDMAppersandRpl_SS_P789EO96_
push eax
call fcn.00619720
add esp, 8
test eax, eax
je 0x54827a
mov byte [ebp + 0x791c], 0
cmp byte [ebp + 0x791d], 0
je 0x5482a2
lea eax, [ebp + 0x5108]
push str._IDM_LSB_Rpl_SS_P789EO96_
push eax
call fcn.00619720
add esp, 8
test eax, eax
je 0x5482a2
mov byte [ebp + 0x791d], 0
cmp byte [ebp + 0x791e], 0
je 0x5482ca
lea eax, [ebp + 0x5108]
push str._IDM_RSB_Rpl_SS_P789EO96_
push eax
call fcn.00619720
add esp, 8
test eax, eax
je 0x5482ca
mov byte [ebp + 0x791e], 0
cmp byte [esp + 0x1f], 0
je 0x548321
mov ecx, dword [esp + 0x38]
mov eax, ecx
lea esi, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x5482e0
sub eax, esi
cmp eax, 0x64
jae 0x548321
mov eax, dword [esp + 0x30]
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x5482f5
sub eax, esi
cmp eax, 0x64
jae 0x548321
mov edx, dword [ebp + 0x20]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x548306
mov ecx, dword [esp + 0x30]
mov edx, dword [ebp + 0x28]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x548317
push 0x670be8
lea esi, [ebp + 0x7908]
push esi
call fcn.00619b9e
add esp, 8
test eax, eax
jne 0x54834c
xor ecx, ecx
cmp cx, word [ebp + 0x1c]
jne 0x54834c
mov edx, 0x6db
mov word [ebp + 0x1c], dx
jmp 0x548392
push str.rtmp
push esi
call fcn.00619b9e
add esp, 8
test eax, eax
jne 0x54836f
cmp ax, word [ebp + 0x1c]
jne 0x54836f
mov ecx, 0x78f
mov word [ebp + 0x1c], cx
jmp 0x548392
push str.rtmpt
push esi
call fcn.00619b9e
add esp, 8
test eax, eax
jne 0x548392
xor edx, edx
cmp dx, word [ebp + 0x1c]
jne 0x548392
mov eax, 0x50
mov word [ebp + 0x1c], ax
mov byte [esp + 0x2864], 0
lea ecx, [esp + 0x30]
call fcn.00402570
mov dword [esp + 0x2864], 0xffffffff
lea ecx, [esp + 0x38]
call fcn.00402570
mov eax, 1
mov ecx, dword [esp + 0x285c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2844]
xor ecx, esp
call fcn.0061807e
add esp, 0x2854
ret 8