Function at 0x4fcf1e
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x734d99
mov eax, dword fs:[0]
push eax
sub esp, 0x288
mov eax, dword [0x820ac4]
xor eax, esp
mov dword [esp + 0x280], eax
push ebx
push esi
push edi
mov eax, dword [0x820ac4]
xor eax, esp
push eax
lea eax, [esp + 0x298]
mov dword fs:[0], eax
mov ebx, ecx
mov ecx, dword [ebp + 8]
mov eax, ecx
mov dword [esp + 0x30], ecx
call fcn.004c7ed0
test al, al
je 0x4fd1e8
inc dword [ebx + 0x30]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x30]
add eax, 0xfffffffe
cmp eax, 3
mov dword [esp + 0x18], 0x15180
ja 0x4fcf9b
cmp edx, 3
jae 0x4fcf9b
mov dword [esp + 0x18], 0x3c
sub esp, 0x20
lea eax, [ebx - 8]
mov dword [esp + 0xcc], eax
mov eax, esp
mov dword [esp + 0x34], esp
sub esp, 0x10
mov ecx, fcn.004fcb10
mov dword [esp + 0xd4], ecx
xor edx, edx
mov dword [esp + 0xd8], edx
mov edi, esp
lea esi, [esp + 0xd4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
call fcn.004fa507
mov ecx, dword [esp + 0x38]
push str.BT::P2SP::http_share_query_retry
xor edi, edi
push edi
lea eax, [ebx + 0x2c]
push eax
call fcn.0045c92e
push dword [esp + 0x18]
lea ecx, [esp + 0x64]
mov dword [esp + 0x28], 3
call fcn.0045bb6a
pop ecx
mov dword [esp + 0x54], eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x80]
push eax
mov dword [esp + 0x2a8], edi
call fcn.0044e956
mov dword [esp + 0x30], eax
lea eax, [ebx + 0x30]
push eax
lea eax, [esp + 0x10c]
push eax
call fcn.0044e956
add esp, 0x10
mov dword [esp + 0x24], eax
push dword [esp + 0x30]
lea esi, [esp + 0xe8]
mov byte [esp + 0x2a4], 2
call fcn.004c7ef0
push eax
lea eax, [esp + 0x13c]
push str.http_share_query_error:
push eax
mov byte [esp + 0x2ac], 3
call fcn.00407154
add esp, 0xc
push str.__retry
push eax
lea eax, [esp + 0x124]
push eax
mov byte [esp + 0x2ac], 4
call fcn.0040710d
add esp, 0xc
mov byte [esp + 0x2a0], 5
push dword [esp + 0x24]
push eax
lea eax, [esp + 0x194]
push eax
call fcn.0042c91b
add esp, 0xc
push 0x7b8548
push eax
mov byte [esp + 0x2a8], 6
lea eax, [esp + 0x178]
push eax
call fcn.0040710d
add esp, 0xc
mov byte [esp + 0x2a0], 7
push dword [esp + 0x28]
push eax
lea eax, [esp + 0x15c]
push eax
call fcn.0042c91b
add esp, 0xc
push 0x7c05e4
push eax
lea eax, [esp + 0xac]
push eax
mov byte [esp + 0x2ac], 8
call fcn.0040710d
add esp, 0xc
mov byte [esp + 0x2a0], 9
push dword [esp + 0x54]
push eax
lea eax, [esp + 0x1b0]
push eax
call fcn.0042c91b
sub esp, 0x10
mov ecx, esp
mov byte [esp + 0x2bc], 0xa
mov dword [esp + 0x30], esp
push str.sec_later
push eax
push ecx
call fcn.0040710d
mov ecx, dword [ebx + 0x20]
add esp, 0xc
call fcn.004f99d7
xor esi, esi
push edi
inc esi
push esi
lea ecx, [esp + 0x1b0]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0xac]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x15c]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x178]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x194]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x124]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x140]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0xec]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x108]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x84]
call fcn.00401f4f
push edi
push esi
lea ecx, [esp + 0x68]
call fcn.00401f4f
jmp 0x4fdfe1
mov esi, ecx
xor edi, edi
lea eax, [esi + 0x28]
mov dword [ebx + 0x30], edi
call fcn.004b0e24
mov dword [esp + 0x24], eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.0044e84a
push eax
lea eax, [esp + 0x6c]
push str.http_share_query_return
push eax
mov dword [esp + 0x2b4], 0xb
call fcn.00424625
push ecx
push ecx
mov ecx, esp
mov byte [esp + 0x2bc], 0xc
mov dword [esp + 0x30], esp
push str._files.
push eax
push ecx
call fcn.0040bba8
add esp, 0xc
push dword [ebx + 0x20]
call fcn.004f9910
push edi
push 1
lea ecx, [esp + 0x68]
call fcn.00407277
or dword [esp + 0x2a0], 0xffffffff
push edi
push 1
lea ecx, [esp + 0x84]
call fcn.00407277
mov eax, dword [ebx + 0x20]
lea edi, [esi + 0x38]
mov byte [eax + 0xad], 0
push dword [edi + 4]
lea esi, [esp + 0x38]
call fcn.0042dad8
mov edi, dword [esp + 0x30]
push dword [edi + 0x40]
add edi, 0x38
lea esi, [esp + 0x5c]
call fcn.0042dad8
mov esi, dword [esp + 0x34]
test esi, esi
je 0x4fd2ac
cmp esi, dword [esp + 0x58]
je 0x4fd2b1
call fcn.0054b876
mov edi, dword [esp + 0x38]
cmp edi, dword [esp + 0x5c]
je 0x4fd328
test esi, esi
jne 0x4fd2c4
call fcn.0054b876
cmp edi, dword [esi + 8]
jb 0x4fd2ce
call fcn.0054b876
mov esi, dword [ebx + 0x20]
push 5
add esi, 0x38
pop ecx
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
jne 0x4fd31a
sub esp, 0x1c
cmp byte [0x8b5018], al
mov ecx, esp
mov dword [esp + 0x30], esp
je 0x4fd2f5
push str.__bt_task_is_supervised__still_download_for_BCIF_
jmp 0x4fd2fa
push str.__bt_task_is_supervised__task_forbidden_to_download_
call fcn.0040a68d
push dword [ebx + 0x20]
call fcn.004f9973
cmp byte [0x8b5018], 0
jne 0x4fd31a
mov eax, dword [ebx + 0x20]
mov byte [eax + 0xad], 1
lea esi, [esp + 0x34]
call fcn.004b0c04
jmp 0x4fd28b
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x28]
mov edi, dword [eax + 0x14]
push dword [edi + 0x3c]
add edi, 0x38
lea esi, [esp + 0x20]
call fcn.0042dad8
jmp 0x4fd395
lea esi, [esp + 0x1c]
call fcn.004b0a79
mov esi, dword [eax]
mov eax, dword [esi + 0x20]
or eax, dword [esi + 0x24]
je 0x4fd375
lea eax, [esi + 0x80]
push eax
call fcn.0041c874
test al, al
jne 0x4fd3c1
add esi, 0x94
push esi
call fcn.004e0406
test al, al
jne 0x4fd3c1
mov esi, dword [esp + 0x1c]
test esi, esi
jne 0x4fd382
call fcn.0054b876
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 8]
jb 0x4fd390
call fcn.0054b876
add dword [esp + 0x20], 4
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x28]
mov edi, dword [eax + 0x14]
push dword [edi + 0x40]
add edi, 0x38
lea esi, [esp + 0x38]
call fcn.0042dad8
mov edi, esi
lea esi, [esp + 0x1c]
call fcn.0044de3a
test al, al
jne 0x4fd342
jmp 0x4fd6a9
mov esi, dword [ebx + 0x20]
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0x14]
add eax, 0x38
mov dword [esp + 0x28], eax
call fcn.004bca88
mov edi, eax
mov eax, dword [esp + 0x30]
add eax, 0x28
mov dword [esp + 0x24], eax
call fcn.004b0e24
cmp eax, edi
je 0x4fd4d9
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0x14]
add eax, 0x38
call fcn.004bca88
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x24]
call fcn.004b0e24
mov dword [esp + 0x24], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0xe8]
push eax
call fcn.0044e84a
mov esi, eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x10c]
push eax
mov dword [esp + 0x2b0], 0xd
call fcn.0044e84a
push eax
lea eax, [esp + 0x90]
push str.http_share_query_update_hash_error:_file_number_not_equal._return
push eax
mov byte [esp + 0x2bc], 0xe
call fcn.00424625
add esp, 0x1c
push str.__but_need
push eax
lea eax, [esp + 0x68]
push eax
mov byte [esp + 0x2ac], 0xf
call fcn.0040bba8
sub esp, 0x10
mov ecx, esp
mov byte [esp + 0x2bc], 0x10
mov dword [esp + 0x30], esp
push esi
push eax
push ecx
call fcn.00424550
add esp, 0xc
push dword [ebx + 0x20]
call fcn.004f99a5
xor edi, edi
xor esi, esi
push edi
inc esi
push esi
lea ecx, [esp + 0x68]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x84]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x108]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0xec]
call fcn.00407277
jmp 0x4fdfe1
mov edi, dword [esp + 0x28]
push dword [edi + 4]
and dword [esp + 0x1c], 0
lea esi, [esp + 0x20]
call fcn.0042dad8
jmp 0x4fd53f
lea esi, [esp + 0x1c]
call fcn.004b0a79
mov esi, dword [esp + 0x30]
push dword [esp + 0x18]
mov edi, dword [eax]
add esi, 0x28
call fcn.004b09d2
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x20]
jne 0x4fd588
mov eax, dword [eax + 0x3c]
cmp eax, dword [edi + 0x24]
jne 0x4fd588
mov esi, dword [esp + 0x1c]
inc dword [esp + 0x18]
test esi, esi
jne 0x4fd52c
call fcn.0054b876
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 8]
jb 0x4fd53a
call fcn.0054b876
add dword [esp + 0x20], 4
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x28]
mov edi, dword [eax + 0x14]
push dword [edi + 0x40]
add edi, 0x38
lea esi, [esp + 0x38]
call fcn.0042dad8
mov edi, esi
lea esi, [esp + 0x1c]
call fcn.0044de3a
test al, al
jne 0x4fd4f0
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x28]
mov edi, dword [eax + 0x14]
push dword [edi + 0x3c]
and dword [esp + 0x1c], 0
add edi, 0x38
lea esi, [esp + 0x20]
call fcn.0042dad8
jmp 0x4fd632
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
push str.http_share_query_update_hash_error:_file_size_not_equal.
call fcn.0040a68d
push dword [ebx + 0x20]
call fcn.004f99a5
jmp 0x4fdfe1
lea esi, [esp + 0x1c]
call fcn.004b0a79
mov esi, dword [eax]
lea edi, [esi + 0x80]
push edi
mov dword [esp + 0x28], esi
call fcn.0041c874
test al, al
je 0x4fd5e5
mov esi, dword [esp + 0x30]
push dword [esp + 0x18]
add esi, 0x28
call fcn.004b09d2
mov esi, eax
push 5
add esi, 0x20
pop ecx
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x24]
lea edi, [esi + 0x94]
push edi
call fcn.004e0406
test al, al
je 0x4fd60e
mov esi, dword [esp + 0x30]
push dword [esp + 0x18]
add esi, 0x28
call fcn.004b09d2
mov esi, eax
add esi, 0x60
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x1c]
inc dword [esp + 0x18]
test esi, esi
jne 0x4fd61f
call fcn.0054b876
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 8]
jb 0x4fd62d
call fcn.0054b876
add dword [esp + 0x20], 4
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x28]
mov edi, dword [eax + 0x14]
push dword [edi + 0x40]
add edi, 0x38
lea esi, [esp + 0x38]
call fcn.0042dad8
mov edi, esi
lea esi, [esp + 0x1c]
call fcn.0044de3a
test al, al
jne 0x4fd5a8
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
push str.http_share_query_update_hash_OK:_P2SP__EMULE
call fcn.0040a68d
push dword [ebx + 0x20]
call fcn.004f9910
mov ecx, dword [ebx + 0x20]
call fcn.004f87f1
mov eax, dword [ebx + 0x20]
cmp dword [eax + 0xc], 1
jne 0x4fdfe1
cmp byte [eax + 0x172], 0
je 0x4fd6a9
mov eax, dword [0x8b684c]
cmp byte [eax + 0x60], 0
je 0x4fd6a9
lea ecx, [ebx - 8]
call fcn.004fc020
mov esi, dword [esp + 0x30]
push dword [esi + 0x2c]
and dword [esp + 0x58], 0
add esi, 0x28
lea edi, [esp + 0x48]
call fcn.004d5190
mov esi, dword [esp + 0x30]
push dword [esi + 0x30]
add esi, 0x28
lea edi, [esp + 0xd8]
call fcn.004d5190
mov esi, dword [esp + 0x44]
test esi, esi
je 0x4fd6e8
cmp esi, dword [esp + 0xd4]
je 0x4fd6ed
call fcn.0054b876
mov edi, dword [esp + 0x48]
cmp edi, dword [esp + 0xd8]
je 0x4fdebb
test esi, esi
jne 0x4fd707
call fcn.0054b876
cmp edi, dword [esi + 8]
jb 0x4fd711
call fcn.0054b876
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x28]
mov edi, dword [eax + 0x14]
push dword [edi + 0x3c]
add edi, 0x38
lea esi, [esp + 0x40]
mov dword [esp + 0x1c], edi
call fcn.0042dad8
jmp 0x4fde8e
lea esi, [esp + 0x3c]
call fcn.004b0a79
mov eax, dword [eax]
cmp dword [eax + 0xe4], 0
mov dword [esp + 0x2c], eax
je 0x4fde6a
mov edi, dword [esp + 0x48]
mov esi, eax
push 5
add edi, 0x20
add esi, 0x80
pop ecx
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
jne 0x4fde6a
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x20]
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + 0x38]
jne 0x4fde6a
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x24]
cmp eax, dword [ecx + 0x3c]
jne 0x4fde6a
mov esi, ecx
lea eax, [esi + 0x70]
call fcn.004b0971
test eax, eax
jbe 0x4fd8bd
mov eax, esi
add eax, 0x70
call fcn.004b0971
mov edi, dword [esp + 0x18]
push dword [edi + 4]
lea esi, [esp + 0xc8]
mov dword [esp + 0x2c], eax
call fcn.0042dad8
cmp dword [esp + 0x3c], 0
je 0x4fd7d5
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0xc4]
je 0x4fd7da
call fcn.0054b876
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0xc8]
sar eax, 2
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0xe8]
push eax
call fcn.0044e84a
mov esi, eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x10c]
push eax
mov dword [esp + 0x2b0], 0x11
call fcn.0044e834
push eax
lea eax, [esp + 0x90]
push str.__http_share_query_return_file_
push eax
mov byte [esp + 0x2bc], 0x12
call fcn.00424625
add esp, 0x1c
push str.__mirrors:
push eax
lea eax, [esp + 0x68]
push eax
mov byte [esp + 0x2ac], 0x13
call fcn.0040bba8
sub esp, 0x10
mov ecx, esp
mov byte [esp + 0x2bc], 0x14
mov dword [esp + 0x30], esp
push esi
push eax
push ecx
call fcn.00424550
add esp, 0xc
push dword [ebx + 0x20]
call fcn.004f9910
xor edi, edi
xor esi, esi
push edi
inc esi
push esi
lea ecx, [esp + 0x68]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x84]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x108]
call fcn.00407277
or dword [esp + 0x2a0], 0xffffffff
push edi
push esi
lea ecx, [esp + 0xec]
call fcn.00407277
mov esi, dword [esp + 0x48]
lea eax, [esi + 0x70]
call fcn.004b0971
add dword [esp + 0x54], eax
mov eax, dword [esp + 0x2c]
mov byte [eax + 0xc1], 0
cmp dword [esi], 0x16
jne 0x4fda36
cmp byte [0x8b5018], 0
mov edi, dword [esp + 0x18]
push dword [edi + 4]
je 0x4fd968
lea esi, [esp + 0xe0]
call fcn.0042dad8
cmp dword [esp + 0x3c], 0
je 0x4fd90d
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0xdc]
je 0x4fd912
call fcn.0054b876
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0xe0]
sar eax, 2
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.0044e834
push eax
lea eax, [esp + 0x6c]
push str.__file_
push eax
mov dword [esp + 0x2b4], 0x15
call fcn.00424625
push ecx
push ecx
mov byte [esp + 0x2bc], 0x16
mov ecx, esp
mov dword [esp + 0x30], esp
push str.__is_supervised__still_download_for_BCIF_
jmp 0x4fd9e1
lea esi, [esp + 0xd0]
call fcn.0042dad8
cmp dword [esp + 0x3c], 0
je 0x4fd988
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0xcc]
je 0x4fd98d
call fcn.0054b876
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0xd0]
sar eax, 2
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.0044e834
push eax
lea eax, [esp + 0x6c]
push str.__file_
push eax
mov dword [esp + 0x2b4], 0x17
call fcn.00424625
push ecx
push ecx
mov byte [esp + 0x2bc], 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push str.__is_supervised__task_forbidden_to_download_
push eax
push ecx
call fcn.0040bba8
add esp, 0xc
push dword [ebx + 0x20]
call fcn.004f9973
push 0
push 1
lea ecx, [esp + 0x68]
call fcn.00407277
or dword [esp + 0x2a0], 0xffffffff
push 0
push 1
lea ecx, [esp + 0x84]
call fcn.00407277
cmp byte [0x8b5018], 0
jne 0x4fda36
mov eax, dword [ebx + 0x20]
mov byte [eax + 0xad], 1
mov eax, dword [esp + 0x2c]
mov byte [eax + 0xc1], 1
mov edi, dword [esp + 0x48]
push dword [edi + 0x74]
add edi, 0x70
lea esi, [esp + 0x20]
call fcn.0042dad8
mov edi, dword [esp + 0x48]
push dword [edi + 0x78]
add edi, 0x70
lea esi, [esp + 0xa8]
call fcn.0042dad8
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4fda70
cmp eax, dword [esp + 0xa4]
je 0x4fda75
call fcn.0054b876
mov eax, dword [esp + 0x20]
cmp eax, dword [esp + 0xa8]
je 0x4fde6a
lea esi, [esp + 0x1c]
call fcn.004b0a79
mov dword [esp + 0x28], eax
call fcn.004b0a79
movzx eax, word [eax + 0x38]
mov dword [esp + 0x4c], eax
call fcn.004b0a79
movzx eax, word [eax + 0x3a]
mov dword [esp + 0x14], eax
movsx eax, ax
cdq
push 0xa
pop ecx
idiv ecx
mov dword [esp + 0x50], eax
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x120]
push eax
mov dword [esp + 0xa0], edx
call fcn.0044e834
mov esi, eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x144]
push eax
mov dword [esp + 0x2b0], 0x19
call fcn.0044e834
mov edi, eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0xf8]
push eax
call fcn.0044e808
push eax
lea eax, [esp + 0x11c]
push str.BitComet
push eax
mov byte [esp + 0x2c4], 0x1b
call fcn.00424625
add esp, 0x24
push 0x7b8540
push eax
lea eax, [esp + 0x84]
push eax
mov byte [esp + 0x2ac], 0x1c
call fcn.0040bba8
add esp, 0xc
push edi
push eax
lea eax, [esp + 0x68]
push eax
mov byte [esp + 0x2ac], 0x1d
call fcn.00424550
add esp, 0xc
push esi
push eax
lea eax, [esp + 0x1b0]
push eax
mov byte [esp + 0x2ac], 0x1e
call fcn.00424550
add esp, 0xc
xor edi, edi
xor esi, esi
push edi
inc esi
push esi
lea ecx, [esp + 0x68]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x84]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x108]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0xec]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x140]
call fcn.00407277
push edi
push esi
lea ecx, [esp + 0x124]
mov byte [esp + 0x2a8], 0x25
call fcn.00407277
mov edi, dword [esp + 0x2c]
push dword [edi + 0xec]
add edi, 0xe8
lea esi, [esp + 0x38]
call fcn.0042dad8
jmp 0x4fdc3a
lea esi, [esp + 0x34]
call fcn.004b0a79
mov edi, dword [eax]
lea esi, [esp + 0x1c]
call fcn.004b0a79
add eax, 0x1c
push eax
lea ecx, [edi + 0x180]
call fcn.00424780
test eax, eax
je 0x4fdcc3
mov esi, dword [esp + 0x34]
test esi, esi
jne 0x4fdc27
call fcn.0054b876
mov eax, dword [esp + 0x38]
cmp eax, dword [esi + 8]
jb 0x4fdc35
call fcn.0054b876
add dword [esp + 0x38], 4
mov edi, dword [esp + 0x2c]
push dword [edi + 0xf0]
add edi, 0xe8
lea esi, [esp + 0xa0]
call fcn.0042dad8
mov edi, esi
lea esi, [esp + 0x34]
call fcn.0044de3a
test al, al
jne 0x4fdbef
mov eax, dword [0x8b684c]
mov eax, dword [eax + 0x50]
test eax, eax
je 0x4fdc7a
cmp eax, 2
jne 0x4fdd41
push 0x270
call fcn.005416ba
pop ecx
mov dword [esp + 0x50], eax
test eax, eax
mov byte [esp + 0x2a0], 0x26
je 0x4fdcd3
push 0
lea esi, [esp + 0x20]
call fcn.004b0a79
add eax, 0x3c
push eax
lea eax, [esp + 0x1b0]
push eax
mov eax, dword [esp + 0x38]
add eax, 0xe0
push eax
push dword [esp + 0x60]
call fcn.00506da5
mov edi, eax
jmp 0x4fdcd5
push 0
mov byte [edi + 0x1d6], 1
push 1
jmp 0x4fde48
xor edi, edi
mov byte [esp + 0x2a0], 0x25
push dword [esp + 0x28]
lea eax, [edi + 0x10]
push eax
mov dword [esp + 0x58], edi
call fcn.0041becc
lea esi, [esp + 0x1c]
call fcn.004b0a79
add eax, 0x1c
push eax
lea eax, [edi + 0x180]
push eax
call fcn.0041becc
mov eax, dword [0x8b684c]
cmp byte [eax + 0x63], 0
je 0x4fdd1b
and dword [edi + 0x178], 0
jmp 0x4fdd27
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + 0x24]
mov dword [edi + 0x178], eax
lea eax, [esp + 0x50]
push eax
mov eax, dword [esp + 0x30]
add eax, 0xe8
call fcn.004b7a16
mov byte [edi + 0x1d6], 1
mov eax, dword [0x8b684c]
mov eax, dword [eax + 0x50]
xor edi, edi
inc edi
cmp eax, edi
je 0x4fdd59
cmp eax, 2
jne 0x4fde45
cmp word [esp + 0x4c], di
jg 0x4fdd72
jne 0x4fde45
cmp word [esp + 0x14], 0xb
jl 0x4fde45
lea esi, [esp + 0x1c4]
call fcn.0044a85c
mov byte [esp + 0x2a0], 0x27
push dword [esp + 0x28]
mov ecx, esi
call fcn.0046544b
cmp dword [esp + 0x234], 0x10
mov eax, dword [esp + 0x220]
pop ecx
jae 0x4fddaa
lea eax, [esp + 0x21c]
push eax
lea esi, [esp + 0x28]
call fcn.0045c3a7
xor esi, esi
cmp dword [esp + 0x24], esi
je 0x4fde39
cmp word [esp + 0x234], si
je 0x4fde39
push 0x248
call fcn.005416ba
pop ecx
mov dword [esp + 0x14], eax
cmp eax, esi
mov byte [esp + 0x2a0], 0x28
je 0x4fde16
push dword [esp + 0x234]
lea eax, [esp + 0x28]
push eax
lea esi, [esp + 0x24]
call fcn.004b0a79
add eax, 0x3c
push eax
mov eax, dword [esp + 0x38]
add eax, 0xe0
push eax
push dword [esp + 0x24]
lea ecx, [esp + 0x1bc]
call fcn.004e4090
mov esi, eax
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x30]
mov byte [esp + 0x2a4], 0x27
add eax, 0xf8
mov dword [esp + 0x18], esi
call fcn.004b7a16
mov byte [esi + 0x3a], 1
lea esi, [esp + 0x1c4]
call fcn.00449716
push 0
push edi
or dword [esp + 0x2a8], 0xffffffff
lea ecx, [esp + 0x1b0]
call fcn.00407277
lea esi, [esp + 0x1c]
call fcn.004b0a96
jmp 0x4fda49
mov esi, dword [esp + 0x3c]
test esi, esi
jne 0x4fde77
call fcn.0054b876
mov eax, dword [esp + 0x40]
cmp eax, dword [esi + 8]
jb 0x4fde85
call fcn.0054b876
add dword [esp + 0x40], 4
mov edi, dword [esp + 0x18]
push dword [edi + 8]
lea esi, [esp + 0x5c]
call fcn.0042dad8
mov edi, esi
lea esi, [esp + 0x3c]
call fcn.0044de3a
test al, al
jne 0x4fd732
lea esi, [esp + 0x44]
call fcn.004cafe0
jmp 0x4fd6c1
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x64]
push eax
call fcn.0044e84a
sub esp, 0x14
mov ecx, esp
mov dword [esp + 0x2bc], 0x29
mov dword [esp + 0x30], esp
push eax
push str.__total_users_
push ecx
call fcn.00424625
add esp, 0xc
push dword [ebx + 0x20]
call fcn.004f9910
or dword [esp + 0x2a0], 0xffffffff
xor edi, edi
push edi
push 1
lea ecx, [esp + 0x68]
call fcn.00407277
lea esi, [ebx - 8]
mov ecx, esi
call fcn.004fb5bc
mov eax, dword [esp + 0x30]
push dword [eax + 0x48]
lea ecx, [esp + 0x80]
call fcn.0045bb6a
pop ecx
push eax
lea eax, [esp + 0x64]
push str.http_share_query_OK__retry
push eax
mov dword [esp + 0x2ac], 0x2a
call fcn.00407154
sub esp, 0x10
mov ecx, esp
mov byte [esp + 0x2bc], 0x2b
mov dword [esp + 0x30], esp
push str.sec_later
push eax
push ecx
call fcn.0040710d
mov ecx, dword [ebx + 0x20]
add esp, 0xc
call fcn.004f9942
push edi
push 1
lea ecx, [esp + 0x68]
call fcn.00401f4f
or dword [esp + 0x2a0], 0xffffffff
push edi
push 1
lea ecx, [esp + 0x84]
call fcn.00401f4f
sub esp, 0x20
mov eax, fcn.004fcb10
mov dword [esp + 0xc4], eax
mov dword [esp + 0xcc], esi
mov eax, esp
mov dword [esp + 0x34], esp
sub esp, 0x10
xor ecx, ecx
mov dword [esp + 0xd8], ecx
mov edi, esp
lea esi, [esp + 0xd4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
call fcn.004fa507
mov eax, dword [esp + 0x50]
push str.BT::P2SP::http_share_query
push 1
add ebx, 0x2c
push ebx
mov ecx, dword [eax + 0x48]
call fcn.0045c92e
mov ecx, dword [esp + 0x298]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x280]
xor ecx, esp
call fcn.0054ae61
mov esp, ebp
pop ebp
ret 4