Function at 0x544f00
Capabilities:
Parse url

Disassembly:
push 0xffffffffffffffff
push 0x653e6f
mov eax, dword fs:[0]
push eax
mov eax, 0x2848
call fcn.00616f00
mov eax, dword [0x74d890]
xor eax, esp
mov dword [esp + 0x2844], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x74d890]
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 0x544f50
sub eax, edx
cmp eax, 0x2800
ja 0x54586e
push esi
call fcn.00406b40
add esp, 4
test eax, eax
jne 0x54586e
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 0x544f80
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.00616db0
add esp, 8
test eax, eax
je 0x54516e
lea ecx, [esp + 0x58]
push 0x66e990
push ecx
call fcn.00616e70
mov esi, eax
add esp, 8
test esi, esi
je 0x54516e
mov edx, esi
lea eax, [esp + 0x58]
sub edx, eax
cmp edx, 8
jg 0x54516e
mov eax, esi
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x545000
sub eax, edx
cmp eax, 4
jbe 0x54516e
add esi, 3
push 0x67f3c8
push esi
call fcn.00617f30
add esp, 8
test eax, eax
je 0x54516e
cmp byte [eax], 0x40
jne 0x54516e
inc eax
push 0x67f3c8
push eax
call fcn.00617f30
mov edi, eax
add esp, 8
cmp byte [edi], 0x40
jne 0x54516e
mov edi, edi
lea eax, [edi + 1]
push 0x67f3c8
push eax
call fcn.00617f30
add esp, 8
test eax, eax
je 0x54506e
cmp byte [eax], 0x40
jne 0x54506e
mov edi, eax
jmp 0x545050
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.00617370
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.00544380
add esp, 0x18
test eax, eax
je 0x54515d
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.00617370
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 0x66dde0
push eax
call fcn.00402f70
mov ecx, dword [esp + 0x28]
push 0x2800
push ecx
lea edx, [esp + 0x70]
push edx
call fcn.00405460
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 0x66e990
push eax
call fcn.00616e70
add esp, 8
test eax, eax
je 0x54552e
add eax, 4
push 0x2f
push eax
call fcn.00616db0
mov esi, eax
add esp, 8
test esi, esi
je 0x54552e
inc esi
push 0x69f938
push esi
mov dword [esp + 0x58], esi
call fcn.00616e70
add esp, 8
test eax, eax
jne 0x5451cd
push str._26
push esi
call fcn.00616e70
add esp, 8
test eax, eax
je 0x54552e
lea ecx, [esp + 0x20]
call fcn.00402500
mov byte [esp + 0x2864], 5
push esi
lea ecx, [esp + 0x24]
push 0x66dea8
push ecx
call fcn.00402f70
add esp, 0xc
push 0x69f938
push str._26
lea ecx, [esp + 0x28]
call fcn.00402c10
mov edx, dword [esp + 0x20]
push 0x69f938
push edx
call fcn.00616e70
add esp, 8
mov byte [esp + 0x27], 0
test eax, eax
je 0x54551d
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x545228
sub ecx, esi
cmp ecx, 3
jbe 0x5454c8
lea edi, [eax + 2]
push 0x3b
push edi
call fcn.00616db0
add esp, 8
test eax, eax
je 0x5454c8
sub eax, edi
mov ebx, eax
je 0x54548e
push 0x69f938
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 0x5452ec
cmp al, 0x58
je 0x5452ec
xor esi, esi
mov byte [esp + 0x26], 0
test ebx, ebx
jbe 0x545361
movsx eax, byte [esi + edi]
push eax
call fcn.006177ac
add esp, 4
test eax, eax
jne 0x5452bb
mov byte [esp + 0x17], al
jmp 0x5452e5
mov cl, byte [esi + edi]
mov byte [esp + 0x44], cl
mov edx, dword [esp + 0x44]
push edx
lea ecx, [esp + 0x38]
call fcn.004159f0
mov al, byte [esi + edi]
mov byte [esp + 0x54], al
mov ecx, dword [esp + 0x54]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004159f0
inc esi
cmp esi, ebx
jb 0x5452a4
jmp 0x545356
mov byte [esp + 0x4c], al
mov edx, dword [esp + 0x4c]
push edx
lea ecx, [esp + 0x38]
call fcn.004159f0
mov esi, 1
cmp ebx, esi
jbe 0x545361
jmp 0x545310
movsx eax, byte [esi + edi]
push eax
call fcn.00617830
add esp, 4
test eax, eax
jne 0x545327
mov byte [esp + 0x17], al
jmp 0x545351
mov cl, byte [esi + edi]
mov byte [esp + 0x40], cl
mov edx, dword [esp + 0x40]
push edx
lea ecx, [esp + 0x38]
call fcn.004159f0
mov al, byte [esi + edi]
mov byte [esp + 0x48], al
mov ecx, dword [esp + 0x48]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004159f0
inc esi
cmp esi, ebx
jb 0x545310
cmp byte [esp + 0x17], 0
je 0x5454a6
push 0x67f43c
lea ecx, [esp + 0x38]
mov byte [esp + 0x2b], 1
call fcn.00403070
cmp byte [esp + 0x26], 0
je 0x5453c3
push 0x681a74
lea ecx, [esp + 0x40]
call fcn.004030b0
mov byte [esp + 0x2864], 8
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x40]
call fcn.0040e310
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 0x545467
lea ecx, [esp + 0x28]
call fcn.00402500
mov byte [esp + 0x2864], 9
mov edx, dword [esp + 0x18]
push edx
call fcn.00617001
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 0x54545b
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 0x54545b
mov eax, dword [esp + 0x28]
push eax
call fcn.004a76f0
mov esi, eax
add esp, 4
test esi, esi
je 0x54545b
mov ecx, dword [esp + 0x34]
push esi
push ecx
lea ecx, [esp + 0x28]
call fcn.00402c10
push esi
call fcn.005e9ab2
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 0x69f938
push edi
call fcn.00616e70
add esp, 8
test eax, eax
jne 0x545223
jmp 0x5454c8
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 0x54551d
mov eax, dword [esp + 0x20]
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x5454d8
mov edx, dword [esp + 0x50]
sub ecx, esi
lea esi, [esp + 0x2858]
sub esi, edx
cmp ecx, esi
jge 0x54551d
mov byte [edx], 0
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x5454f7
lea edi, [esp + 0x58]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x545507
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.00543a40
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.00615eb0
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 0x5455f3
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 0x545849
push 0x26
lea ebx, [ebp + 0x5108]
push ebx
call fcn.00616db0
add esp, 8
test eax, eax
je 0x545641
push str._IDMAppersandRpl_SS_P789EO96_
push ebx
call fcn.00616e70
add esp, 8
test eax, eax
jne 0x545641
mov byte [ebp + 0x791c], 1
push 0x5b
push ebx
call fcn.00616db0
add esp, 8
test eax, eax
je 0x545669
push str._IDM_LSB_Rpl_SS_P789EO96_
push ebx
call fcn.00616e70
add esp, 8
test eax, eax
jne 0x545669
mov byte [ebp + 0x791d], 1
push 0x5d
push ebx
call fcn.00616db0
add esp, 8
test eax, eax
je 0x545691
push str._IDM_RSB_Rpl_SS_P789EO96_
push ebx
call fcn.00616e70
add esp, 8
test eax, eax
jne 0x545691
mov byte [ebp + 0x791e], 1
push 3
push 0x66ebec
lea ebx, [ebp + 0x7908]
push ebx
call fcn.0061a1ff
add esp, 0xc
test eax, eax
je 0x545726
push 3
push 0x66ebe0
push ebx
call fcn.0061a1ff
add esp, 0xc
test eax, eax
je 0x545726
push 4
push str.rtmp
push ebx
call fcn.0061a1ff
add esp, 0xc
test eax, eax
je 0x545726
cmp byte [ebp + 0x7918], 0
jne 0x545733
lea eax, [ebp + 0x5108]
push 0x25
push eax
call fcn.00616db0
add esp, 8
test eax, eax
je 0x545726
mov bl, 0x30
cmp byte [eax], 0x25
jne 0x5457b0
cmp byte [eax + 1], 0x32
lea ecx, [eax + 1]
jne 0x5457b0
cmp byte [eax + 2], bl
jne 0x5457b0
cmp byte [ecx], 0
je 0x545726
push 0x25
push ecx
call fcn.00616db0
add esp, 8
test eax, eax
jne 0x5456f3
cmp byte [ebp + 0x7918], 0
je 0x5458bc
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.005ad670
lea eax, [ebp + 0x7908]
push 0x66ebec
push eax
call fcn.006172ee
add esp, 0x10
test eax, eax
jne 0x5458ab
mov edx, dword [ebp + 0x30]
push edx
call fcn.00543a40
add esp, 4
test al, al
je 0x5458ab
mov ecx, dword [esp + 0x2c]
mov eax, dword [ebp + 0x30]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5457bc
test dl, dl
je 0x5457ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5457bc
add eax, 2
add ecx, 2
test dl, dl
jne 0x545790
xor eax, eax
jmp 0x5457c1
mov ecx, ebp
call fcn.00544140
jmp 0x545ae2
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x5458ab
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 0x545808
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 0x545875
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 0x545b0c
mov ecx, dword [ebp + 0x30]
push ebx
push ecx
call fcn.005ad670
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 0x545890
mov byte [esp + 0x2864], 0xa
lea ecx, [esp + 0x28]
call fcn.00402570
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x2c]
jmp 0x545996
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 0x545900
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x545900
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 0x545930
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x18]
jmp 0x545844
mov eax, dword [esp + 0x18]
push 0x23
push eax
call fcn.00616db0
mov esi, eax
add esp, 8
test esi, esi
je 0x545972
push 0x66f490
lea edi, [ebp + 0x7908]
push edi
call fcn.006172ee
add esp, 8
test eax, eax
je 0x54596f
push 0x66ebe4
push edi
call fcn.006172ee
add esp, 8
test eax, eax
jne 0x545972
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 0x545980
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x18]
call fcn.00402570
mov ecx, ebp
call fcn.00544140
cmp byte [ebp + 0x791c], 0
je 0x5459ca
lea eax, [ebp + 0x5108]
push str._IDMAppersandRpl_SS_P789EO96_
push eax
call fcn.00616e70
add esp, 8
test eax, eax
je 0x5459ca
mov byte [ebp + 0x791c], 0
cmp byte [ebp + 0x791d], 0
je 0x5459f2
lea eax, [ebp + 0x5108]
push str._IDM_LSB_Rpl_SS_P789EO96_
push eax
call fcn.00616e70
add esp, 8
test eax, eax
je 0x5459f2
mov byte [ebp + 0x791d], 0
cmp byte [ebp + 0x791e], 0
je 0x545a1a
lea eax, [ebp + 0x5108]
push str._IDM_RSB_Rpl_SS_P789EO96_
push eax
call fcn.00616e70
add esp, 8
test eax, eax
je 0x545a1a
mov byte [ebp + 0x791e], 0
cmp byte [esp + 0x1f], 0
je 0x545a71
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 0x545a30
sub eax, esi
cmp eax, 0x64
jae 0x545a71
mov eax, dword [esp + 0x30]
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x545a45
sub eax, esi
cmp eax, 0x64
jae 0x545a71
mov edx, dword [ebp + 0x20]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x545a56
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 0x545a67
push 0x66ebe0
lea esi, [ebp + 0x7908]
push esi
call fcn.006172ee
add esp, 8
test eax, eax
jne 0x545a9c
xor ecx, ecx
cmp cx, word [ebp + 0x1c]
jne 0x545a9c
mov edx, 0x6db
mov word [ebp + 0x1c], dx
jmp 0x545ae2
push str.rtmp
push esi
call fcn.006172ee
add esp, 8
test eax, eax
jne 0x545abf
cmp ax, word [ebp + 0x1c]
jne 0x545abf
mov ecx, 0x78f
mov word [ebp + 0x1c], cx
jmp 0x545ae2
push str.rtmpt
push esi
call fcn.006172ee
add esp, 8
test eax, eax
jne 0x545ae2
xor edx, edx
cmp dx, word [ebp + 0x1c]
jne 0x545ae2
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.006157d3
add esp, 0x2854
ret 8