Function at 0x4beb95
Capabilities:
Encode data using xor

Disassembly:
push ebp
sub esp, 0x58
mov eax, 0x6d6c23
call fcn.006899cc
sub esp, 0x220
push ebx
push esi
push edi
mov edi, dword [ebp + 0x64]
mov ebx, ecx
push 0x14
push str.info
mov ecx, edi
mov dword [ebp + 0x30], ebx
mov byte [ebp + 0x47], 0
call fcn.0046d4fb
mov esi, eax
test esi, esi
jne 0x4bebd3
xor al, al
jmp 0x4c10ac
cmp byte [ebp + 0x68], 0
jne 0x4bebf5
test byte [ebx + 0x3ad], 1
jne 0x4bebf5
lea ecx, [ebx + 8]
push esi
call fcn.0044a813
test al, al
jne 0x4bec4e
mov byte [ebp + 0x47], 1
jmp 0x4bec4e
lea edi, [ebx + 8]
mov ecx, 0x7eac50
push edi
call fcn.0049dcbb
cmp eax, dword [0x7eac50]
je 0x4bec46
push edi
mov ecx, 0x7eac50
call fcn.004cf386
push 5
pop ecx
rep movsd dword es:[edi], dword [esi]
push 5
pop ecx
lea eax, [ebp - 0xf4]
push eax
lea esi, [ebx + 8]
lea edi, [ebp - 0xf4]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x2c]
mov dword [ebp - 0xe0], ebx
push eax
mov ecx, 0x7eac50
call fcn.004a9458
jmp 0x4bec4b
push 5
pop ecx
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp + 0x64]
push 0
push str.path
lea eax, [ebp - 0x184]
mov ecx, edi
push eax
call fcn.0046d5d2
xor eax, eax
mov dword [ebp + 0x1c], 7
mov dword [ebp + 8], eax
mov dword [ebp - 4], eax
mov dword [ebp + 0x18], eax
mov word [ebp + 8], ax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x174], eax
je 0x4bec94
lea eax, [ebp - 0x184]
push eax
lea ecx, [ebp + 8]
call fcn.004480a2
push 0
push str.rootdir
lea eax, [ebp - 0x7c]
mov ecx, edi
push eax
call fcn.0046d5d2
push 0
push str.relative
mov ecx, edi
mov byte [ebp - 4], 2
call fcn.0046d358
test eax, eax
je 0x4beceb
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0xc4]
push eax
call fcn.00484977
lea ecx, [ebp + 8]
cmp ecx, eax
je 0x4bece0
mov byte [ebp + 0x58], 0
push dword [ebp + 0x58]
push eax
call fcn.00448215
lea ecx, [ebp - 0xc4]
call fcn.0044823e
xor eax, eax
cmp byte [ebp + 0x68], al
je 0x4bee0d
mov esi, dword [ebx + 0xec]
sub esp, 0x18
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp + 8]
push eax
call fcn.00448193
mov ecx, esi
call fcn.0051db2c
cmp dword [ebp - 0x6c], 0
je 0x4bedc5
mov esi, dword [ebx + 0xec]
sub esp, 0x18
mov ecx, esp
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00448193
mov ecx, esi
call fcn.0051dbb6
test al, al
jne 0x4bef8e
mov byte [ebp + 0x4f], 1
call fcn.00489fdc
cmp dword [ebp + 0x1c], 8
lea eax, [ebp + 8]
mov byte [ebp - 4], 3
jb 0x4bed69
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.004e85fd
lea ecx, [ebp - 0x7c]
cmp ecx, eax
je 0x4bed8a
mov byte [ebp + 0x58], 0
push dword [ebp + 0x58]
push eax
call fcn.00448215
lea ecx, [ebp - 0x94]
call fcn.0044823e
mov byte [ebp + 0x4f], 0
call fcn.0048a01d
mov esi, dword [ebx + 0xec]
sub esp, 0x18
mov ecx, esp
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00448193
mov ecx, esi
call fcn.0051dbb6
jmp 0x4bee04
mov byte [ebp + 0x4f], 1
call fcn.00489fdc
mov esi, dword [ebx + 0xec]
lea ecx, [ebp + 8]
push 8
pop eax
mov byte [ebp - 4], 5
cmp dword [ebp + 0x1c], eax
jb 0x4bede6
mov ecx, dword [ebp + 8]
sub esp, 0x18
mov eax, esp
push ecx
push eax
call fcn.004e85fd
mov ecx, esi
call fcn.0051dbb6
push 6
pop eax
mov byte [ebp - 4], al
call fcn.0048a01d
mov byte [ebp - 4], 2
jmp 0x4bef8e
xor edx, edx
mov dword [ebp - 0x3c], 7
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x40], edx
mov word [ebp - 0x50], ax
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 4], 7
test eax, eax
jne 0x4bee83
mov byte [ebp + 7], 1
call fcn.00489fdc
push 8
pop ecx
lea eax, [ebp + 8]
mov byte [ebp - 4], cl
cmp dword [ebp + 0x1c], ecx
jb 0x4bee45
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.004e85fd
lea ecx, [ebp - 0x50]
cmp ecx, eax
je 0x4bee66
mov byte [ebp + 0x58], 0
push dword [ebp + 0x58]
push eax
call fcn.00448215
lea ecx, [ebp - 0x94]
call fcn.0044823e
mov byte [ebp - 4], 9
call fcn.0048a01d
mov eax, dword [ebp - 0x6c]
xor edx, edx
mov byte [ebp - 4], 7
mov esi, dword [ebx + 0xec]
test eax, eax
lea eax, [ebp - 0x50]
je 0x4bee93
lea eax, [ebp - 0x7c]
sub esp, 0x18
mov ecx, esp
mov dword [ebp + 0x58], esp
push eax
mov dword [ecx], edx
mov dword [ecx + 0x10], edx
mov dword [ecx + 0x14], edx
call fcn.00448193
sub esp, 0x18
mov byte [ebp - 4], 0xa
mov ecx, esp
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp + 8]
push eax
call fcn.00448193
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.0051dd58
mov eax, dword [ebx + 0xec]
cmp dword [eax + 0x50], 0
jne 0x4bef4f
mov byte [ebp + 0x4f], 1
call fcn.00489fdc
cmp dword [ebp + 0x1c], 8
lea eax, [ebp + 8]
mov byte [ebp - 4], 0xb
jb 0x4beef5
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.004e85fd
lea ecx, [ebp - 0x50]
cmp ecx, eax
je 0x4bef16
mov byte [ebp + 0x58], 0
push dword [ebp + 0x58]
push eax
call fcn.00448215
lea ecx, [ebp - 0xac]
call fcn.0044823e
mov byte [ebp + 0x4f], 0
call fcn.0048a01d
mov esi, dword [ebx + 0xec]
sub esp, 0x18
mov ecx, esp
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x50]
push eax
call fcn.00448193
mov ecx, esi
call fcn.0051dbb6
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x4bef8e
mov ecx, dword [ebp - 0x50]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x50], ecx
cmp eax, 0x1000
jb 0x4bef85
lea eax, [ebp + 0x48]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0044810a
mov eax, dword [ebp + 0x48]
mov ecx, dword [ebp + 0x50]
push eax
push ecx
call fcn.0068976d
pop ecx
pop ecx
push 0
push 0x1000
mov ecx, ebx
call fcn.004b7090
and dword [ebp], 0
lea eax, [ebp]
push eax
push 0x700b78
mov ecx, edi
call fcn.0046d52e
mov esi, eax
test esi, esi
je 0x4befeb
cmp dword [ebp], 0
jbe 0x4befeb
push 0x318
call fcn.0068973d
pop ecx
mov dword [ebp + 0x58], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x4befdf
push dword [ebp]
mov ecx, eax
push esi
call fcn.0053e0de
jmp 0x4befe1
xor eax, eax
mov byte [ebp - 4], 2
mov dword [ebx + 0x61c], eax
push 0
push str.share_mode
mov ecx, edi
call fcn.0046d358
push 0
test eax, eax
mov ecx, edi
push 0
setne al
push 0x77bce0
mov byte [ebx + 0x820], al
call fcn.0046d2f1
push 0
push 0
push str.uploaded_with_helper
mov ecx, edi
mov dword [ebx + 0x2a8], eax
mov dword [ebx + 0x2ac], edx
call fcn.0046d2f1
push 0
push 0
push 0x77bcec
mov ecx, edi
mov dword [ebx + 0x2c8], eax
mov dword [ebx + 0x2cc], edx
call fcn.0046d2f1
push 0
push 0
push str.downloaded_with_helper
mov ecx, edi
mov dword [ebx + 0x2b0], eax
mov dword [ebx + 0x2b4], edx
call fcn.0046d2f1
push 0
push 0
push str.uploaded_with_webrtc
mov ecx, edi
mov dword [ebx + 0x2d0], eax
mov dword [ebx + 0x2d4], edx
call fcn.0046d2f1
push 0
push 0
push str.downloaded_with_webrtc
mov ecx, edi
mov dword [ebx + 0x2d8], eax
mov dword [ebx + 0x2dc], edx
call fcn.0046d2f1
mov ecx, ebx
mov dword [ebx + 0x2e0], eax
mov dword [ebx + 0x2e4], edx
call fcn.004c7cd8
push 0
push 0
push str.torrents_added_while_downloading
mov ecx, edi
call fcn.0046d2f1
push 0
push 0
push str.helper_integration_changed
mov ecx, edi
mov dword [ebx + 0x300], eax
mov dword [ebx + 0x304], edx
call fcn.0046d2f1
or eax, edx
je 0x4bf0e7
mov al, 1
jmp 0x4bf0e9
xor al, al
push 0
push 0
push str.corrupt
mov ecx, edi
mov byte [ebx + 0x308], al
call fcn.0046d2f1
push 0
push str.trackermode
mov ecx, edi
mov dword [ebx + 0x2b8], eax
mov dword [ebx + 0x2bc], edx
call fcn.0046d358
push 0
push str.moved
mov ecx, edi
mov byte [ebx + 0x163], al
call fcn.0046d358
test eax, eax
mov al, byte [ebx + 0x157]
push 1
sete cl
and al, 0xfb
dec cl
and cl, 4
or cl, al
mov byte [ebx + 0x157], cl
mov ecx, edi
push str.prio2
call fcn.0046d358
push 0xffffffffffffffff
push str._max_connections
mov ecx, edi
mov byte [ebx + 0x164], al
call fcn.0046d358
mov edi, dword [ebx + 0xd4]
mov ecx, edi
mov dword [ebx + 0x150], eax
mov eax, dword [edi]
mov esi, dword [eax + 0x110]
call dword [eax + 0x2c]
mov ecx, dword [ebp + 0x64]
push eax
push 0x7092f4
call fcn.0046d358
push eax
mov ecx, edi
call esi
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 0
push str.vote
call fcn.0046d358
mov dword [ebx + 0x170], eax
test eax, eax
jns 0x4bf1bc
mov dword [ebx + 0x170], 1
jmp 0x4bf1c9
push 5
pop ecx
cmp eax, ecx
jle 0x4bf1c9
mov dword [ebx + 0x170], ecx
push 0xffffffffffffffff
push str.votes
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4bf212
mov ecx, eax
call fcn.0046d286
cmp eax, 5
jne 0x4bf212
mov esi, dword [ebp + 0x58]
xor edi, edi
add ebx, 0x174
push 0
push edi
mov ecx, esi
call fcn.0046d37b
inc edi
mov dword [ebx], eax
lea ebx, [ebx + 4]
cmp edi, 5
jl 0x4bf1f5
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
jmp 0x4bf21f
xor eax, eax
lea edi, [ebx + 0x174]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 1
push str.visible
mov ecx, esi
call fcn.0046d358
test eax, eax
mov al, byte [ebx + 0x158]
push 0
sete cl
and al, 0xfd
dec cl
and cl, 2
or cl, al
mov byte [ebx + 0x158], cl
mov ecx, esi
push str.last_seen_complete
call fcn.0046d358
cdq
mov dword [ebx + 0x140], eax
xor eax, eax
mov dword [ebx + 0x144], edx
mov ecx, eax
mov dword [ebp - 0x64], eax
lea edx, [ebp - 0x64]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebx + ecx*4 + 0x174]
cmp eax, dword [edx + ecx*4]
jne 0x4bf2c1
inc ecx
cmp ecx, 5
jne 0x4bf278
call fcn.0069d629
cdq
mov ecx, 0xc8
idiv ecx
push 0
mov eax, edx
cdq
mov edi, eax
mov esi, edx
sub edi, 0xe10
sbb esi, 0
call fcn.004a76db
add eax, edi
mov dword [ebx + 0x188], eax
adc edx, esi
mov esi, dword [ebp + 0x64]
mov dword [ebx + 0x18c], edx
push 0
push str.caption
lea eax, [ebp - 0x16c]
mov ecx, esi
push eax
call fcn.0046d5d2
cmp dword [ebp - 0x15c], 0
mov byte [ebp - 4], 0xe
je 0x4bf30e
mov esi, dword [ebx + 0xec]
sub esp, 0x18
mov ecx, esp
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x16c]
push eax
call fcn.00448193
mov ecx, esi
call fcn.0051da57
mov esi, dword [ebp + 0x64]
push 0
push str.feed_url
mov ecx, esi
call fcn.0046d52e
test eax, eax
je 0x4bf32c
push eax
lea ecx, [ebx + 0x51c]
call fcn.00414b30
push 0
push 0x7038c4
mov ecx, esi
call fcn.0046d52e
mov edx, eax
test edx, edx
je 0x4bf3ca
xor eax, eax
mov dword [ebp - 0x10], 0xf
mov ecx, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x24], al
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bf35b
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x24]
call fcn.00414b60
lea ecx, [ebx + 0x538]
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x24]
cmp ecx, eax
je 0x4bf391
cmp dword [ebp - 0x10], 0x10
jb 0x4bf388
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x14]
push eax
call fcn.00414b60
mov eax, dword [ebp - 0x10]
mov byte [ebp - 4], 0xe
cmp eax, 0x10
jb 0x4bf3ca
mov ecx, dword [ebp - 0x24]
inc eax
mov dword [ebp + 0x28], eax
mov dword [ebp + 0x24], ecx
cmp eax, 0x1000
jb 0x4bf3c1
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0x24]
push eax
call fcn.0044810a
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x24]
push eax
push ecx
call fcn.0068976d
pop ecx
pop ecx
push 0
push str.update_freq
mov ecx, esi
call fcn.0046d358
push 0
push str.download_url
mov ecx, esi
mov dword [ebx + 0x550], eax
call fcn.0046d52e
test eax, eax
je 0x4bf3fc
push eax
lea ecx, [ebx + 0x504]
call fcn.00414b30
push 0
push str.rss_name
lea eax, [ebp - 0x154]
mov ecx, esi
push eax
call fcn.0046d5d2
cmp dword [ebp - 0x144], 0
mov byte [ebp - 4], 0x10
je 0x4bf430
lea eax, [ebp - 0x154]
push eax
lea ecx, [ebx + 0x5c4]
call fcn.004480a2
push 0
push str.app_owner
lea eax, [ebp - 0x13c]
mov ecx, esi
push eax
call fcn.0046d5d2
cmp dword [ebp - 0x12c], 0
mov byte [ebp - 4], 0x11
je 0x4bf474
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x13c]
push eax
call fcn.00448193
mov ecx, ebx
call fcn.004cb55e
push 0
push str.app_type
lea eax, [ebp - 0x124]
mov ecx, esi
push eax
call fcn.0046d5d2
cmp dword [ebp - 0x114], 0
push 0x12
pop eax
mov byte [ebp - 4], al
je 0x4bf4aa
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebx + 0x594]
call fcn.004480a2
push 0
push str.app_url
mov ecx, esi
call fcn.0046d52e
test eax, eax
je 0x4bf4cd
cmp byte [eax], 0
je 0x4bf4cd
push eax
lea ecx, [ebx + 0x5ac]
call fcn.00414b30
push 0
push str.season
mov ecx, esi
call fcn.0046d358
push 0
push str.episode
mov ecx, esi
mov dword [ebx + 0x5dc], eax
call fcn.0046d358
push 0
push str.episode_to
mov ecx, esi
mov dword [ebx + 0x5e0], eax
call fcn.0046d358
push 0
push str.quality
mov ecx, esi
mov dword [ebx + 0x5e4], eax
call fcn.0046d358
push 0
push str.codec
mov ecx, esi
mov dword [ebx + 0x5e8], eax
call fcn.0046d358
push 0
push str.outofspace
mov ecx, esi
mov dword [ebx + 0x5ec], eax
call fcn.0046d358
mov cl, byte [ebx + 0x160]
xor cl, al
and cl, 1
xor byte [ebx + 0x160], cl
mov ecx, esi
push 0
push str.wasforce
call fcn.0046d358
add al, al
mov ecx, esi
xor al, byte [ebx + 0x160]
push 0
and al, 2
xor byte [ebx + 0x160], al
push str.web_seeding_enabled
call fcn.0046d358
push 0
and al, 1
mov ecx, esi
push str.is_update_torrent
mov byte [ebx + 0x398], al
call fcn.0046d358
push 0
and al, 1
mov ecx, esi
push str.is_update_available
mov byte [ebx + 0x554], al
call fcn.0046d358
push 0x14
and al, 1
mov ecx, esi
push str.parent_info
mov byte [ebx + 0x56a], al
call fcn.0046d4fb
lea edi, [ebx + 0x555]
test eax, eax
je 0x4bf5d4
push 5
pop ecx
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x64]
jmp 0x4bf5db
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push str.gate_info_url
lea eax, [ebp - 0xdc]
mov ecx, esi
push eax
call fcn.0046d3e1
push eax
lea ecx, [ebx + 0xa8]
call fcn.00415dd0
lea ecx, [ebp - 0xdc]
call fcn.0040fad0
cmp dword [ebx + 0xb8], 0
je 0x4bf6d0
push 0xffffffffffffffff
push str.gate_progress
mov ecx, esi
call fcn.0046d358
mov dword [ebp + 0x58], eax
cmp eax, 0x2710
ja 0x4bf63b
fild dword [ebp + 0x58]
fstp qword [ebp + 0x54]
fld qword [ebp + 0x54]
fdiv qword [0x709978]
jmp 0x4bf641
fld qword [0x709990]
push str.gate_url
lea eax, [ebp - 0x1b4]
mov ecx, esi
push eax
fstp dword [ebx + 0x58]
call fcn.0046d3e1
push eax
lea ecx, [ebx + 0x74]
call fcn.00415dd0
lea ecx, [ebp - 0x1b4]
call fcn.0040fad0
push 0
push str.gate_string
lea eax, [ebp - 0x1cc]
mov ecx, esi
push eax
call fcn.0046d5d2
push eax
lea ecx, [ebx + 0x5c]
call fcn.00448080
lea ecx, [ebp - 0x1cc]
call fcn.0044823e
push str.next_gate
lea eax, [ebp - 0x1e4]
mov ecx, esi
push eax
call fcn.0046d3e1
push eax
lea ecx, [ebx + 0x8c]
call fcn.00415dd0
lea ecx, [ebp - 0x1e4]
call fcn.0040fad0
push 1
push str.gate_launch_external
mov ecx, esi
call fcn.0046d358
and al, 1
jmp 0x4bf706
fld dword [0x70998c]
lea ecx, [ebx + 0x74]
push 0
mov edi, 0x77a89f
push edi
fstp dword [ebx + 0x58]
call fcn.00414b60
push 0
push edi
lea ecx, [ebx + 0x8c]
call fcn.00414b60
push 0x6f6210
lea ecx, [ebx + 0x5c]
call fcn.004482e2
mov al, 1
push 0
push str.upspeed
mov ecx, esi
mov byte [ebx + 0xa4], al
call fcn.0046d358
mov dword [ebx + 0x454], eax
mov ecx, esi
mov eax, dword [ebx + 0x420]
push 0
push str.downspeed
mov dword [ebx + 0x458], eax
call fcn.0046d358
push 0
push str.runtime
mov ecx, esi
mov dword [ebx + 0x420], eax
mov dword [ebx + 0x458], eax
call fcn.0046d358
push 0
cdq
mov ecx, esi
push 0
push str.unchoke_rounds
mov dword [ebx + 0x410], eax
mov dword [ebx + 0x414], edx
call fcn.0046d2f1
push 0
push 0
push str.stats_all_peers
mov ecx, esi
mov dword [ebx + 0x3b0], eax
mov dword [ebx + 0x3b4], edx
call fcn.0046d2f1
push 0
push 0
push str.stats_all_slots
mov ecx, esi
mov dword [ebx + 0x3b8], eax
mov dword [ebx + 0x3bc], edx
call fcn.0046d2f1
push 0
push 0
push str.stats_wallet_peers
mov ecx, esi
mov dword [ebx + 0x3c0], eax
mov dword [ebx + 0x3c4], edx
call fcn.0046d2f1
push 0
push 0
push str.stats_wallet_slots
mov ecx, esi
mov dword [ebx + 0x3c8], eax
mov dword [ebx + 0x3cc], edx
call fcn.0046d2f1
push 0
push 0
push str.ttfb
mov ecx, esi
mov dword [ebx + 0x3d0], eax
mov dword [ebx + 0x3d4], edx
call fcn.0046d2f1
push 0
push 0
push str.tt_1pct
mov ecx, esi
mov dword [ebx + 0x3d8], eax
mov dword [ebx + 0x3dc], edx
call fcn.0046d2f1
push 0
push 0
push str.tt_5pct
mov ecx, esi
mov dword [ebx + 0x3e0], eax
mov dword [ebx + 0x3e4], edx
call fcn.0046d2f1
push 0
push 0
mov dword [ebx + 0x3e8], eax
mov ecx, esi
mov dword [ebx + 0x3ec], edx
push str.tt_20pct
call fcn.0046d2f1
push 0
push 0x7094f8
mov ecx, esi
mov dword [ebx + 0x3f0], eax
mov dword [ebx + 0x3f4], edx
call fcn.0046d358
mov dword [ebx + 0x5fc], eax
mov ecx, esi
movzx eax, byte [ebx + 0x162]
and eax, 8
push eax
push 0x70141c
call fcn.0046d358
mov cl, byte [ebx + 0x162]
and cl, 0xf7
or al, cl
mov ecx, esi
push 1
push 0x70187c
mov byte [ebx + 0x162], al
call fcn.0046d358
mov cl, byte [ebx + 0x162]
and cl, 0xa
or al, cl
mov ecx, esi
push 0
push str.seedtime
mov byte [ebx + 0x162], al
call fcn.0046d358
cdq
mov ecx, esi
push 0
push 0x709338
mov dword [ebx + 0x418], eax
mov dword [ebx + 0x41c], edx
call fcn.0046d358
test eax, eax
mov al, byte [ebx + 0x157]
push 0
sete cl
and al, 0x7f
dec cl
and cl, 0x80
or cl, al
mov byte [ebx + 0x157], cl
mov ecx, esi
push str.created_torrent
call fcn.0046d358
test eax, eax
mov al, byte [ebx + 0x158]
push 0
sete cl
and al, 0xef
dec cl
and cl, 0x10
or cl, al
mov byte [ebx + 0x158], cl
mov ecx, esi
push str.superseed_cur_piece
call fcn.0046d358
push 0xffffffffffffffff
push str.order
mov ecx, esi
mov dword [ebx + 0x338], eax
call fcn.0046d358
mov dword [ebx + 0x16c], eax
mov ecx, esi
push dword [0x7c0e24]
push str.wanted_seedtime
call fcn.0046d358
mov dword [ebx + 0x5f0], eax
mov ecx, esi
push dword [0x7c0e20]
push str.wanted_ratio
call fcn.0046d358
mov dword [ebx + 0x5f8], eax
mov ecx, esi
push dword [0x7c0e28]
push str.wanted_seednum
call fcn.0046d358
push 0
push str.override_seedsettings
mov ecx, esi
mov dword [ebx + 0x5f4], eax
call fcn.0046d358
mov cl, byte [ebx + 0x158]
xor cl, al
and cl, 1
xor byte [ebx + 0x158], cl
mov ecx, esi
push 0
push str.added_on
call fcn.0046d358
cdq
mov ecx, eax
or ecx, edx
je 0x4bf9d3
mov dword [ebx + 0x378], eax
mov dword [ebx + 0x37c], edx
push 0
push str.published_on
mov ecx, esi
call fcn.0046d358
cdq
mov ecx, eax
or ecx, edx
je 0x4bf9f4
mov dword [ebx + 0x380], eax
mov dword [ebx + 0x384], edx
push 0
push str.completed_on
mov ecx, esi
call fcn.0046d358
cdq
mov ecx, esi
push 0
push str.last_active
mov dword [ebx + 0x388], eax
mov dword [ebx + 0x38c], edx
call fcn.0046d358
push 0
cdq
mov ecx, esi
push 0
push str.completion_period
mov dword [ebx + 0x390], eax
mov dword [ebx + 0x394], edx
call fcn.0046d2f1
push 0
push 0
push str.waste
mov ecx, esi
mov dword [ebx + 0x358], eax
mov dword [ebx + 0x35c], edx
call fcn.0046d2f1
push 0
push str.hashfails
mov ecx, esi
mov dword [ebx + 0x340], eax
mov dword [ebx + 0x344], edx
call fcn.0046d358
push 0
push 0x709384
mov ecx, esi
mov dword [ebx + 0x350], eax
call fcn.0046d358
mov dword [ebx + 0x534], eax
test eax, eax
jne 0x4bfafa
cmp dword [ebx + 0x52c], eax
je 0x4bfafa
lea eax, [ebx + 0x51c]
cmp dword [eax + 0x14], 0x10
jb 0x4bfaa4
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xc4]
push 0x6f60ec
push eax
call fcn.00475719
add esp, 0xc
lea ecx, [ebp + 0x3c]
mov byte [ebp - 4], 0x13
call fcn.004d18bd
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 0x14
push eax
call fcn.004d4623
test eax, eax
je 0x4bfae1
mov eax, dword [eax]
mov dword [ebx + 0x534], eax
lea ecx, [ebp + 0x3c]
call fcn.0049f7c3
push 0x12
pop ecx
mov byte [ebp - 4], cl
lea ecx, [ebp - 0xc4]
call fcn.0044823e
push 0xffffffffffffffff
mov edi, str.use_utp
mov ecx, esi
push edi
call fcn.0046d1d3
test eax, eax
je 0x4bfb31
push 0
push edi
mov ecx, esi
call fcn.0046d358
test eax, eax
mov al, byte [ebx + 0x160]
sete cl
and al, 0xbf
dec cl
and cl, 0x40
or cl, al
mov byte [ebx + 0x160], cl
push 0xffffffffffffffff
mov edi, str.use_utp_only
mov ecx, esi
push edi
call fcn.0046d1d3
test eax, eax
je 0x4bfb68
push 0
push edi
mov ecx, esi
call fcn.0046d358
test eax, eax
mov al, byte [ebx + 0x160]
sete cl
and al, 0x7f
dec cl
and cl, 0x80
or cl, al
mov byte [ebx + 0x160], cl
push 0
push 0x6f97c4
lea eax, [ebp - 0x1fc]
mov ecx, esi
push eax
call fcn.0046d5d2
cmp dword [eax + 0x14], 8
mov byte [ebp - 4], 0x15
jb 0x4bfb89
mov eax, dword [eax]
push eax
mov ecx, ebx
call fcn.004cc0cf
push 0x12
pop eax
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], al
call fcn.0044823e
push 0
push str.run_program
lea eax, [ebp - 0x214]
mov ecx, esi
push eax
call fcn.0046d5d2
push eax
lea ecx, [ebx + 0x788]
call fcn.00448080
lea ecx, [ebp - 0x214]
call fcn.0044823e
lea eax, [ebp - 0x38]
mov byte [ebp + 0x4f], 0
push eax
push str.physmap
mov ecx, esi
call fcn.0046d52e
mov ecx, 0xfff7
test eax, eax
je 0x4bfc09
push dword [ebp - 0x38]
mov ecx, dword [ebx + 0xec]
push eax
call fcn.0051df07
test al, al
jne 0x4bfc04
mov byte [ebp + 0x4f], 1
jmp 0x4bfc5e
mov ecx, 0xfff7
cmp byte [ebp + 0x47], 0
je 0x4bfc5e
mov ax, word [ebx + 0x14c]
and ax, cx
mov ecx, ebx
movzx eax, ax
push eax
call fcn.004cc1d9
push 1
call fcn.004a5ea3
push eax
push 0x13
lea ecx, [ebp - 0x34]
call fcn.004a5cc2
sub esp, 0x18
mov byte [ebp - 4], 0x16
mov eax, esp
lea ecx, [ebp - 0x34]
push ecx
push eax
call fcn.004a7333
mov ecx, ebx
call fcn.004cbb1b
push 0x12
pop eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], al
call fcn.004a5d2b
mov edi, dword [ebx + 0xec]
mov ecx, 0xa0
add edi, 4
mov dword [ebp - 0x28], ecx
mov dword [ebp + 0x38], edi
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
push eax
push str.prio
call fcn.0046d4fb
mov ecx, eax
mov dword [ebp + 0x50], ecx
test ecx, ecx
je 0x4bfcf5
cmp byte [ebp + 0x68], 0
jne 0x4bfcf5
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv dword [ebp - 0x28]
and dword [ebp + 0x58], 0
test eax, eax
je 0x4bfcf5
and dword [ebp + 0x48], 0
mov esi, dword [ebp + 0x58]
movzx eax, byte [esi + ecx]
mov ecx, ebx
push 1
and eax, 0xf
push eax
push esi
call fcn.004cbbd7
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp + 0x48]
mov ecx, dword [edi]
mov al, byte [esi + eax]
shr al, 6
xor al, byte [ecx + edx + 0x6a]
and al, 2
xor byte [ecx + edx + 0x6a], al
mov ecx, 0xa0
mov eax, dword [edi + 4]
add edx, ecx
sub eax, dword [edi]
inc esi
mov dword [ebp + 0x48], edx
cdq
idiv ecx
mov ecx, dword [ebp + 0x50]
cmp esi, eax
jne 0x4bfcae
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.modtimes
mov ecx, esi
call fcn.0046d39c
and dword [ebp + 0x58], 0
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4bfd5a
and dword [ebp + 0x50], 0
mov esi, eax
mov ebx, dword [ebp + 0x58]
mov ecx, esi
call fcn.0046d286
cmp ebx, eax
jae 0x4bfd54
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
cmp ebx, eax
jae 0x4bfd54
push 0
push 0
push ebx
mov ecx, esi
call fcn.0046d31b
mov ecx, dword [edi]
add ecx, dword [ebp + 0x50]
inc ebx
add dword [ebp + 0x50], 0xa0
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x34], edx
jmp 0x4bfd17
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.read_only
mov ecx, esi
call fcn.0046d39c
and dword [ebp + 0x58], 0
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4bfdcb
and dword [ebp + 0x50], 0
mov esi, eax
mov ebx, dword [ebp + 0x58]
mov ecx, esi
call fcn.0046d286
cmp ebx, eax
jae 0x4bfdc5
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
cmp ebx, eax
jae 0x4bfdc5
push 0
push ebx
mov ecx, esi
call fcn.0046d37b
mov edx, dword [edi]
add edx, dword [ebp + 0x50]
test eax, eax
sete cl
dec cl
mov al, byte [edx + 0x6a]
and cl, 0x20
and al, 0xdf
or cl, al
inc ebx
add dword [ebp + 0x50], 0xa0
mov byte [edx + 0x6a], cl
jmp 0x4bfd7c
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
push eax
push str.meta_available
call fcn.0046d4fb
mov dword [ebp + 0x24], eax
mov ecx, 0xa0
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
push eax
push str.meta_vlc_supported
call fcn.0046d4fb
mov dword [ebp + 0x48], eax
mov ecx, 0xa0
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
shl eax, 2
push eax
push str.meta_durations
call fcn.0046d4fb
mov dword [ebp + 0x28], eax
mov ecx, 0xa0
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
shl eax, 2
push eax
push str.meta_encoding_rates
call fcn.0046d4fb
mov dword [ebp + 0x34], eax
mov ecx, 0xa0
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
add eax, eax
push eax
push str.meta_video_heights
call fcn.0046d4fb
mov dword [ebp + 0x50], eax
mov ecx, 0xa0
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
add eax, eax
push eax
push str.meta_video_widths
call fcn.0046d4fb
mov dword [ebp + 0x40], eax
mov ecx, 0xa0
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv ecx
mov ecx, esi
add eax, eax
push eax
push str.meta_containers
call fcn.0046d4fb
cmp dword [ebp + 0x24], 0
mov dword [ebp + 0x58], eax
je 0x4bfff5
cmp dword [ebp + 0x28], 0
je 0x4bfff5
mov ecx, dword [ebp + 0x34]
test ecx, ecx
je 0x4bfff5
cmp dword [ebp + 0x50], 0
je 0x4bfff5
cmp dword [ebp + 0x40], 0
je 0x4bfff5
cmp byte [ebp + 0x68], 0
jne 0x4bfff5
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv dword [ebp - 0x28]
and dword [ebp + 0x20], 0
test eax, eax
je 0x4bfff5
mov ebx, dword [ebp + 0x40]
xor esi, esi
mov edx, dword [ebp + 0x58]
mov eax, dword [ebp + 0x48]
sub edx, ebx
sub dword [ebp + 0x28], ecx
sub dword [ebp + 0x50], ebx
mov dword [ebp + 0x40], edx
mov edx, eax
sub dword [ebp + 0x24], edx
mov edx, dword [ebp + 0x20]
mov dword [ebp + 0x2c], eax
mov edi, dword [ebp + 0x24]
cmp byte [edi + eax], 0
mov edi, dword [ebp + 0x38]
je 0x4bffc1
mov ecx, dword [edi]
lea ecx, [ecx + esi]
call fcn.004cbf1c
cmp dword [ebp + 0x48], 0
mov eax, dword [edi]
mov eax, dword [eax + esi + 0x98]
mov byte [eax + 0x68], 3
je 0x4bff5b
mov eax, dword [edi]
mov ecx, dword [eax + esi + 0x98]
mov eax, dword [ebp + 0x2c]
mov al, byte [eax]
shl al, 3
xor al, byte [ecx + 0x69]
and al, 8
xor byte [ecx + 0x69], al
cmp dword [ebp + 0x58], 0
mov ecx, dword [edi]
mov edx, dword [ebp + 0x34]
mov eax, dword [ebp + 0x28]
mov ecx, dword [ecx + esi + 0x98]
mov eax, dword [eax + edx]
mov dword [ecx + 0x14], eax
mov ecx, dword [edi]
mov eax, dword [edx]
mov edx, dword [ebp + 0x20]
mov ecx, dword [ecx + esi + 0x98]
mov dword [ecx + 0xc], eax
mov eax, dword [edi]
mov ecx, dword [eax + esi + 0x98]
mov eax, dword [ebp + 0x50]
movzx eax, word [eax + ebx]
mov dword [ecx + 0x1c], eax
mov eax, dword [edi]
mov ecx, dword [eax + esi + 0x98]
movzx eax, word [ebx]
mov dword [ecx + 0x18], eax
je 0x4bffbb
mov ecx, dword [edi]
mov eax, dword [ebp + 0x40]
mov ecx, dword [ecx + esi + 0x98]
mov al, byte [eax + ebx]
mov byte [ecx + 0x5c], al
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x34]
inc edx
add ecx, 4
inc eax
mov dword [ebp + 0x20], edx
mov dword [ebp + 0x2c], eax
add esi, 0xa0
mov eax, dword [edi + 4]
add ebx, 2
sub eax, dword [edi]
cdq
idiv dword [ebp - 0x28]
mov edx, dword [ebp + 0x20]
cmp edx, eax
mov dword [ebp + 0x34], ecx
mov eax, dword [ebp + 0x2c]
jne 0x4bff15
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.meta_video_codec
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4c0089
cmp byte [ebp + 0x68], 0
jne 0x4c0089
and dword [ebp + 0x58], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c0089
and dword [ebp + 0x50], 0
mov ebx, dword [ebp + 0x58]
mov esi, dword [ebp + 0x40]
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
cmp ebx, eax
jae 0x4c0083
push 0
push ebx
mov ecx, esi
call fcn.0046d555
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c0070
cmp byte [eax], 0
je 0x4c0070
mov ecx, dword [edi]
add ecx, dword [ebp + 0x50]
call fcn.004cbf1c
mov ecx, dword [edi]
add ecx, dword [ebp + 0x50]
push dword [ebp + 0x58]
mov ecx, dword [ecx + 0x98]
add ecx, 0x44
call fcn.00414b30
add dword [ebp + 0x50], 0xa0
mov ecx, esi
inc ebx
call fcn.0046d286
cmp ebx, eax
jb 0x4c0029
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.meta_audio_codec
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4c0118
cmp byte [ebp + 0x68], 0
jne 0x4c0118
and dword [ebp + 0x58], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c0118
and dword [ebp + 0x50], 0
mov ebx, dword [ebp + 0x58]
mov esi, dword [ebp + 0x40]
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
cmp ebx, eax
jae 0x4c0112
push 0
push ebx
mov ecx, esi
call fcn.0046d555
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c00ff
mov ecx, dword [edi]
add ecx, dword [ebp + 0x50]
call fcn.004cbf1c
mov ecx, dword [edi]
add ecx, dword [ebp + 0x50]
push dword [ebp + 0x58]
mov ecx, dword [ecx + 0x98]
add ecx, 0x2c
call fcn.00414b30
add dword [ebp + 0x50], 0xa0
mov ecx, esi
inc ebx
call fcn.0046d286
cmp ebx, eax
jb 0x4c00bd
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.targets
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4c01da
and dword [ebp + 0x48], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c01da
mov esi, dword [ebp + 0x48]
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
cmp esi, eax
jae 0x4c01d7
mov ecx, dword [ebp + 0x40]
push esi
call fcn.0046d3b8
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c01c3
mov ecx, eax
call fcn.0046d286
cmp eax, 2
jne 0x4c01c3
mov ecx, dword [ebp + 0x58]
push 0
push 0
call fcn.0046d37b
mov edx, dword [edi]
mov ecx, eax
mov eax, dword [edi + 4]
sub eax, edx
mov dword [ebp + 0x50], edx
cdq
idiv dword [ebp - 0x28]
cmp ecx, eax
jae 0x4c01c3
mov edi, dword [ebx + 0xec]
sub esp, 0x18
mov eax, esp
imul esi, ecx, 0xa0
mov ecx, dword [ebp + 0x58]
push 0
push 1
add esi, dword [ebp + 0x50]
push eax
call fcn.0046d625
push esi
mov ecx, edi
call fcn.0051dafc
mov edi, dword [ebp + 0x38]
mov esi, dword [ebp + 0x48]
mov ecx, dword [ebp + 0x40]
inc esi
mov dword [ebp + 0x48], esi
call fcn.0046d286
cmp esi, eax
jb 0x4c0147
mov esi, dword [ebp + 0x64]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x154]
test al, al
jne 0x4c0376
and dword [ebp + 0x34], 0
lea eax, [ebp + 0x34]
push eax
push str.peers
mov ecx, esi
call fcn.0046d52e
mov dword [ebp + 0x58], eax
xor edx, edx
mov eax, dword [ebp + 0x34]
push 6
pop ecx
div ecx
test edx, edx
jne 0x4c02b7
and dword [ebp + 0x40], edx
mov dword [ebp + 0x34], eax
test eax, eax
je 0x4c02b7
mov edi, dword [ebp + 0x58]
mov esi, dword [ebp + 0x40]
movzx eax, word [edi + 4]
lea ecx, [ebp - 0xd8]
push eax
push dword [edi]
call fcn.004df668
lea ecx, [ebp - 0xd8]
call fcn.004788c6
test al, al
jne 0x4c02a2
mov eax, 0xffff
cmp word [ebp - 0xc8], ax
jne 0x4c0261
xor eax, eax
mov word [ebp - 0xc8], ax
xor ecx, ecx
lea eax, [ebp - 0xd8]
push ecx
push eax
push ecx
push ecx
mov ecx, ebx
call fcn.004b1232
mov ecx, eax
test ecx, ecx
je 0x4c02a2
mov eax, dword [ecx + 0xbf]
shl eax, 4
sar eax, 4
cdq
add eax, dword [0x7ef880]
adc edx, dword [0x7ef884]
sub eax, 0x708
sbb edx, 0
push edx
push eax
call fcn.004cbecf
push 6
pop eax
inc esi
add edi, eax
cmp esi, dword [ebp + 0x34]
jb 0x4c0229
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
and dword [ebp + 0x34], 0
lea eax, [ebp + 0x34]
push eax
push str.peers6
mov ecx, esi
call fcn.0046d52e
mov dword [ebp + 0x58], eax
xor edx, edx
mov eax, dword [ebp + 0x34]
push 0x12
pop ecx
div ecx
test edx, edx
jne 0x4c0376
and dword [ebp + 0x40], edx
mov dword [ebp + 0x34], eax
test eax, eax
je 0x4c0376
mov edi, dword [ebp + 0x58]
mov esi, dword [ebp + 0x40]
push edi
lea ecx, [ebp - 0x20]
call fcn.004df695
movzx eax, word [edi + 0x10]
mov ecx, eax
mov word [ebp - 0x10], ax
mov dword [ebp + 0x58], ecx
lea ecx, [ebp - 0x20]
call fcn.004788c6
test al, al
jne 0x4c0365
mov eax, 0xffff
cmp word [ebp + 0x58], ax
jne 0x4c0327
xor eax, eax
mov word [ebp - 0x10], ax
xor ecx, ecx
lea eax, [ebp - 0x20]
push ecx
push eax
push ecx
push ecx
mov ecx, ebx
call fcn.004b1232
mov ecx, eax
test ecx, ecx
je 0x4c0365
mov eax, dword [ecx + 0xbf]
shl eax, 4
sar eax, 4
cdq
add eax, dword [0x7ef880]
adc edx, dword [0x7ef884]
sub eax, 0x708
sbb edx, 0
push edx
push eax
call fcn.004cbecf
push 0x12
pop eax
inc esi
add edi, eax
cmp esi, dword [ebp + 0x34]
jb 0x4c02f4
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
mov eax, dword [ebx + 0xfc]
mov ecx, esi
add eax, 7
shr eax, 3
push eax
push str.have
call fcn.0046d4fb
mov ecx, dword [ebx + 0xfc]
add ecx, 7
mov dword [ebp + 0x48], eax
shr ecx, 3
push ecx
push str.hashed
mov ecx, esi
call fcn.0046d4fb
mov ecx, dword [ebx + 0xfc]
add ecx, 7
mov dword [ebp + 0x58], eax
shr ecx, 3
push ecx
push str.known
mov ecx, esi
call fcn.0046d4fb
mov ecx, eax
mov eax, dword [ebp + 0x58]
mov dword [ebp + 0x40], ecx
test eax, eax
je 0x4c03f2
mov ecx, dword [ebx + 0xfc]
add ecx, 7
shr ecx, 3
push ecx
push eax
push dword [ebx + 0x130]
call fcn.0068b600
mov ecx, dword [ebp + 0x40]
add esp, 0xc
test ecx, ecx
je 0x4c0412
mov eax, dword [ebx + 0xfc]
add eax, 7
shr eax, 3
push eax
push ecx
push dword [ebx + 0x134]
call fcn.0068b600
add esp, 0xc
mov edx, dword [ebp + 0x48]
test edx, edx
je 0x4c0645
xor ecx, ecx
cmp dword [ebx + 0xfc], ecx
jmp 0x4c0477
mov eax, ecx
and cl, 7
shr eax, 3
mov al, byte [eax + edx]
shr al, cl
test al, 1
je 0x4c046d
push dword [ebp + 0x2c]
mov ecx, dword [ebx + 0xec]
call fcn.004be0e7
test al, al
jne 0x4c044e
mov byte [ebp + 0x4f], 1
push dword [ebp + 0x2c]
mov ecx, dword [ebx + 0xec]
call fcn.004be0e7
test al, al
je 0x4c046a
push dword [ebp + 0x2c]
mov ecx, ebx
call fcn.004cbc86
mov edx, dword [ebp + 0x48]
mov ecx, dword [ebp + 0x2c]
inc ecx
cmp ecx, dword [ebx + 0xfc]
mov dword [ebp + 0x2c], ecx
jne 0x4c0427
cmp byte [ebp + 0x4f], 0
je 0x4c056a
mov ax, word [ebx + 0x14c]
mov ecx, 0xfff7
and ax, cx
mov ecx, ebx
movzx eax, ax
push eax
call fcn.004cc1d9
mov ecx, dword [ebx + 0xec]
mov eax, dword [ecx + 8]
sub eax, dword [ecx + 4]
mov ecx, 0xa0
cdq
idiv ecx
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c04e9
xor edx, edx
mov esi, eax
mov edi, ecx
mov ecx, dword [ebx + 0xec]
mov eax, dword [ecx + 4]
xor ecx, ecx
add eax, edx
add edx, edi
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], ecx
mov dword [eax + 0x34], ecx
sub esi, 1
jne 0x4c04c1
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
jmp 0x4c04eb
xor ecx, ecx
mov eax, dword [ebx + 0xfc]
add eax, 0x1f
shr eax, 5
shl eax, 2
push eax
push ecx
push dword [ebx + 0x134]
call fcn.0068ccc0
add esp, 0xc
lea ecx, [ebx + 0x110]
call fcn.0047d188
and dword [ebp + 0x58], 0
cmp dword [ebx + 0xfc], 0
je 0x4c0645
mov edi, dword [ebp + 0x58]
mov eax, dword [ebx + 0xec]
push dword [eax + 0xcc]
lea ecx, [eax + 0xd8]
push edi
call fcn.004cfbda
mov eax, dword [ebx + 0xec]
push dword [eax + 0xcc]
lea ecx, [eax + 0xe4]
push edi
call fcn.004cfbda
inc edi
cmp edi, dword [ebx + 0xfc]
jne 0x4c0529
mov edi, dword [ebp + 0x38]
jmp 0x4c0645
push 0
push str.valid
mov ecx, esi
call fcn.0046d358
test eax, eax
je 0x4c0599
mov ax, word [ebx + 0x14c]
push 8
pop ecx
or ax, cx
mov ecx, ebx
movzx eax, ax
push eax
call fcn.004cc1d9
jmp 0x4c0645
mov ecx, dword [ebx + 0xec]
cmp dword [ecx + 0xd8], 0
jne 0x4c0645
mov eax, dword [ecx + 8]
sub eax, dword [ecx + 4]
mov ecx, 0xa0
cdq
idiv ecx
mov ecx, esi
mov dword [ebp + 0x58], eax
add eax, 7
shr eax, 3
push eax
push str.resume_valid
mov dword [ebp + 0x48], eax
call fcn.0046d4fb
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4c0645
mov cx, word [ebx + 0x14c]
push 8
pop eax
or cx, ax
movzx ecx, cx
push ecx
mov ecx, ebx
call fcn.004cc1d9
xor edx, edx
cmp dword [ebp + 0x58], edx
je 0x4c0645
mov edi, dword [ebp + 0x40]
mov eax, edx
shr eax, 3
mov cl, dl
and cl, 7
mov al, byte [eax + edi]
mov edi, dword [ebp + 0x38]
shr al, cl
test al, 1
je 0x4c061a
inc edx
cmp edx, dword [ebp + 0x58]
jne 0x4c05f9
jmp 0x4c0645
mov ax, word [ebx + 0x14c]
mov ecx, 0xfff7
and ax, cx
mov ecx, ebx
movzx eax, ax
push eax
call fcn.004cc1d9
push dword [ebp + 0x48]
push dword [ebp + 0x40]
call fcn.004df4b2
mov dword [ebx + 0x12c], eax
push 0
push str.has_saved_trackers
mov ecx, esi
call fcn.0046d358
push 0xffffffffffffffff
and al, 1
mov ecx, esi
push 0x709690
mov byte [ebx + 0x362], al
call fcn.0046d39c
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c0781
mov ecx, dword [ebx + 0x1fc]
sub ecx, dword [ebx + 0x1f8]
cmp ecx, 4
jb 0x4c06a8
push 0
push dword [ebx + 0x1f8]
mov ecx, ebx
call fcn.004b6bae
mov eax, dword [ebx + 0x1fc]
sub eax, dword [ebx + 0x1f8]
cmp eax, 4
jae 0x4c0685
mov eax, dword [ebp + 0x58]
mov ecx, eax
call fcn.0046d286
and dword [ebp + 0x50], 0
mov dword [ebp + 0x28], eax
test eax, eax
je 0x4c0781
mov edi, dword [ebp + 0x50]
mov esi, dword [ebp + 0x58]
lea eax, [ebp - 0xf4]
push 0
push edi
push eax
mov ecx, esi
call fcn.0046d625
and dword [ebp + 0x48], 0
cmp dword [ebp - 0xe4], 0
mov byte [ebp - 4], 0x18
je 0x4c06fa
lea eax, [ebp + 0x48]
mov ecx, ebx
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b1e2b
jmp 0x4c0751
push edi
mov ecx, esi
call fcn.0046d3b8
xor esi, esi
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4c075d
mov edi, eax
mov ecx, edi
call fcn.0046d286
cmp esi, eax
je 0x4c074e
push 0
push esi
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
call fcn.0046d625
cmp dword [ebp - 0x14], 0
mov byte [ebp - 4], 0x19
je 0x4c073f
lea eax, [ebp + 0x48]
mov ecx, ebx
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004b1e2b
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x18
call fcn.0044823e
inc esi
jmp 0x4c070d
mov edi, dword [ebp + 0x50]
mov ecx, dword [ebp + 0x48]
test ecx, ecx
je 0x4c075d
call fcn.004c857f
push 0x12
pop eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], al
call fcn.0044823e
inc edi
mov dword [ebp + 0x50], edi
cmp edi, dword [ebp + 0x28]
jne 0x4c06c1
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
push 0xffffffffffffffff
push str.labels
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c0801
and dword [ebp + 0x40], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c0801
mov edi, dword [ebp + 0x58]
mov esi, dword [ebp + 0x40]
push 0
push esi
lea eax, [ebp - 0x94]
mov ecx, edi
push eax
call fcn.0046d625
mov eax, dword [ebx]
push 8
pop ecx
mov byte [ebp - 4], 0x1a
mov edx, dword [eax + 0x3c]
lea eax, [ebp - 0x94]
cmp dword [ebp - 0x80], ecx
jb 0x4c07d9
mov eax, dword [ebp - 0x94]
push eax
mov ecx, ebx
call edx
push 0x12
pop eax
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], al
call fcn.0044823e
mov ecx, edi
inc esi
call fcn.0046d286
cmp esi, eax
jb 0x4c07ab
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
push 0xffffffffffffffff
push str.webseeds
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c08d9
push ebx
call fcn.004e0bbe
lea eax, [ebx + 0x204]
mov ecx, eax
mov dword [ebp + 0x48], eax
call fcn.004785ca
mov ecx, dword [ebp + 0x58]
and dword [ebp + 0x40], 0
call fcn.0046d286
test eax, eax
je 0x4c08d2
mov edi, dword [ebp + 0x58]
mov esi, dword [ebp + 0x40]
mov ebx, dword [ebp + 0x48]
push 0
push esi
lea eax, [ebp - 0xac]
mov ecx, edi
push eax
call fcn.0046d625
cmp dword [ebp - 0x9c], 0
mov byte [ebp - 4], 0x1b
je 0x4c08ac
push 8
pop ecx
lea eax, [ebp - 0xac]
cmp dword [ebp - 0x98], ecx
jb 0x4c0882
mov eax, dword [ebp - 0xac]
push eax
lea eax, [ebp - 0xc4]
push eax
call fcn.0048fcb1
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 0x1c
push eax
mov ecx, ebx
call fcn.0047665f
lea ecx, [ebp - 0xc4]
call fcn.0040fad0
push 0x12
pop eax
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], al
call fcn.0044823e
mov ecx, edi
inc esi
call fcn.0046d286
cmp esi, eax
jne 0x4c084d
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
and byte [ebx + 0x158], 0xf7
push dword [ebx + 0x108]
mov ecx, esi
push str.blocksize
call fcn.0046d358
push 0xffffffffffffffff
push str.blocks
mov ecx, esi
mov dword [ebx + 0x108], eax
call fcn.0046d39c
and dword [ebp + 0x50], 0
mov dword [ebp + 0x40], eax
test eax, eax
je 0x4c0a05
mov esi, dword [ebp + 0x50]
mov ecx, eax
call fcn.0046d286
cmp esi, eax
je 0x4c09ff
mov ecx, dword [ebp + 0x40]
lea eax, [ebp + 0x48]
and dword [ebp + 0x48], 0
push eax
push esi
call fcn.0046d555
cmp dword [ebp + 0x48], 4
mov dword [ebp + 0x28], eax
jbe 0x4c09f3
mov edi, dword [eax]
cmp edi, dword [ebx + 0xfc]
jae 0x4c09f3
lea ecx, [ebx + 0x110]
push edi
call fcn.0047d254
test al, al
jne 0x4c09f3
push 0x53960e
push edi
mov ecx, ebx
call fcn.004c38ef
mov edi, eax
mov eax, dword [edi + 0xc]
mov byte [edi + 0x3c], 3
lea ecx, [eax + 7]
shr ecx, 3
add ecx, 4
cmp dword [ebp + 0x48], ecx
jne 0x4c09f3
xor edx, edx
mov dword [ebp + 0x58], edx
test eax, eax
je 0x4c09f3
mov esi, dword [ebp + 0x28]
mov eax, edx
mov cl, dl
shr eax, 3
and cl, 7
mov al, byte [eax + esi + 4]
shr al, cl
test al, 1
je 0x4c09e7
cmp dword [edi + 0x14], 1
je 0x4c09e7
mov eax, dword [edi + 0x30]
mov ecx, ebx
push edx
mov dword [eax + edx*4], 0x7eb568
mov eax, dword [edi + 0x50]
mov byte [edx + eax], 9
dec dword [edi + 0x14]
dec dword [edi + 0x10]
push dword [edi + 8]
dec dword [edi + 0x20]
call fcn.004b953b
add dword [ebx + 0x2c0], eax
mov edx, dword [ebp + 0x58]
push 0
pop ecx
adc ecx, dword [ebx + 0x2c4]
mov dword [ebx + 0x2c4], ecx
inc edx
mov dword [ebp + 0x58], edx
cmp edx, dword [edi + 0xc]
jne 0x4c0990
mov esi, dword [ebp + 0x50]
mov eax, dword [ebp + 0x40]
inc esi
mov dword [ebp + 0x50], esi
jmp 0x4c0911
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
push 0xffffffffffffffff
push str.pieces_to_download
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c0ac7
mov ecx, dword [ebx + 0xd4]
mov byte [ebx + 0xd8], 1
push 0
mov edx, dword [ecx]
call dword [edx + 0xbc]
test byte [ebx + 0x160], 8
je 0x4c0abc
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
test eax, eax
je 0x4c0abc
mov eax, dword [ebx]
mov ecx, ebx
and dword [ebp + 0x40], 0
call dword [eax + 4]
test eax, eax
je 0x4c0a7a
mov edi, dword [ebp + 0x40]
mov eax, dword [ebx + 0x138]
push 0xf
lea ecx, [eax + edi*2]
call fcn.004cfd2e
mov eax, dword [ebx]
mov ecx, ebx
inc edi
call dword [eax + 4]
cmp edi, eax
jne 0x4c0a5b
mov edi, dword [ebp + 0x38]
mov ecx, dword [ebp + 0x58]
and dword [ebp + 0x40], 0
call fcn.0046d286
test eax, eax
je 0x4c0abc
mov edi, dword [ebp + 0x40]
mov esi, dword [ebp + 0x58]
push 0
push edi
mov ecx, esi
call fcn.0046d37b
mov ecx, dword [ebx + 0x138]
push 7
lea ecx, [ecx + eax*2]
call fcn.004cfd2e
mov ecx, esi
inc edi
call fcn.0046d286
cmp edi, eax
jne 0x4c0a90
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
mov eax, dword [ebx]
mov ecx, ebx
push 0xffffffffffffffff
push 0
call dword [eax + 0x50]
cmp byte [ebp + 0x68], 0
jne 0x4c0c10
push 0
push str.started
mov ecx, esi
call fcn.0046d358
push 0
mov dword [ebp + 0x58], eax
mov ecx, esi
push str.dl_error
lea eax, [ebp - 0x10c]
push eax
call fcn.0046d5d2
movzx ecx, word [ebx + 0x14c]
mov byte [ebp - 4], 0x1d
test cl, 0x10
jne 0x4c0bf4
mov eax, dword [ebp + 0x58]
cmp eax, 1
jne 0x4c0b1f
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x54]
jmp 0x4c0bff
cmp eax, 2
jne 0x4c0b30
mov ecx, ebx
call fcn.004c7be8
jmp 0x4c0bff
cmp eax, 3
jne 0x4c0b45
or ecx, 0x21
push ecx
mov ecx, ebx
call fcn.004cc1d9
jmp 0x4c0bff
cmp eax, 4
jne 0x4c0beb
test byte [ebx + 0x160], 1
je 0x4c0b6a
push str.LoadResume
push 0x70
mov ecx, ebx
call fcn.004cba61
jmp 0x4c0bf4
cmp dword [ebp - 0xfc], 0
jne 0x4c0bc5
call fcn.004a5ea3
push eax
push 0x14
lea ecx, [ebp - 0x60]
call fcn.004a5cc2
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x19c]
push eax
call fcn.004a7333
lea ecx, [ebp - 0x10c]
cmp ecx, eax
je 0x4c0bae
mov byte [ebp + 0x58], 0
push dword [ebp + 0x58]
push eax
call fcn.00448215
lea ecx, [ebp - 0x19c]
call fcn.0044823e
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x1d
call fcn.004a5d2b
push 1
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x10c]
push eax
call fcn.00448193
mov ecx, ebx
call fcn.004cbb1b
jmp 0x4c0bf4
push 0
mov ecx, ebx
call fcn.004cdeb5
mov eax, dword [ebx]
mov ecx, ebx
push 0xffffffffffffffff
push 1
call dword [eax + 0x50]
push 0x12
pop eax
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], al
call fcn.0044823e
push 0xffffffffffffffff
push str.antivirus
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x58], eax
mov byte [ebp + 0x47], 0
test eax, eax
je 0x4c0d64
cmp byte [ebp + 0x68], 0
jne 0x4c0d64
and dword [ebp + 0x50], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c0d64
mov ecx, dword [ebp + 0x50]
xor esi, esi
mov eax, dword [edi + 4]
sub eax, dword [edi]
cdq
idiv dword [ebp - 0x28]
cmp ecx, eax
jae 0x4c0d61
push ecx
mov ecx, dword [ebp + 0x58]
call fcn.0046d3b8
mov dword [ebp + 0x68], eax
test eax, eax
je 0x4c0d45
mov ecx, eax
call fcn.0046d286
mov dword [ebp + 0x40], eax
test eax, eax
jle 0x4c0ca1
mov ecx, dword [ebp + 0x68]
push 0
push 0
call fcn.0046d37b
mov ecx, dword [edi]
mov byte [esi + ecx + 0x6c], al
mov ecx, dword [edi]
mov al, byte [esi + ecx + 0x6c]
mov byte [esi + ecx + 0x6b], al
mov eax, dword [ebp + 0x40]
cmp eax, 1
jle 0x4c0cf2
mov ecx, dword [ebp + 0x68]
push 0
push 0
push 1
call fcn.0046d31b
mov ecx, dword [edi]
mov dword [esi + ecx + 0x88], eax
mov dword [esi + ecx + 0x8c], edx
mov eax, dword [edi]
mov ecx, dword [esi + eax + 0x88]
mov eax, dword [esi + eax + 0x8c]
cmp eax, dword [ebx + 0x7d4]
jl 0x4c0cf2
jg 0x4c0ce6
cmp ecx, dword [ebx + 0x7d0]
jbe 0x4c0cf2
mov dword [ebx + 0x7d0], ecx
mov dword [ebx + 0x7d4], eax
mov ecx, dword [ebp + 0x68]
call fcn.0046d286
cmp eax, 2
jbe 0x4c0d2c
mov ecx, dword [ebp + 0x68]
lea eax, [ebp - 0x19c]
push 0
push 2
push eax
call fcn.0046d625
mov ecx, dword [edi]
add ecx, 0x70
push eax
add ecx, esi
call fcn.00448080
lea ecx, [ebp - 0x19c]
call fcn.0044823e
jmp 0x4c0d38
mov ecx, dword [edi]
add ecx, 0x70
add ecx, esi
call fcn.0048796a
mov eax, dword [edi]
cmp byte [esi + eax + 0x6c], 1
jne 0x4c0d45
mov byte [ebp + 0x47], 1
mov ecx, dword [ebp + 0x58]
add esi, 0xa0
inc dword [ebp + 0x50]
call fcn.0046d286
mov ecx, dword [ebp + 0x50]
cmp ecx, eax
jb 0x4c0c4f
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.infected
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x68], eax
test eax, eax
je 0x4c0e0e
and dword [ebp + 0x58], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c0dca
mov edi, dword [ebp + 0x68]
lea eax, [ebx + 0x7d8]
mov esi, dword [ebp + 0x58]
mov ebx, eax
mov dword [ebp + 0x40], eax
push 0
push esi
mov ecx, edi
call fcn.0046d37b
mov dword [ebp + 0x58], eax
mov ecx, ebx
lea eax, [ebp + 0x58]
push eax
call fcn.0045e5d7
mov ecx, edi
inc esi
call fcn.0046d286
cmp esi, eax
jb 0x4c0d9d
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
mov ecx, dword [ebp + 0x68]
call fcn.0046d286
test eax, eax
jne 0x4c0df4
cmp dword [ebx + 0x7d4], eax
jl 0x4c0df4
jg 0x4c0de8
cmp dword [ebx + 0x7d0], eax
jbe 0x4c0df4
mov dword [ebx + 0x7c8], 5
jmp 0x4c0e0e
mov ecx, dword [ebp + 0x68]
call fcn.0046d286
neg eax
push 6
sbb eax, eax
and eax, 0xfffffffb
pop ecx
add eax, ecx
mov dword [ebx + 0x7c8], eax
push 0xffffffffffffffff
push str.quarantined
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x68], eax
test eax, eax
je 0x4c0e83
and dword [ebp + 0x58], 0
mov ecx, eax
call fcn.0046d286
test eax, eax
je 0x4c0e70
mov edi, dword [ebp + 0x68]
lea eax, [ebx + 0x7ec]
mov esi, dword [ebp + 0x58]
mov ebx, eax
mov dword [ebp + 0x40], eax
push 0
push esi
mov ecx, edi
call fcn.0046d37b
mov dword [ebp + 0x58], eax
mov ecx, ebx
lea eax, [ebp + 0x58]
push eax
call fcn.0045e5d7
mov ecx, edi
inc esi
call fcn.0046d286
cmp esi, eax
jb 0x4c0e43
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x38]
mov ecx, dword [ebp + 0x68]
call fcn.0046d286
test eax, eax
je 0x4c0e83
and dword [ebx + 0x7c8], 0
cmp byte [ebp + 0x47], 0
je 0x4c0e93
mov dword [ebx + 0x7c8], 3
push 0
push 0x80
mov ecx, ebx
call fcn.004b7090
push 0
push str.suffixes
mov ecx, esi
call fcn.0046d52e
mov dword [ebp + 0x58], eax
test eax, eax
je 0x4c0f0e
mov eax, dword [edi + 4]
mov ecx, 0xa0
sub eax, dword [edi]
cdq
idiv ecx
and dword [ebp + 0x68], 0
test eax, eax
je 0x4c0f0e
mov ebx, dword [ebp + 0x68]
xor esi, esi
mov edx, dword [edi]
mov eax, ebx
mov edi, dword [ebp + 0x58]
mov cl, bl
shr eax, 3
and cl, 7
mov al, byte [eax + edi]
mov edi, dword [ebp + 0x38]
shr al, cl
mov ecx, 0xa0
shl al, 2
xor al, byte [esi + edx + 0x6a]
and al, 4
xor byte [esi + edx + 0x6a], al
inc ebx
mov eax, dword [edi + 4]
add esi, ecx
sub eax, dword [edi]
cdq
idiv ecx
cmp ebx, eax
jb 0x4c0ed0
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x64]
push 0xffffffffffffffff
push str.converted_media
mov ecx, esi
call fcn.0046d39c
test eax, eax
je 0x4c0f33
lea ecx, [ebx + 0x758]
push ecx
mov ecx, dword [ebx + 0xdc]
push eax
call fcn.005387d5
push 0xffffffffffffffff
push str.transcode
mov ecx, esi
call fcn.0046d29f
mov edi, eax
test edi, edi
je 0x4c0f5e
lea eax, [ebp + 0x30]
mov ecx, 0x7eadf8
push eax
call fcn.0049f95d
push edi
push ebx
mov ecx, dword [eax]
call fcn.004b6ee1
push 0xffffffffffffffff
push str.observers
mov ecx, esi
call fcn.0046d39c
mov dword [ebp + 0x68], eax
test eax, eax
je 0x4c0fc5
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 4]
test eax, eax
jne 0x4c0f87
test byte [ebx + 0x160], 8
jne 0x4c0fc5
mov ecx, dword [ebp + 0x68]
xor edi, edi
call fcn.0046d286
test eax, eax
je 0x4c0fc5
mov esi, dword [ebp + 0x68]
push edi
mov ecx, esi
call fcn.0046d2bb
push eax
push ebx
call fcn.00531c8d
test eax, eax
je 0x4c0fb6
mov edx, dword [ebx]
mov ecx, ebx
push eax
call dword [edx + 0x188]
mov ecx, esi
inc edi
call fcn.0046d286
cmp edi, eax
jb 0x4c0f98
mov esi, dword [ebp + 0x64]
mov eax, dword [ebx]
mov ecx, ebx
push str.CommentsObserver
call dword [eax + 0x190]
push 0xffffffffffffffff
push str.comments
mov ecx, esi
mov edi, eax
call fcn.0046d39c
test eax, eax
je 0x4c0ff3
push 0
push eax
lea ecx, [edi + 8]
call fcn.0052deb1
push str.tfurl
lea eax, [ebp - 0x22c]
mov ecx, esi
push eax
call fcn.0046d3e1
push eax
lea ecx, [ebx + 0x230]
call fcn.00415dd0
lea ecx, [ebp - 0x22c]
call fcn.0040fad0
lea ecx, [ebp - 0x124]
call fcn.0044823e
lea ecx, [ebp - 0x13c]
call fcn.0044823e
lea ecx, [ebp - 0x154]
call fcn.0044823e
lea ecx, [ebp - 0x16c]
call fcn.0044823e
lea ecx, [ebp - 0x7c]
call fcn.0044823e
mov eax, dword [ebp + 0x1c]
push 8
pop ecx
cmp eax, ecx
jb 0x4c108e
mov ecx, dword [ebp + 8]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x64], ecx
cmp eax, 0x1000
jb 0x4c1085
lea eax, [ebp + 0x68]
push eax
lea eax, [ebp + 0x64]
push eax
call fcn.0044810a
mov eax, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x64]
push eax
push ecx
call fcn.0068976d
pop ecx
pop ecx
and dword [ebp + 0x18], 0
xor ecx, ecx
mov word [ebp + 8], cx
lea ecx, [ebp - 0x184]
mov dword [ebp + 0x1c], 7
call fcn.0044823e
mov al, 1
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add ebp, 0x5c
leave
ret 8