Function at 0x44a994
Capabilities:
Encode data using xor
Encrypt data using xxtea

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 0x19a4
call fcn.00593e50
mov dword [ebp - 0xc], ebx
mov eax, dword [ebp - 4]
xor ecx, ecx
mov dword [ebp - 8], esi
mov dword [ebp - 4], edi
mov dword [ebp - 0x1824], eax
mov dword [ebp - 0x182c], ecx
cmp byte [edx], 2
je 0x44a9f4
mov dword [esp], 2
mov edx, str.HandleInvoke
mov eax, str._s__Sanity_failed._no_string_method_in_invoke_packet
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.00451c24
mov ebx, dword [ebp - 0xc]
xor eax, eax
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
xor eax, eax
lea ebx, [ebp - 0x17f0]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov dword [esp + 4], edx
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.00451894
test eax, eax
js 0x44acc2
mov dword [esp], ebx
xor edi, edi
xor ebx, ebx
call fcn.00450d24
mov dword [esp + 4], edi
xor eax, eax
mov esi, 1
mov dword [esp + 8], eax
lea eax, [ebp - 0x17f0]
mov dword [esp], eax
call fcn.00451974
mov dword [esp], eax
lea edx, [ebp - 0x17f8]
mov dword [esp + 4], edx
call fcn.004507c4
mov dword [esp + 8], esi
lea ecx, [ebp - 0x17f0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.00451974
mov dword [esp], eax
call fcn.00450794
fnstcw word [ebp - 0x181a]
mov ecx, str.HandleInvoke
mov edx, str._s__server_invoking___s_
movzx eax, word [ebp - 0x181a]
or ax, 0xc00
mov word [ebp - 0x181c], ax
mov eax, dword [ebp - 0x17f8]
fldcw word [ebp - 0x181c]
fistp dword [ebp - 0x1828]
fldcw word [ebp - 0x181a]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 4], edx
mov dword [esp], 4
call fcn.00451c24
mov ecx, dword [ebp - 0x17f4]
cmp ecx, dword [0x5af9f8]
je 0x44abb5
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af9a4]
je 0x44acdc
mov ebx, dword [ebp - 0x17f4]
cmp ebx, dword [0x5af990]
je 0x44adba
cmp ebx, dword [0x5af978]
je 0x44add8
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af960]
je 0x44ae0f
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af950]
je 0x44aee5
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af93c]
je 0x44afd1
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af914]
je 0x44b09f
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af904]
je 0x44b0d2
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af8fc]
je 0x44b113
mov eax, dword [ebp - 0x17f4]
cmp eax, dword [0x5af754]
je 0x44b2d4
lea esi, [esi]
lea edi, [edi]
lea edx, [ebp - 0x17f0]
mov dword [esp], edx
call fcn.00451a14
mov eax, dword [ebp - 0x182c]
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
cld
mov esi, dword [ebp - 0x17f8]
cmp ecx, ecx
mov edi, dword [str._result]
repe cmpsb byte [esi], byte es:[edi]
jne 0x44aad8
xor eax, eax
mov ebx, dword [ebp - 0x1824]
xor ecx, ecx
mov dword [ebp - 0x1800], eax
xor eax, eax
mov dword [ebp - 0x17fc], eax
mov ebx, dword [ebx + 0x3c]
cmp ebx, 0
mov dword [ebp - 0x1984], ebx
jle 0x44ac31
mov eax, dword [ebp - 0x1824]
xor edx, edx
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x1988], eax
add eax, 8
lea esi, [esi]
lea edi, [edi]
mov ebx, dword [ebp - 0x1828]
cmp dword [eax], ebx
je 0x44b3be
inc ecx
add edx, 0xc
add eax, 0xc
cmp dword [ebp - 0x1984], ecx
jg 0x44ac14
mov eax, dword [ebp - 0x1800]
test eax, eax
je 0x44b391
mov dword [esp + 0xc], eax
mov eax, str.HandleInvoke
mov dword [esp + 8], eax
mov eax, str._s__received_result_for_method_call___s_
mov dword [esp + 4], eax
mov dword [esp], 4
call fcn.00451c24
mov eax, dword [ebp - 0x17fc]
cmp eax, dword [0x5af9e8]
je 0x44b3f5
mov ebx, dword [ebp - 0x1800]
mov dword [ebp - 0x1964], ebx
mov eax, dword [ebp - 0x17fc]
cmp eax, dword [0x5af724]
je 0x44b60e
mov ebx, dword [ebp - 0x17fc]
cmp ebx, dword [0x5af9c4]
je 0x44b869
cmp ebx, dword [0x5af9b4]
je 0x44b891
mov eax, dword [ebp - 0x1964]
mov dword [esp], eax
call sub.msvcrt.dll_free
jmp 0x44ab94
mov dword [esp], 1
mov eax, str.HandleInvoke
mov dword [esp + 8], eax
mov eax, str._s__error_decoding_invoke_packet
jmp 0x44a9d6
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str.onBWDone]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44aaea
mov ebx, dword [ebp - 0x1824]
mov eax, dword [ebx + 8]
test eax, eax
jne 0x44ab94
mov byte [ebp - 0x10e8], 0
xor ecx, ecx
lea eax, [ebp - 0x15d6]
mov dword [ebp - 0x10dc], ecx
mov edx, 0x5af924
lea ebx, [ebp - 0x14e8]
mov byte [ebp - 0x10e7], 0x14
mov edi, 3
xor esi, esi
mov dword [ebp - 0x10e4], edi
mov dword [ebp - 0x10e0], esi
mov byte [ebp - 0x10e6], 0
mov dword [ebp - 0x10cc], eax
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
mov ecx, dword [ebp - 0x1824]
mov edx, eax
mov eax, dword [ecx + 0x38]
inc eax
mov dword [ecx + 0x38], eax
push eax
fild dword [esp]
add esp, 4
mov dword [esp], edx
mov dword [esp + 4], ebx
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, eax
mov eax, dword [ebp - 0x10cc]
inc edx
sub edx, eax
xor eax, eax
mov dword [ebp - 0x10d8], edx
mov dword [esp + 8], eax
lea eax, [ebp - 0x10e8]
mov dword [esp + 4], eax
mov ebx, dword [ebp - 0x1824]
mov dword [esp], ebx
call fcn.00449aa4
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp ebx, ebx
mov edi, dword [str.onFCSubscribe]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
je 0x44ab94
jmp 0x44aafc
cld
mov esi, dword [ebp - 0x17f8]
cmp ebx, ebx
mov edi, dword [str.onFCUnsubscribe]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab08
mov ebx, dword [ebp - 0x1824]
mov dword [esp], ebx
call fcn.004495d4
mov eax, 1
mov dword [ebp - 0x182c], eax
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str.ping]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab1a
fild dword [ebp - 0x1828]
mov edi, 3
mov byte [ebp - 0xcc8], 1
mov edx, dword [ebp - 0x1824]
mov dword [ebp - 0xcc4], edi
mov ecx, 0x5afa7c
mov byte [ebp - 0xcc7], 0x14
lea ebx, [ebp - 0x15e8]
xor esi, esi
mov eax, dword [edx + 8]
mov dword [ebp - 0xcbc], esi
xor edi, edi
mov byte [ebp - 0xcc6], 0
lea edx, [eax + eax*4]
lea edx, [eax + edx*2]
fstp qword [ebp - 0x18a0]
add edx, edx
lea eax, [ebp - 0x16d6]
mov dword [ebp - 0xcc0], edx
mov dword [ebp - 0xcac], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
fld qword [ebp - 0x18a0]
mov dword [esp + 4], ebx
mov dword [esp], eax
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, dword [ebp - 0xcac]
inc eax
sub eax, edx
mov dword [ebp - 0xcb8], eax
lea eax, [ebp - 0xcc8]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1824]
mov dword [esp], eax
call fcn.00449aa4
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str._onbwcheck]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab2c
fild dword [ebp - 0x1828]
mov esi, 3
mov byte [ebp - 0x8a8], 1
mov edx, dword [ebp - 0x1824]
mov dword [ebp - 0x8a4], esi
xor ecx, ecx
mov byte [ebp - 0x8a7], 0x14
lea ebx, [ebp - 0x16e8]
mov eax, dword [edx + 8]
mov dword [ebp - 0x89c], ecx
mov byte [ebp - 0x8a6], 0
lea edx, [eax + eax*4]
lea edx, [eax + edx*2]
fstp qword [ebp - 0x18b0]
add edx, edx
lea eax, [ebp - 0x17d6]
mov dword [ebp - 0x8a0], edx
mov edx, 0x5af9f4
mov dword [ebp - 0x88c], eax
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
fld qword [ebp - 0x18b0]
mov dword [esp + 4], ebx
mov dword [esp], eax
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, eax
mov ecx, dword [ebp - 0x1824]
inc edx
mov eax, dword [ecx + 8]
push eax
inc eax
fild dword [esp]
add esp, 4
fstp qword [esp + 8]
mov dword [ecx + 8], eax
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.00450504
mov edx, eax
mov eax, dword [ebp - 0x88c]
sub edx, eax
mov dword [ebp - 0x898], edx
xor eax, eax
mov dword [esp + 8], eax
lea eax, [ebp - 0x8a8]
jmp 0x44ada3
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str._onbwdone]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab3e
mov ebx, dword [ebp - 0x1824]
xor eax, eax
mov dword [ebp - 0x18bc], eax
mov ebx, dword [ebx + 0x3c]
cmp ebx, 0
mov dword [ebp - 0x1984], ebx
jle 0x44ab94
mov eax, dword [ebp - 0x1824]
xor ebx, ebx
mov edx, dword [0x5af928]
mov ecx, dword [str._checkbw]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x1968], edx
mov dword [ebp - 0x18c0], ecx
mov dword [ebp - 0x1988], eax
jmp 0x44b050
inc dword [ebp - 0x18bc]
add ebx, 0xc
mov eax, dword [ebp - 0x18bc]
cmp dword [ebp - 0x1984], eax
jle 0x44ab94
mov edx, dword [ebp - 0x1988]
mov eax, dword [ebx + edx + 4]
cmp eax, dword [ebp - 0x1968]
jne 0x44b035
cld
mov esi, dword [ebx + edx]
cmp eax, eax
mov edi, dword [ebp - 0x18c0]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b035
mov eax, 1
mov edx, dword [ebp - 0x1824]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x18bc]
add edx, 0x3c
mov dword [esp], eax
mov eax, dword [ebp - 0x1988]
call fcn.00448cd4
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str._error]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab50
mov dword [esp], 1
mov edi, str.rtmp_server_sent_error
mov dword [esp + 4], edi
call fcn.00451c24
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str.close]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab62
mov dword [esp], 1
mov esi, str.rtmp_server_requested_close
mov dword [esp + 4], esi
call fcn.00451c24
mov ebx, dword [ebp - 0x1824]
mov dword [esp], ebx
call fcn.004495d4
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str.onStatus]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab74
mov ebx, 3
xor ecx, ecx
mov dword [esp + 8], ebx
lea ebx, [ebp - 0x17f0]
mov dword [esp + 4], ecx
mov dword [esp], ebx
lea ebx, [ebp - 0x1808]
call fcn.00451974
mov dword [esp], eax
mov dword [esp + 4], ebx
call fcn.004507e4
mov dword [esp], ebx
mov edx, 0xffffffff
mov eax, 0x5af8e4
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.00451974
mov dword [esp], eax
lea edx, [ebp - 0x1810]
mov dword [esp + 4], edx
call fcn.004507c4
mov dword [esp], ebx
mov eax, 0xffffffff
mov dword [esp + 8], eax
mov eax, 0x5af8d4
mov dword [esp + 4], eax
call fcn.00451974
mov dword [esp], eax
lea edx, [ebp - 0x1818]
mov dword [esp + 4], edx
call fcn.004507c4
mov eax, dword [ebp - 0x1810]
mov dword [esp], 4
mov dword [esp + 0xc], eax
mov eax, str.HandleInvoke
mov dword [esp + 8], eax
mov eax, str._s__onStatus:__s
mov dword [esp + 4], eax
call fcn.00451c24
mov ebx, dword [ebp - 0x180c]
cmp ebx, dword [0x5af8c8]
je 0x44b8ac
cmp ebx, dword [0x5af8ac]
je 0x44b8fe
cmp ebx, dword [0x5af88c]
je 0x44b951
cmp ebx, dword [0x5af864]
je 0x44b96f
mov eax, dword [ebp - 0x180c]
cmp eax, dword [0x5af838]
je 0x44ba6b
mov eax, dword [ebp - 0x180c]
cmp eax, dword [0x5af818]
je 0x44bb26
mov ebx, dword [ebp - 0x180c]
cmp ebx, dword [0x5af7f8]
je 0x44bbe7
cmp ebx, dword [0x5af7d8]
je 0x44bc05
cmp ebx, dword [0x5af7bc]
je 0x44bc23
mov eax, dword [ebp - 0x180c]
cmp eax, dword [0x5af794]
je 0x44bc41
mov eax, dword [ebp - 0x180c]
cmp eax, dword [0x5af774]
jne 0x44ab94
cld
mov esi, dword [ebp - 0x1810]
cmp eax, eax
mov edi, dword [str.NetStream.Pause.Notify]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab94
mov ebx, dword [ebp - 0x1824]
mov eax, dword [ebx + 0x28]
dec eax
cmp eax, 1
ja 0x44ab94
mov eax, dword [ebx + 0x24]
mov dword [esp], ebx
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + 4], eax
call fcn.0044a524
mov dword [ebx + 0x28], 3
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x17f8]
cmp eax, eax
mov edi, dword [str.playlist_ready]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ab94
mov ebx, dword [ebp - 0x1824]
xor eax, eax
mov dword [ebp - 0x1958], eax
mov ebx, dword [ebx + 0x3c]
cmp ebx, 0
mov dword [ebp - 0x1984], ebx
jle 0x44ab94
mov eax, dword [ebp - 0x1824]
xor ebx, ebx
mov edx, dword [0x5af73c]
mov ecx, dword [str.set_playlist]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x1980], edx
mov dword [ebp - 0x195c], ecx
mov dword [ebp - 0x1988], eax
jmp 0x44b353
inc dword [ebp - 0x1958]
add ebx, 0xc
mov eax, dword [ebp - 0x1958]
cmp dword [ebp - 0x1984], eax
jle 0x44ab94
mov edx, dword [ebp - 0x1988]
mov eax, dword [ebx + edx + 4]
cmp eax, dword [ebp - 0x1980]
jne 0x44b338
cld
mov esi, dword [ebx + edx]
cmp eax, eax
mov edi, dword [ebp - 0x195c]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b338
mov eax, 1
mov edx, dword [ebp - 0x1824]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1958]
jmp 0x44b089
mov eax, dword [ebp - 0x1828]
mov dword [esp], 4
mov dword [esp + 0xc], eax
mov eax, str.HandleInvoke
mov dword [esp + 8], eax
mov eax, str._s__received_result_id__d_without_matching_request
mov dword [esp + 4], eax
call fcn.00451c24
jmp 0x44ab94
mov ebx, dword [ebp - 0x1988]
mov eax, dword [edx + ebx]
mov edx, dword [edx + ebx + 4]
mov dword [ebp - 0x1800], eax
xor eax, eax
mov dword [ebp - 0x17fc], edx
mov edx, dword [ebp - 0x1824]
mov dword [esp + 4], eax
mov eax, ebx
add edx, 0x3c
mov dword [esp], ecx
call fcn.00448cd4
jmp 0x44ac31
cld
mov edx, dword [ebp - 0x1800]
cmp eax, eax
mov edi, dword [0x5af9e4]
mov ecx, eax
mov esi, edx
mov dword [ebp - 0x1964], edx
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov bl, dl
sub bl, al
movsx ebx, bl
test ebx, ebx
jne 0x44ac7f
mov eax, dword [ebp - 0x1824]
mov edi, dword [eax + 0xc4440]
test edi, edi
jne 0x44b98d
mov ebx, dword [ebp - 0x1824]
test byte [ebx + 0xc4460], 0x10
je 0x44b918
mov dword [ebp - 0x64], 3
lea ebx, [ebp - 0x68]
mov edx, 0x5afa28
mov byte [ebp - 0x68], 1
lea eax, [ebp - 0x456]
mov byte [ebp - 0x67], 0x14
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
mov byte [ebp - 0x66], 0
mov dword [ebp - 0x4c], eax
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
mov ecx, dword [ebp - 0x1824]
mov edx, eax
mov eax, dword [ecx + 0x38]
inc eax
mov dword [ecx + 0x38], eax
push eax
fild dword [esp]
add esp, 4
mov dword [esp], edx
mov dword [esp + 4], ebx
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, eax
mov esi, dword [ebp - 0x1824]
mov dword [esp + 4], ebx
inc edx
mov dword [esp], edx
add esi, 0xc43fc
mov dword [esp + 8], esi
call fcn.00450454
test eax, eax
mov edx, eax
je 0x44b4fc
mov eax, dword [ebp - 0x4c]
sub edx, eax
xor eax, eax
mov dword [ebp - 0x58], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov ebx, dword [ebp - 0x1824]
mov dword [esp], ebx
call fcn.00449aa4
mov byte [ebp - 0x488], 1
mov eax, 3
lea ebx, [ebp - 0x488]
mov dword [ebp - 0x484], eax
xor eax, eax
mov edi, 0x5afa3c
mov dword [ebp - 0x480], eax
xor eax, eax
mov dword [ebp - 0x47c], eax
lea eax, [ebp - 0x876]
mov byte [ebp - 0x487], 0x14
mov byte [ebp - 0x486], 0
mov dword [ebp - 0x46c], eax
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
mov ecx, dword [ebp - 0x1824]
mov edx, eax
mov eax, dword [ecx + 0x38]
inc eax
mov dword [ecx + 0x38], eax
push eax
fild dword [esp]
add esp, 4
mov dword [esp], edx
mov dword [esp + 4], ebx
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, eax
inc edx
mov dword [esp], edx
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
call fcn.00450454
test eax, eax
mov edx, eax
je 0x44b5bb
mov ecx, dword [ebp - 0x46c]
xor eax, eax
sub edx, ecx
mov dword [ebp - 0x478], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov ebx, dword [ebp - 0x1824]
mov dword [esp], ebx
call fcn.00449aa4
mov ecx, dword [ebp - 0x1824]
mov dword [esp], ecx
call fcn.0044a6f4
mov ebx, dword [ebp - 0x1824]
test byte [ebx + 0xc4460], 0x10
jne 0x44b858
mov eax, dword [ebx + 0xc4438]
test eax, eax
jne 0x44c10a
mov edx, dword [ebp - 0x1824]
test byte [edx + 0xc4458], 2
jne 0x44bd5b
mov edx, dword [ebp - 0x1800]
mov dword [ebp - 0x1964], edx
jmp 0x44acaf
cld
mov edi, dword [str.createStream]
cmp eax, eax
mov esi, dword [ebp - 0x1964]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44ac91
mov eax, 3
xor edi, edi
lea ebx, [ebp - 0x17f0]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00451974
mov dword [esp], eax
call fcn.00450794
fnstcw word [ebp - 0x181a]
mov edx, dword [ebp - 0x1824]
movzx eax, word [ebp - 0x181a]
or ax, 0xc00
mov word [ebp - 0x181c], ax
fldcw word [ebp - 0x181c]
fistp dword [ebp - 0x1820]
fldcw word [ebp - 0x181a]
mov eax, dword [ebp - 0x1820]
test byte [edx + 0xc4460], 0x10
mov dword [edx + 0x18], eax
jne 0x44bc6c
mov edx, dword [ebp - 0x1824]
lea esi, [edx + 0xc43fc]
test byte [edx + 0xc4458], 8
jne 0x44c11e
mov byte [ebp - 0x10e8], 0
mov ebx, 8
xor ecx, ecx
mov dword [ebp - 0x10e4], ebx
mov ebx, dword [ebp - 0x1824]
lea edi, [ebp - 0x10e8]
mov dword [ebp - 0x10e0], ecx
mov edx, 0x5af9c0
mov byte [ebp - 0x10e7], 0x14
mov eax, dword [ebx + 0x18]
mov byte [ebp - 0x10e6], 0
mov dword [ebp - 0x10dc], eax
lea eax, [ebp - 0x14d6]
mov dword [ebp - 0x10cc], eax
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.00450454
mov edx, dword [ebp - 0x1824]
mov ebx, eax
mov eax, dword [edx + 0x38]
inc eax
mov dword [edx + 0x38], eax
push eax
fild dword [esp]
add esp, 4
mov dword [esp], ebx
mov dword [esp + 4], edi
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov ebx, eax
mov ecx, dword [ebp - 0x1824]
inc ebx
mov eax, dword [ecx + 0xc43fc]
mov dword [esp + 0x14], eax
mov eax, dword [ecx + 0xc4454]
mov dword [esp + 0x10], eax
mov eax, dword [ecx + 0xc4450]
mov dword [esp], 4
mov dword [esp + 0xc], eax
mov eax, str.SendPlay
mov dword [esp + 8], eax
mov eax, str._s__seekTime_d__stopTime_d__sending_play:__s
mov dword [esp + 4], eax
call fcn.00451c24
mov dword [esp], ebx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
call fcn.00450454
test eax, eax
mov ebx, eax
je 0x44b833
mov eax, dword [ebp - 0x1824]
test byte [eax + 0xc4458], 2
jne 0x44c226
mov edx, dword [ebp - 0x1824]
fldz
fild dword [edx + 0xc4450]
fucom st(1)
fnstsw ax
fstp st(1)
sahf
jbe 0x44c213
fstp qword [esp + 8]
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.00450504
test eax, eax
mov ebx, eax
je 0x44b833
mov edx, dword [ebp - 0x1824]
mov eax, dword [edx + 0xc4454]
test eax, eax
je 0x44b80a
mov ecx, dword [edx + 0xc4450]
sub eax, ecx
push eax
fild dword [esp]
add esp, 4
mov dword [esp], ebx
mov dword [esp + 4], edi
fstp qword [esp + 8]
call fcn.00450504
test eax, eax
mov ebx, eax
je 0x44b833
mov eax, dword [ebp - 0x10cc]
sub ebx, eax
mov eax, 1
mov dword [ebp - 0x10d8], ebx
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov ecx, dword [ebp - 0x1824]
mov dword [esp], ecx
call fcn.00449aa4
mov ebx, dword [ebp - 0x1824]
mov eax, dword [ebx + 0x14]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, 3
mov dword [esp + 4], eax
call fcn.0044a174
mov eax, dword [ebp - 0x1800]
mov dword [ebp - 0x1964], eax
jmp 0x44acaf
cld
mov edi, dword [str.play]
cmp ebx, ebx
mov esi, dword [ebp - 0x1964]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x44aca3
mov ebx, dword [ebp - 0x1824]
mov byte [ebx + 0x35], 1
jmp 0x44acaf
cld
mov edi, dword [str.publish]
cmp ebx, ebx
mov esi, dword [ebp - 0x1964]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x44acaf
jmp 0x44b882
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetStream.Failed]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b1ed
mov ebx, dword [ebp - 0x1824]
mov dword [ebx + 0x18], 0xffffffff
mov dword [esp], ebx
call fcn.004495d4
mov eax, dword [ebp - 0x1810]
mov dword [esp], 1
mov dword [esp + 8], eax
mov eax, str.Closing_connection:__s
mov dword [esp + 4], eax
call fcn.00451c24
jmp 0x44ab94
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetStream.Play.Failed]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
je 0x44b8c5
jmp 0x44b1f9
mov eax, dword [ebp - 0x1824]
mov dword [esp], eax
call fcn.0044a3d4
mov eax, 0x12c
mov dword [esp + 0xc], eax
xor eax, eax
mov dword [esp + 8], eax
mov eax, 3
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x1824]
mov dword [esp], edx
call fcn.0044a174
jmp 0x44b5bb
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetStream.Play.StreamNotFound]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
je 0x44b8c5
jmp 0x44b205
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetConnection.Connect.InvalidApp]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b211
jmp 0x44b8c5
lea eax, [ebp - 0x38]
mov esi, 0x5af9d4
lea edx, [ebp - 0x17f0]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], edx
call fcn.00448d74
test eax, eax
je 0x44b439
cld
mov edx, 4
mov eax, ebx
mov ecx, edx
lea edi, [ebp - 0x48]
xor edx, edx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x1858], edx
mov eax, dword [ebp - 0x1824]
xor ecx, ecx
mov dword [ebp - 0x184c], ecx
xor esi, esi
lea edx, [ebp - 0x48]
mov dword [ebp - 0x1840], edx
mov edi, dword [eax + 0xc4440]
mov ebx, dword [eax + 0xc443c]
cmp edi, 0x10
jle 0x44b9f9
mov edi, 0x10
xor eax, eax
cmp dword [ebp - 0x184c], edi
mov dword [ebp - 0x1854], eax
jl 0x44ba2c
jmp 0x44bd89
inc dword [ebp - 0x1858]
inc dword [ebp - 0x1854]
cmp dword [ebp - 0x1854], edi
jge 0x44bd7d
mov ecx, dword [ebp - 0x1854]
mov edx, dword [ebp - 0x1858]
movzx eax, byte [ecx + ebx]
shl edx, 3
mov cl, dl
shl eax, cl
or esi, eax
cmp dword [ebp - 0x1858], 3
jne 0x44ba14
mov eax, dword [ebp - 0x1840]
mov dword [eax], esi
add eax, 4
xor esi, esi
mov dword [ebp - 0x1840], eax
xor eax, eax
mov dword [ebp - 0x1858], eax
jmp 0x44ba1a
cld
mov esi, dword [ebp - 0x1810]
cmp eax, eax
mov edi, dword [str.NetStream.Play.Start]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b223
mov ebx, dword [ebp - 0x1824]
xor esi, esi
mov eax, dword [ebx + 0x3c]
mov byte [ebx + 0x35], 1
mov dword [ebp - 0x1908], esi
cmp eax, 0
mov dword [ebp - 0x1984], eax
jle 0x44ab94
mov edx, dword [ebx + 0x40]
mov ebx, dword [str.play]
mov ecx, dword [0x5af9c4]
mov dword [ebp - 0x1988], edx
mov dword [ebp - 0x190c], ebx
xor ebx, ebx
mov dword [ebp - 0x196c], ecx
jmp 0x44bae8
inc dword [ebp - 0x1908]
add ebx, 0xc
mov eax, dword [ebp - 0x1908]
cmp dword [ebp - 0x1984], eax
jle 0x44ab94
mov edx, dword [ebp - 0x1988]
mov eax, dword [ebx + edx + 4]
cmp eax, dword [ebp - 0x196c]
jne 0x44bacd
cld
mov esi, dword [ebx + edx]
cmp eax, eax
mov edi, dword [ebp - 0x190c]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44bacd
mov edi, 1
mov edx, dword [ebp - 0x1824]
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x1908]
jmp 0x44b089
cld
mov esi, dword [ebp - 0x1810]
cmp eax, eax
mov edi, dword [str.NetStream.Publish.Start]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b235
mov ebx, dword [ebp - 0x1824]
xor eax, eax
mov byte [ebx + 0x35], 1
mov dword [ebp - 0x191c], eax
mov eax, dword [ebx + 0x3c]
cmp eax, 0
mov dword [ebp - 0x1984], eax
jle 0x44ab94
mov edx, dword [ebx + 0x40]
mov ebx, dword [str.publish]
mov ecx, dword [0x5af9b4]
mov dword [ebp - 0x1988], edx
mov dword [ebp - 0x1920], ebx
xor ebx, ebx
mov dword [ebp - 0x1970], ecx
jmp 0x44bba3
inc dword [ebp - 0x191c]
add ebx, 0xc
mov eax, dword [ebp - 0x191c]
cmp dword [ebp - 0x1984], eax
jle 0x44ab94
mov edx, dword [ebp - 0x1988]
mov eax, dword [ebx + edx + 4]
cmp eax, dword [ebp - 0x1970]
jne 0x44bb88
cld
mov esi, dword [ebx + edx]
cmp eax, eax
mov edi, dword [ebp - 0x1920]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44bb88
mov ecx, 1
mov edx, dword [ebp - 0x1824]
mov dword [esp + 4], ecx
mov ecx, dword [ebp - 0x191c]
add edx, 0x3c
mov dword [esp], ecx
jmp 0x44b08f
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetStream.Play.Complete]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
je 0x44adf1
jmp 0x44b247
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetStream.Play.Stop]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
je 0x44adf1
jmp 0x44b253
cld
mov esi, dword [ebp - 0x1810]
cmp ebx, ebx
mov edi, dword [str.NetStream.Play.UnpublishNotify]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b25f
jmp 0x44adf1
cld
mov esi, dword [ebp - 0x1810]
cmp eax, eax
mov edi, dword [str.NetStream.Seek.Notify]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x44b271
mov ebx, dword [ebp - 0x1824]
and byte [ebx + 0xc0391], 0xdf
jmp 0x44ab94
mov dword [ebp - 0x89c], eax
xor ecx, ecx
lea ebx, [ebp - 0x8a8]
mov dword [ebp - 0x8a0], ecx
lea eax, [ebp - 0xc96]
mov edx, 0x5af9b0
mov byte [ebp - 0x8a8], 0
mov esi, 4
mov dword [ebp - 0x8a4], esi
mov byte [ebp - 0x8a7], 0x14
mov byte [ebp - 0x8a6], 0
mov dword [ebp - 0x88c], eax
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
mov ecx, dword [ebp - 0x1824]
mov edx, eax
mov eax, dword [ecx + 0x38]
inc eax
mov dword [ecx + 0x38], eax
push eax
fild dword [esp]
add esp, 4
mov dword [esp], edx
mov dword [esp + 4], ebx
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, eax
mov eax, dword [ebp - 0x1824]
mov dword [esp + 4], ebx
inc edx
mov dword [esp], edx
add eax, 0xc43fc
mov dword [esp + 8], eax
call fcn.00450454
test eax, eax
mov edx, eax
je 0x44bd6c
mov dword [esp], edx
mov eax, 0x5afa60
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
call fcn.00450454
test eax, eax
mov edx, eax
je 0x44c23a
mov eax, dword [ebp - 0x88c]
mov edi, 1
sub edx, eax
mov dword [ebp - 0x898], edx
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov ebx, dword [ebp - 0x1824]
mov dword [esp], ebx
call fcn.00449aa4
jmp 0x44b858
mov eax, dword [ebp - 0x1824]
add edx, 0xc43fc
call fcn.0044a794
mov ecx, dword [ebp - 0x1800]
mov dword [ebp - 0x1964], ecx
jmp 0x44acaf
test esi, esi
je 0x44bd89
mov edx, dword [ebp - 0x1840]
mov dword [edx], esi
mov edx, dword [ebp - 0x24]
mov eax, edx
add eax, 7
js 0x44c24b
sar eax, 3
xor esi, esi
mov dword [ebp - 0x1858], eax
shl eax, 3
mov dword [esp], eax
call sub.msvcrt.dll_malloc
mov dword [ebp - 0x185c], eax
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x1840], eax
mov eax, dword [ebp - 0x1858]
mov ebx, ecx
mov dword [ebp - 0x1854], esi
cmp dword [ebp - 0x1854], eax
mov dword [ebp - 0x1974], ecx
jmp 0x44be98
mov ecx, eax
and ecx, 0xf
movzx edx, byte [ebx + 1]
shl ecx, 4
mov eax, edx
and eax, 0xf
test dl, 0x40
lea esi, [ecx + eax]
je 0x44bdf7
add esi, 9
movzx eax, byte [ebx + 2]
test al, 0x40
je 0x44bedc
and eax, 0xf
lea edx, [eax + 9]
movzx eax, byte [ebx + 3]
shl edx, 4
test al, 0x40
je 0x44bed1
and eax, 0xf
lea eax, [edx + eax + 9]
shl eax, 8
or esi, eax
movzx eax, byte [ebx + 4]
test al, 0x40
je 0x44bec7
and eax, 0xf
lea edx, [eax + 9]
movzx eax, byte [ebx + 5]
shl edx, 4
test al, 0x40
je 0x44bebf
and eax, 0xf
lea eax, [edx + eax + 9]
shl eax, 0x10
or esi, eax
movzx eax, byte [ebx + 6]
test al, 0x40
je 0x44beb8
and eax, 0xf
lea edx, [eax + 9]
movzx eax, byte [ebx + 7]
shl edx, 4
test al, 0x40
je 0x44beb0
and eax, 0xf
lea eax, [edx + eax + 9]
inc dword [ebp - 0x1854]
shl eax, 0x18
mov edx, dword [ebp - 0x1840]
or esi, eax
mov ecx, dword [ebp - 0x1858]
add ebx, 8
mov dword [edx], esi
add edx, 4
cmp dword [ebp - 0x1854], ecx
mov dword [ebp - 0x1840], edx
jge 0x44bee6
movzx eax, byte [ebx]
test al, 0x40
je 0x44bddb
and eax, 0xf
lea ecx, [eax + 9]
jmp 0x44bde0
and eax, 0xf
lea eax, [edx + eax]
jmp 0x44be6d
mov edx, eax
and edx, 0xf
jmp 0x44be5b
and eax, 0xf
lea eax, [edx + eax]
jmp 0x44be48
mov edx, eax
and edx, 0xf
jmp 0x44be36
and eax, 0xf
lea eax, [edx + eax]
jmp 0x44be1f
mov edx, eax
and edx, 0xf
jmp 0x44be09
mov eax, 0x34
mov ebx, dword [ebp - 0x185c]
cdq
idiv dword [ebp - 0x1858]
mov ebx, dword [ebx]
mov dword [ebp - 0x1848], ebx
mov dword [ebp - 0x197c], ebx
add eax, 6
imul eax, eax, 0x9e3779b9
mov dword [ebp - 0x184c], eax
test eax, eax
je 0x44c039
mov eax, dword [ebp - 0x1858]
dec eax
mov dword [ebp - 0x1978], eax
mov edx, dword [ebp - 0x184c]
mov edi, dword [ebp - 0x1978]
shr edx, 2
and edx, 3
test edi, edi
mov dword [ebp - 0x1850], edx
jle 0x44bfb7
mov ecx, dword [ebp - 0x185c]
mov eax, dword [ebp - 0x1848]
mov esi, dword [ecx + edi*4 - 4]
shl eax, 2
mov ebx, esi
mov edx, esi
shr ebx, 5
xor ebx, eax
mov eax, dword [ebp - 0x1848]
shl edx, 4
shr eax, 3
xor eax, edx
lea edx, [ebx + eax]
mov ebx, dword [ebp - 0x184c]
mov eax, edi
xor dword [ebp - 0x1848], ebx
and eax, 3
mov ebx, dword [ebp - 0x1850]
xor eax, ebx
mov ebx, dword [ebp + eax*4 - 0x48]
mov eax, dword [ebp - 0x1848]
xor esi, ebx
add eax, esi
xor edx, eax
mov eax, dword [ecx + edi*4]
sub eax, edx
mov dword [ecx + edi*4], eax
dec edi
test edi, edi
mov dword [ebp - 0x1848], eax
jg 0x44bf46
mov eax, dword [ecx]
mov dword [ebp - 0x197c], eax
mov edx, dword [ebp - 0x1858]
and edi, 3
mov ecx, dword [ebp - 0x185c]
mov eax, dword [ebp - 0x1848]
mov esi, dword [ecx + edx*4 - 4]
shl eax, 2
mov ebx, esi
mov edx, esi
shr ebx, 5
xor ebx, eax
mov eax, dword [ebp - 0x1848]
shl edx, 4
shr eax, 3
xor eax, edx
lea edx, [ebx + eax]
mov eax, dword [ebp - 0x1850]
mov ebx, dword [ebp - 0x184c]
xor dword [ebp - 0x1848], ebx
xor edi, eax
mov eax, dword [ebp + edi*4 - 0x48]
xor esi, eax
mov eax, dword [ebp - 0x1848]
add eax, esi
xor edx, eax
mov eax, dword [ebp - 0x197c]
sub eax, edx
mov dword [ebp - 0x197c], eax
add ebx, 0x61c88647
mov dword [ecx], eax
mov dword [ebp - 0x1848], eax
mov dword [ebp - 0x184c], ebx
jne 0x44bf2a
mov eax, dword [ebp - 0x24]
lea ebx, [ebp - 0x68]
mov edi, 0x5afa10
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov dword [ebp - 0x24], eax
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x185c]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x1974]
mov dword [esp], edx
call sub.msvcrt.dll_memcpy
mov ecx, dword [ebp - 0x185c]
mov dword [esp], ecx
call sub.msvcrt.dll_free
mov dword [ebp - 0x64], 3
lea eax, [ebp - 0x456]
mov byte [ebp - 0x68], 1
mov byte [ebp - 0x67], 0x14
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
mov byte [ebp - 0x66], 0
mov dword [ebp - 0x4c], eax
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
mov dword [esp], eax
fldz
mov dword [esp + 4], ebx
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
lea edx, [ebp - 0x28]
inc eax
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
test eax, eax
je 0x44b439
mov esi, dword [ebp - 0x4c]
xor ecx, ecx
sub eax, esi
mov dword [ebp - 0x58], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov ecx, dword [ebp - 0x1824]
mov dword [esp], ecx
call fcn.00449aa4
jmp 0x44b439
mov edx, ebx
mov eax, ebx
add edx, 0xc4434
call fcn.0044a794
jmp 0x44b858
mov dword [ebp - 0xcbc], eax
xor ecx, ecx
mov edx, 0x5af738
mov dword [ebp - 0xcc0], ecx
lea ebx, [ebp - 0xcc8]
mov esi, 8
mov dword [ebp - 0xcc4], esi
lea eax, [ebp - 0x10b6]
mov byte [ebp - 0xcc8], 0
mov byte [ebp - 0xcc7], 0x14
mov byte [ebp - 0xcc6], 0
mov dword [ebp - 0xcac], eax
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.00450454
mov dword [esp], eax
fldz
mov dword [esp + 4], ebx
fstp qword [esp + 8]
call fcn.00450504
mov byte [eax], 5
mov edx, eax
inc edx
mov byte [edx], 8
inc edx
mov eax, 0x5afa6c
mov byte [edx], 0
inc edx
mov byte [edx], 0
inc edx
mov byte [edx], 0
inc edx
mov byte [edx], 3
mov esi, dword [ebp - 0x1824]
inc edx
mov dword [esp], edx
mov dword [esp + 8], eax
add esi, 0xc43fc
mov dword [esp + 0xc], esi
mov dword [esp + 4], ebx
call fcn.00450594
test eax, eax
mov edx, eax
je 0x44b6ab
lea eax, [eax + 3]
cmp eax, ebx
jae 0x44b6ab
mov byte [edx], 0
inc edx
mov edi, 1
mov byte [edx], 0
inc edx
mov byte [edx], 9
mov eax, dword [ebp - 0xcac]
inc edx
sub edx, eax
mov dword [ebp - 0xcb8], edx
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov ecx, dword [ebp - 0x1824]
mov dword [esp], ecx
call fcn.00449aa4
jmp 0x44b6ab
fstp st(0)
xor eax, eax
xor esi, esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
jmp 0x44b7c3
xor eax, eax
mov dword [esp + 8], eax
mov eax, 0xc08f4000
mov dword [esp + 0xc], eax
jmp 0x44b7c3
mov ebx, dword [ebp - 0x1800]
mov dword [ebp - 0x1964], ebx
jmp 0x44acaf
lea eax, [edx + 0xe]
jmp 0x44bd97