Function at 0x54c2f0
Capabilities:
Parse url

Disassembly:
push 0xffffffffffffffff
push 0x65be7f
mov eax, dword fs:[0]
push eax
mov eax, 0x2848
call fcn.0061ea30
mov eax, dword [0x755898]
xor eax, esp
mov dword [esp + 0x2844], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x755898]
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 0x54c340
sub eax, edx
cmp eax, 0x2800
ja 0x54cc5e
push esi
call fcn.00406b40
add esp, 4
test eax, eax
jne 0x54cc5e
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 0x54c370
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.0061e8e0
add esp, 8
test eax, eax
je 0x54c55e
lea ecx, [esp + 0x58]
push 0x676988
push ecx
call fcn.0061e9a0
mov esi, eax
add esp, 8
test esi, esi
je 0x54c55e
mov edx, esi
lea eax, [esp + 0x58]
sub edx, eax
cmp edx, 8
jg 0x54c55e
mov eax, esi
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x54c3f0
sub eax, edx
cmp eax, 4
jbe 0x54c55e
add esi, 3
push 0x6874c8
push esi
call fcn.0061fa60
add esp, 8
test eax, eax
je 0x54c55e
cmp byte [eax], 0x40
jne 0x54c55e
inc eax
push 0x6874c8
push eax
call fcn.0061fa60
mov edi, eax
add esp, 8
cmp byte [edi], 0x40
jne 0x54c55e
mov edi, edi
lea eax, [edi + 1]
push 0x6874c8
push eax
call fcn.0061fa60
add esp, 8
test eax, eax
je 0x54c45e
cmp byte [eax], 0x40
jne 0x54c45e
mov edi, eax
jmp 0x54c440
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.0061eea0
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.0054b770
add esp, 0x18
test eax, eax
je 0x54c54d
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.0061eea0
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 0x675de0
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 0x676988
push eax
call fcn.0061e9a0
add esp, 8
test eax, eax
je 0x54c91e
add eax, 4
push 0x2f
push eax
call fcn.0061e8e0
mov esi, eax
add esp, 8
test esi, esi
je 0x54c91e
inc esi
push 0x6a7a88
push esi
mov dword [esp + 0x58], esi
call fcn.0061e9a0
add esp, 8
test eax, eax
jne 0x54c5bd
push str._26
push esi
call fcn.0061e9a0
add esp, 8
test eax, eax
je 0x54c91e
lea ecx, [esp + 0x20]
call fcn.00402500
mov byte [esp + 0x2864], 5
push esi
lea ecx, [esp + 0x24]
push 0x675ea0
push ecx
call fcn.00402f70
add esp, 0xc
push 0x6a7a88
push str._26
lea ecx, [esp + 0x28]
call fcn.00402c10
mov edx, dword [esp + 0x20]
push 0x6a7a88
push edx
call fcn.0061e9a0
add esp, 8
mov byte [esp + 0x27], 0
test eax, eax
je 0x54c90d
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x54c618
sub ecx, esi
cmp ecx, 3
jbe 0x54c8b8
lea edi, [eax + 2]
push 0x3b
push edi
call fcn.0061e8e0
add esp, 8
test eax, eax
je 0x54c8b8
sub eax, edi
mov ebx, eax
je 0x54c87e
push 0x6a7a88
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 0x54c6dc
cmp al, 0x58
je 0x54c6dc
xor esi, esi
mov byte [esp + 0x26], 0
test ebx, ebx
jbe 0x54c751
movsx eax, byte [esi + edi]
push eax
call fcn.0061f2dc
add esp, 4
test eax, eax
jne 0x54c6ab
mov byte [esp + 0x17], al
jmp 0x54c6d5
mov cl, byte [esi + edi]
mov byte [esp + 0x44], cl
mov edx, dword [esp + 0x44]
push edx
lea ecx, [esp + 0x38]
call fcn.00415af0
mov al, byte [esi + edi]
mov byte [esp + 0x54], al
mov ecx, dword [esp + 0x54]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00415af0
inc esi
cmp esi, ebx
jb 0x54c694
jmp 0x54c746
mov byte [esp + 0x4c], al
mov edx, dword [esp + 0x4c]
push edx
lea ecx, [esp + 0x38]
call fcn.00415af0
mov esi, 1
cmp ebx, esi
jbe 0x54c751
jmp 0x54c700
movsx eax, byte [esi + edi]
push eax
call fcn.0061f360
add esp, 4
test eax, eax
jne 0x54c717
mov byte [esp + 0x17], al
jmp 0x54c741
mov cl, byte [esi + edi]
mov byte [esp + 0x40], cl
mov edx, dword [esp + 0x40]
push edx
lea ecx, [esp + 0x38]
call fcn.00415af0
mov al, byte [esi + edi]
mov byte [esp + 0x48], al
mov ecx, dword [esp + 0x48]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00415af0
inc esi
cmp esi, ebx
jb 0x54c700
cmp byte [esp + 0x17], 0
je 0x54c896
push 0x68753c
lea ecx, [esp + 0x38]
mov byte [esp + 0x2b], 1
call fcn.00403070
cmp byte [esp + 0x26], 0
je 0x54c7b3
push 0x689b8c
lea ecx, [esp + 0x40]
call fcn.004030b0
mov byte [esp + 0x2864], 8
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x40]
call fcn.0040e6c0
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 0x54c857
lea ecx, [esp + 0x28]
call fcn.00402500
mov byte [esp + 0x2864], 9
mov edx, dword [esp + 0x18]
push edx
call fcn.0061eb31
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 0x54c84b
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 0x54c84b
mov eax, dword [esp + 0x28]
push eax
call fcn.004adcb0
mov esi, eax
add esp, 4
test esi, esi
je 0x54c84b
mov ecx, dword [esp + 0x34]
push esi
push ecx
lea ecx, [esp + 0x28]
call fcn.00402c10
push esi
call fcn.005f15b7
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 0x6a7a88
push edi
call fcn.0061e9a0
add esp, 8
test eax, eax
jne 0x54c613
jmp 0x54c8b8
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 0x54c90d
mov eax, dword [esp + 0x20]
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x54c8c8
mov edx, dword [esp + 0x50]
sub ecx, esi
lea esi, [esp + 0x2858]
sub esi, edx
cmp ecx, esi
jge 0x54c90d
mov byte [edx], 0
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x54c8e7
lea edi, [esp + 0x58]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x54c8f7
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.0054ae30
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.0061d9e0
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 0x54c9e3
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 0x54cc39
push 0x26
lea ebx, [ebp + 0x5108]
push ebx
call fcn.0061e8e0
add esp, 8
test eax, eax
je 0x54ca31
push str._IDMAppersandRpl_SS_P789EO96_
push ebx
call fcn.0061e9a0
add esp, 8
test eax, eax
jne 0x54ca31
mov byte [ebp + 0x791c], 1
push 0x5b
push ebx
call fcn.0061e8e0
add esp, 8
test eax, eax
je 0x54ca59
push str._IDM_LSB_Rpl_SS_P789EO96_
push ebx
call fcn.0061e9a0
add esp, 8
test eax, eax
jne 0x54ca59
mov byte [ebp + 0x791d], 1
push 0x5d
push ebx
call fcn.0061e8e0
add esp, 8
test eax, eax
je 0x54ca81
push str._IDM_RSB_Rpl_SS_P789EO96_
push ebx
call fcn.0061e9a0
add esp, 8
test eax, eax
jne 0x54ca81
mov byte [ebp + 0x791e], 1
push 3
push 0x676be4
lea ebx, [ebp + 0x7908]
push ebx
call fcn.00621d6d
add esp, 0xc
test eax, eax
je 0x54cb16
push 3
push 0x676bd8
push ebx
call fcn.00621d6d
add esp, 0xc
test eax, eax
je 0x54cb16
push 4
push str.rtmp
push ebx
call fcn.00621d6d
add esp, 0xc
test eax, eax
je 0x54cb16
cmp byte [ebp + 0x7918], 0
jne 0x54cb23
lea eax, [ebp + 0x5108]
push 0x25
push eax
call fcn.0061e8e0
add esp, 8
test eax, eax
je 0x54cb16
mov bl, 0x30
cmp byte [eax], 0x25
jne 0x54cba0
cmp byte [eax + 1], 0x32
lea ecx, [eax + 1]
jne 0x54cba0
cmp byte [eax + 2], bl
jne 0x54cba0
cmp byte [ecx], 0
je 0x54cb16
push 0x25
push ecx
call fcn.0061e8e0
add esp, 8
test eax, eax
jne 0x54cae3
cmp byte [ebp + 0x7918], 0
je 0x54ccac
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.005b5030
lea eax, [ebp + 0x7908]
push 0x676be4
push eax
call fcn.0061ee1e
add esp, 0x10
test eax, eax
jne 0x54cc9b
mov edx, dword [ebp + 0x30]
push edx
call fcn.0054ae30
add esp, 4
test al, al
je 0x54cc9b
mov ecx, dword [esp + 0x2c]
mov eax, dword [ebp + 0x30]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x54cbac
test dl, dl
je 0x54cb9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x54cbac
add eax, 2
add ecx, 2
test dl, dl
jne 0x54cb80
xor eax, eax
jmp 0x54cbb1
mov ecx, ebp
call fcn.0054b530
jmp 0x54ced2
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x54cc9b
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 0x54cbf8
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 0x54cc65
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 0x54cefc
mov ecx, dword [ebp + 0x30]
push ebx
push ecx
call fcn.005b5030
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 0x54cc80
mov byte [esp + 0x2864], 0xa
lea ecx, [esp + 0x28]
call fcn.00402570
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x2c]
jmp 0x54cd86
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 0x54ccf0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x54ccf0
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 0x54cd20
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x18]
jmp 0x54cc34
mov eax, dword [esp + 0x18]
push 0x23
push eax
call fcn.0061e8e0
mov esi, eax
add esp, 8
test esi, esi
je 0x54cd62
push 0x677488
lea edi, [ebp + 0x7908]
push edi
call fcn.0061ee1e
add esp, 8
test eax, eax
je 0x54cd5f
push 0x676bdc
push edi
call fcn.0061ee1e
add esp, 8
test eax, eax
jne 0x54cd62
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 0x54cd70
mov byte [esp + 0x2864], 1
lea ecx, [esp + 0x18]
call fcn.00402570
mov ecx, ebp
call fcn.0054b530
cmp byte [ebp + 0x791c], 0
je 0x54cdba
lea eax, [ebp + 0x5108]
push str._IDMAppersandRpl_SS_P789EO96_
push eax
call fcn.0061e9a0
add esp, 8
test eax, eax
je 0x54cdba
mov byte [ebp + 0x791c], 0
cmp byte [ebp + 0x791d], 0
je 0x54cde2
lea eax, [ebp + 0x5108]
push str._IDM_LSB_Rpl_SS_P789EO96_
push eax
call fcn.0061e9a0
add esp, 8
test eax, eax
je 0x54cde2
mov byte [ebp + 0x791d], 0
cmp byte [ebp + 0x791e], 0
je 0x54ce0a
lea eax, [ebp + 0x5108]
push str._IDM_RSB_Rpl_SS_P789EO96_
push eax
call fcn.0061e9a0
add esp, 8
test eax, eax
je 0x54ce0a
mov byte [ebp + 0x791e], 0
cmp byte [esp + 0x1f], 0
je 0x54ce61
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 0x54ce20
sub eax, esi
cmp eax, 0x64
jae 0x54ce61
mov eax, dword [esp + 0x30]
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x54ce35
sub eax, esi
cmp eax, 0x64
jae 0x54ce61
mov edx, dword [ebp + 0x20]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x54ce46
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 0x54ce57
push 0x676bd8
lea esi, [ebp + 0x7908]
push esi
call fcn.0061ee1e
add esp, 8
test eax, eax
jne 0x54ce8c
xor ecx, ecx
cmp cx, word [ebp + 0x1c]
jne 0x54ce8c
mov edx, 0x6db
mov word [ebp + 0x1c], dx
jmp 0x54ced2
push str.rtmp
push esi
call fcn.0061ee1e
add esp, 8
test eax, eax
jne 0x54ceaf
cmp ax, word [ebp + 0x1c]
jne 0x54ceaf
mov ecx, 0x78f
mov word [ebp + 0x1c], cx
jmp 0x54ced2
push str.rtmpt
push esi
call fcn.0061ee1e
add esp, 8
test eax, eax
jne 0x54ced2
xor edx, edx
cmp dx, word [ebp + 0x1c]
jne 0x54ced2
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.0061d2ff
add esp, 0x2854
ret 8