Function at 0x46da7f
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x6a5169
call fcn.006375a8
sub esp, 0x50
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
push 0x2d
mov al, byte [ebx]
xor esi, esi
pop edx
mov dword [ebp - 0x10], esi
cmp al, dl
jne 0x46e035
mov cl, byte [ebx + 6]
cmp cl, dl
je 0x46dab4
cmp byte [ebx + 7], dl
jne 0x46e035
movzx edx, byte [ebx + 1]
movzx edi, byte [ebx + 2]
mov eax, edx
shl eax, 8
add eax, edi
cmp eax, 0x4c57
ja 0x46dd3c
je 0x46dd32
cmp eax, 0x4253
ja 0x46dc07
je 0x46dbfd
mov esi, 0x4242
cmp eax, esi
ja 0x46db52
je 0x46db48
sub eax, 0x4147
je 0x46db16
sub eax, 0xb
je 0x46db3e
sub eax, 4
je 0x46db34
dec eax
sub eax, 1
je 0x46db2a
dec eax
sub eax, 1
je 0x46db20
sub eax, 0x24
jne 0x46df67
mov esi, str.Ares
jmp 0x46dfa9
mov esi, str.Azureus
jmp 0x46dfa9
mov esi, str.BitPump
jmp 0x46dfa9
mov esi, str.Avicora
jmp 0x46dfa9
mov esi, str.Arctic
jmp 0x46dfa9
mov esi, str.BitBuddy
jmp 0x46dfa9
sub eax, 0x4243
je 0x46dbf3
dec eax
sub eax, 1
je 0x46dbe9
sub eax, 1
je 0x46dbdf
sub eax, 1
je 0x46dbd5
sub eax, 8
je 0x46db89
sub eax, 3
jne 0x46df67
mov esi, str.BitRocket
jmp 0x46dfa9
mov dl, byte [ebx + 4]
cmp dl, 0x41
jne 0x46dbb3
cmp byte [ebx + 5], 0x30
jne 0x46dbb3
movzx eax, cl
sub eax, 0x3d
push eax
push str.Bits_on_Wheels_1.0._d
push dword [ebp + 8]
call fcn.004638e7
add esp, 0xc
jmp 0x46e36a
movzx eax, cl
push eax
movzx eax, byte [ebx + 5]
push eax
movzx eax, dl
push eax
push str.Bits_on_Wheels__c_c_c
push dword [ebp + 8]
call fcn.004638e7
add esp, 0x14
jmp 0x46e36a
mov esi, 0x6c4818
jmp 0x46dfa9
mov esi, str.Bitflu
jmp 0x46dfa9
mov esi, str.BitTorrent_SDK
jmp 0x46dfa9
mov esi, str.BitComet
jmp 0x46dfa9
mov esi, str.BitSlave
jmp 0x46dfa9
mov ecx, 0x4654
cmp eax, ecx
ja 0x46dccd
je 0x46dc7c
sub eax, 0x4258
je 0x46dc72
sub eax, 0xec
je 0x46dc68
sub eax, 0x10
je 0x46dc5e
sub eax, 0xf1
je 0x46dc54
sub eax, 0xfd
je 0x46dc4a
sub eax, 0x11
jne 0x46df67
mov esi, str.electric_sheep
jmp 0x46dfa9
mov esi, str.EBit
jmp 0x46dfa9
mov esi, str.DelugeTorrent
jmp 0x46dfa9
mov esi, str.CTorrent
jmp 0x46dfa9
mov esi, str.Enhanced_CTorrent
jmp 0x46dfa9
mov esi, str.Bittorrent_X
jmp 0x46dfa9
push 9
pop edx
movzx ecx, byte [ebx + esi + 3]
mov word [ebp + esi*2 - 0x1c], cx
lea eax, [ecx - 0x30]
cmp ax, dx
ja 0x46dc99
lea eax, [ecx - 0x30]
mov word [ebp + esi*2 - 0x1c], ax
inc esi
cmp esi, 4
jl 0x46dc7f
movzx eax, word [ebp - 0x16]
push eax
movzx eax, word [ebp - 0x18]
push eax
movzx eax, word [ebp - 0x1a]
push eax
movzx eax, word [ebp - 0x1c]
push eax
push str.FoxTorrent
push str._s__d._d_d_d
push dword [ebp + 8]
call fcn.004638e7
add esp, 0x1c
jmp 0x46e36a
sub eax, 0x4845
je 0x46dd28
sub eax, 7
je 0x46dd1e
dec eax
sub eax, 1
je 0x46dd14
sub eax, 0x306
je 0x46dd0a
sub eax, 0xfc
je 0x46dd00
sub eax, 4
jne 0x46df67
mov esi, str.libtorrent
jmp 0x46dfa9
mov esi, str.Lphant
jmp 0x46dfa9
mov esi, str.KTorrent
jmp 0x46dfa9
mov esi, str.Hydranode
jmp 0x46dfa9
mov esi, str.Halite
jmp 0x46dfa9
mov esi, str.Helix
jmp 0x46dfa9
mov esi, str.LimeWire
jmp 0x46dfa9
mov ecx, 0x5453
cmp eax, ecx
ja 0x46de30
je 0x46de26
mov ecx, 0x5344
cmp eax, ecx
ja 0x46ddc4
je 0x46dfa4
sub eax, 0x4d50
je 0x46ddba
dec eax
sub eax, 1
je 0x46ddb0
dec eax
sub eax, 1
je 0x46dda6
sub eax, 0x3f0
je 0x46dd9c
sub eax, 0x10
je 0x46dd92
sub eax, 0x100
jne 0x46df67
mov esi, str.Retriever
jmp 0x46dfa9
mov esi, str.Qt_4_Torrent_Example
jmp 0x46dfa9
mov esi, str.QQDownload
jmp 0x46dfa9
mov esi, str.MoonlightTorrent
jmp 0x46dfa9
mov esi, str.Miro
jmp 0x46dfa9
mov esi, str.MooPolice
jmp 0x46dfa9
sub eax, 0x5347
je 0x46de1c
sub eax, 0xc
je 0x46de12
sub eax, 7
je 0x46de08
sub eax, 0x24
je 0x46ddfe
sub eax, 0xd0
je 0x46ddf4
sub eax, 4
jne 0x46df67
mov esi, str.Transmission
jmp 0x46dfa9
mov esi, str.Torrent_.NET
jmp 0x46dfa9
mov esi, str.Shareaza_alpha_beta
jmp 0x46dfa9
mov esi, str.Shareaza
jmp 0x46dfa9
mov esi, str.SwarmScope
jmp 0x46dfa9
mov esi, str.SG_Torrent
jmp 0x46dfa9
mov esi, str.TorrentStorm
jmp 0x46dfa9
mov ecx, 0x5759
cmp eax, ecx
ja 0x46df41
je 0x46df3a
sub eax, 0x5454
je 0x46df33
sub eax, 0xf1
je 0x46df2c
sub eax, 7
je 0x46df25
sub eax, 1
je 0x46df1b
sub eax, 7
je 0x46de85
sub eax, 0xf3
jne 0x46df67
mov esi, str.Vagaa
jmp 0x46dfa9
cmp dword [ebx + 0x10], 0x30504455
jne 0x46dea0
push str._FAKE__BitSpirit
mov ecx, dword [ebp + 8]
call fcn.00427f43
jmp 0x46e36a
movzx ecx, byte [ebx + 3]
mov esi, 0x6b7fec
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov dword [ebp + 0xc], esi
movzx eax, byte [ebx + 5]
shl ecx, 8
or ecx, eax
mov eax, 0x313330
cmp ecx, eax
jb 0x46ded7
cmp byte [ebp + 0x10], 0
je 0x46ded7
mov esi, 0x6c4c00
jmp 0x46dfa9
cmp ecx, 0x313332
jb 0x46def7
push ebx
call fcn.0046e7ef
test al, al
jne 0x46dfac
mov esi, str._FAKE__uTorrent
jmp 0x46dfa9
cmp ecx, eax
jb 0x46dfac
mov ax, word [ebx + 8]
mov ecx, 0x3fff
and ax, cx
mov ecx, 0x1f4
cmp ax, cx
jbe 0x46dfac
jmp 0x46decd
mov esi, str.uTorrent_Mac
jmp 0x46dfa9
mov esi, str.uLeecher
jmp 0x46dfa9
mov esi, str.uTorrent_Embedded
jmp 0x46dfa9
mov esi, str.TuoTu
jmp 0x46dfa9
mov esi, str.Wyzo
jmp 0x46dfa9
sub eax, 0x584c
je 0x46dfa4
sub eax, 8
je 0x46df9d
sub eax, 4
je 0x46df96
sub eax, 0x1fc
je 0x46df8f
sub eax, 0x1220
je 0x46df88
sub eax, 0x4ce
je 0x46df81
push edi
push edx
push str.Unknown__c_c
lea eax, [ebp - 0x5c]
push 0x14
push eax
call fcn.00462d1a
add esp, 0x14
lea esi, [ebp - 0x5c]
jmp 0x46dfa9
mov esi, str.qBittorrent
jmp 0x46dfa9
mov esi, str.libTorrent
jmp 0x46dfa9
mov esi, str.ZipTorrent
jmp 0x46dfa9
mov esi, str.Xtorrent
jmp 0x46dfa9
mov esi, str.XanTorrent
jmp 0x46dfa9
mov esi, str.Xunlei
mov dword [ebp + 0xc], esi
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
lea esi, [ebx + 3]
push 0xfffffffffffffffd
stosd dword es:[edi], eax
stosw word es:[edi], ax
pop eax
sub eax, ebx
lea edi, [ebp - 0x1c]
push 9
mov dword [ebp + 0x10], eax
pop ebx
movzx eax, byte [esi]
push eax
call fcn.006669f1
pop ecx
test eax, eax
je 0x46e013
movzx ecx, byte [esi]
mov word [edi], cx
lea eax, [ecx - 0x30]
cmp ax, bx
ja 0x46dfe7
lea eax, [ecx - 0x30]
jmp 0x46e002
push 0x19
lea eax, [ecx - 0x41]
pop edx
cmp ax, dx
ja 0x46dff7
lea eax, [ecx - 0x37]
jmp 0x46e002
lea eax, [ecx - 0x61]
cmp ax, dx
ja 0x46e005
lea eax, [ecx - 0x70]
mov word [edi], ax
mov eax, dword [ebp + 0x10]
inc esi
add eax, esi
add edi, 2
cmp eax, 4
jl 0x46dfc6
movzx eax, word [ebp - 0x16]
mov esi, dword [ebp + 0xc]
push eax
movzx eax, word [ebp - 0x18]
push eax
movzx eax, word [ebp - 0x1a]
push eax
movzx eax, word [ebp - 0x1c]
push eax
push esi
push str._s__d._d._d._d
jmp 0x46dcbd
mov ch, byte [ebx + 4]
cmp ch, dl
jne 0x46e0dd
cmp byte [ebx + 5], dl
jne 0x46e0dd
movzx ecx, al
mov eax, ecx
sub eax, 0x41
je 0x46e0a8
sub eax, 0xe
je 0x46e0a1
sub eax, 3
je 0x46e09a
sub eax, 1
je 0x46e093
sub eax, 1
je 0x46e08c
sub eax, 1
je 0x46e085
push ecx
push str.Unknown__c
lea eax, [ebp - 0x5c]
push 0x14
push eax
call fcn.00462d1a
add esp, 0x10
lea ecx, [ebp - 0x5c]
jmp 0x46e0ad
mov ecx, 0x6c4d4c
jmp 0x46e0ad
mov ecx, str.BitTornado
jmp 0x46e0ad
mov ecx, str.Shadow
jmp 0x46e0ad
mov ecx, str.Tribler
jmp 0x46e0ad
mov ecx, str.Osprey_Permaseed
jmp 0x46e0ad
mov ecx, 0x6c4ce8
movzx eax, byte [ebx + esi + 1]
mov word [ebp + esi*2 - 0x1c], ax
inc esi
cmp esi, 4
jl 0x46e0ad
xor eax, eax
mov word [ebp - 0x16], ax
lea eax, [ebp - 0x1c]
push eax
push ecx
push 0x6c4d70
push dword [ebp + 8]
call fcn.004638e7
add esp, 0x10
jmp 0x46e36a
cmp al, 0x4d
jne 0x46e145
mov cl, byte [ebx + 2]
cmp cl, dl
jne 0x46e145
cmp ch, dl
jne 0x46e10f
cmp byte [ebx + 6], dl
jne 0x46e10f
cmp byte [ebx + 7], dl
jne 0x46e10f
movzx eax, byte [ebx + 5]
push eax
movzx eax, byte [ebx + 3]
push eax
movzx eax, byte [ebx + 1]
push eax
push str.BitTorrent__c._c._c
jmp 0x46dbc5
cmp cl, dl
jne 0x46e145
cmp byte [ebx + 5], dl
jne 0x46e145
cmp byte [ebx + 7], dl
jne 0x46e145
movzx eax, byte [ebx + 6]
push eax
movzx eax, ch
push eax
movzx eax, byte [ebx + 3]
push eax
movzx eax, byte [ebx + 1]
push eax
push str.BitTorrent__c._c_c._c
push dword [ebp + 8]
call fcn.004638e7
add esp, 0x18
jmp 0x46e36a
cmp al, 0x65
jne 0x46e191
cmp byte [ebx + 1], 0x78
jne 0x46e191
cmp byte [ebx + 2], 0x62
jne 0x46e191
cmp byte [ebx + 3], 0x63
jne 0x46e191
cmp byte [ebx + 6], 0x4c
jne 0x46e178
cmp byte [ebx + 7], 0x4f
jne 0x46e178
cmp byte [ebx + 8], 0x52
jne 0x46e178
cmp byte [ebx + 9], 0x44
mov edx, str.BitLord
je 0x46e17d
mov edx, str.BitComet
movzx eax, byte [ebx + 5]
push eax
movzx eax, ch
push eax
push edx
push str._s__i._i
jmp 0x46dbc5
mov cl, byte [ebx + 2]
cmp cl, 0x42
jne 0x46e1d7
cmp byte [ebx + 3], 0x53
jne 0x46e1d7
cmp dword [ebx + 0x10], 0x30504455
jne 0x46e1b2
push str.BitSpirit_v2_UDP0
jmp 0x46de93
cmp dword [ebx + 0xe], 0x50545448
jne 0x46e1cd
cmp word [ebx + 0x12], 0x5442
jne 0x46e1cd
push str.BitSpirit_v2_HTTPBT
jmp 0x46de93
push str.Unknown_BitSpirit
jmp 0x46de93
mov dl, byte [ebx + 1]
cmp dl, 0x45
jne 0x46e1f4
cmp cl, 0x52
jne 0x46e1f4
cmp byte [ebx + 3], 0x53
jne 0x46e1f4
push str.ERSAnonymous
jmp 0x46de93
cmp al, 0x41
jne 0x46e228
cmp dl, 0x5a
jne 0x46e228
cmp cl, 0x32
jne 0x46e228
cmp byte [ebx + 3], 0x35
jne 0x46e228
cmp ch, 0x30
jne 0x46e228
cmp byte [ebx + 5], ch
jne 0x46e228
cmp byte [ebx + 6], 0x42
jne 0x46e228
cmp byte [ebx + 7], 0x54
jne 0x46e228
push str.BitTyrant
jmp 0x46de93
cmp al, 0x42
jne 0x46e249
cmp dl, 0x4c
jne 0x46e249
cmp cl, 0x5a
jne 0x46e249
movzx eax, ch
push eax
movzx eax, byte [ebx + 3]
push eax
push str.Blizzard__d._d
jmp 0x46e0cd
cmp al, 0x4d
jne 0x46e27b
cmp dl, 0x62
jne 0x46e27b
cmp cl, 0x72
jne 0x46e27b
cmp byte [ebx + 3], 0x73
jne 0x46e27b
cmp ch, 0x74
jne 0x46e27b
movzx eax, byte [ebx + 9]
push eax
movzx eax, byte [ebx + 7]
push eax
movzx eax, byte [ebx + 5]
push eax
push str.Burst___c._c._c
jmp 0x46dbc5
cmp al, 0x2d
jne 0x46e2db
cmp dl, 0x46
jne 0x46e2a4
cmp cl, 0x47
jne 0x46e2a4
lea eax, [ebx + 3]
push eax
call fcn.0065df72
push 0x64
pop ecx
cdq
idiv ecx
push edx
push eax
push str.FlashGet__u._u
jmp 0x46dbc5
cmp dl, 0x47
jne 0x46e2b8
cmp cl, 0x33
jne 0x46e2b8
push str.G3_Torrent
jmp 0x46de93
cmp dl, 0x4d
jne 0x46e2db
cmp cl, 0x4c
jne 0x46e2db
movzx eax, byte [ebx + 7]
push eax
movzx eax, byte [ebx + 5]
push eax
movzx eax, byte [ebx + 3]
push eax
push str.MLdonkey__c._c._c
jmp 0x46dbc5
cmp al, 0x4f
jne 0x46e300
cmp dl, 0x50
jne 0x46e300
movzx eax, byte [ebx + 5]
push eax
movzx eax, ch
push eax
movzx eax, byte [ebx + 3]
push eax
movzx eax, cl
push eax
push str.Opera__c_c_c_c
jmp 0x46e135
cmp al, 0x4c
jne 0x46e31e
cmp dl, 0x49
jne 0x46e31e
cmp cl, 0x4d
jne 0x46e31e
cmp byte [ebx + 3], 0x45
jne 0x46e31e
push str.Limewire
jmp 0x46de93
xor eax, eax
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], esi
mov word [ebp - 0x34], ax
mov dword [ebp - 4], esi
mov edi, esi
mov al, byte [edi + ebx]
test al, al
je 0x46e33f
movzx eax, al
jmp 0x46e342
push 0x20
pop eax
push eax
push 1
lea ecx, [ebp - 0x34]
call fcn.0043721b
inc edi
cmp edi, 0x14
jl 0x46e333
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x34]
push eax
call fcn.0042613c
push esi
push 1
lea ecx, [ebp - 0x34]
call fcn.004267c2
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc