Function at 0x470af7
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x6b8072
call fcn.006426c4
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 0x4710ad
mov cl, byte [ebx + 6]
cmp cl, dl
je 0x470b2c
cmp byte [ebx + 7], dl
jne 0x4710ad
movzx edx, byte [ebx + 1]
movzx edi, byte [ebx + 2]
mov eax, edx
shl eax, 8
add eax, edi
cmp eax, 0x4c57
ja 0x470db4
je 0x470daa
cmp eax, 0x4253
ja 0x470c7f
je 0x470c75
mov esi, 0x4242
cmp eax, esi
ja 0x470bca
je 0x470bc0
sub eax, 0x4147
je 0x470b8e
sub eax, 0xb
je 0x470bb6
sub eax, 4
je 0x470bac
dec eax
sub eax, 1
je 0x470ba2
dec eax
sub eax, 1
je 0x470b98
sub eax, 0x24
jne 0x470fdf
mov esi, str.Ares
jmp 0x471021
mov esi, str.Azureus
jmp 0x471021
mov esi, str.BitPump
jmp 0x471021
mov esi, str.Avicora
jmp 0x471021
mov esi, str.Arctic
jmp 0x471021
mov esi, str.BitBuddy
jmp 0x471021
sub eax, 0x4243
je 0x470c6b
dec eax
sub eax, 1
je 0x470c61
sub eax, 1
je 0x470c57
sub eax, 1
je 0x470c4d
sub eax, 8
je 0x470c01
sub eax, 3
jne 0x470fdf
mov esi, str.BitRocket
jmp 0x471021
mov dl, byte [ebx + 4]
cmp dl, 0x41
jne 0x470c2b
cmp byte [ebx + 5], 0x30
jne 0x470c2b
movzx eax, cl
sub eax, 0x3d
push eax
push str.Bits_on_Wheels_1.0._d
push dword [ebp + 8]
call fcn.00465d7f
add esp, 0xc
jmp 0x4713e2
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.00465d7f
add esp, 0x14
jmp 0x4713e2
mov esi, 0x6d1f20
jmp 0x471021
mov esi, str.Bitflu
jmp 0x471021
mov esi, str.BitTorrent_SDK
jmp 0x471021
mov esi, str.BitComet
jmp 0x471021
mov esi, str.BitSlave
jmp 0x471021
mov ecx, 0x4654
cmp eax, ecx
ja 0x470d45
je 0x470cf4
sub eax, 0x4258
je 0x470cea
sub eax, 0xec
je 0x470ce0
sub eax, 0x10
je 0x470cd6
sub eax, 0xf1
je 0x470ccc
sub eax, 0xfd
je 0x470cc2
sub eax, 0x11
jne 0x470fdf
mov esi, str.electric_sheep
jmp 0x471021
mov esi, str.EBit
jmp 0x471021
mov esi, str.DelugeTorrent
jmp 0x471021
mov esi, str.CTorrent
jmp 0x471021
mov esi, str.Enhanced_CTorrent
jmp 0x471021
mov esi, str.Bittorrent_X
jmp 0x471021
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 0x470d11
lea eax, [ecx - 0x30]
mov word [ebp + esi*2 - 0x1c], ax
inc esi
cmp esi, 4
jl 0x470cf7
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.00465d7f
add esp, 0x1c
jmp 0x4713e2
sub eax, 0x4845
je 0x470da0
sub eax, 7
je 0x470d96
dec eax
sub eax, 1
je 0x470d8c
sub eax, 0x306
je 0x470d82
sub eax, 0xfc
je 0x470d78
sub eax, 4
jne 0x470fdf
mov esi, str.libtorrent
jmp 0x471021
mov esi, str.Lphant
jmp 0x471021
mov esi, str.KTorrent
jmp 0x471021
mov esi, str.Hydranode
jmp 0x471021
mov esi, str.Halite
jmp 0x471021
mov esi, str.Helix
jmp 0x471021
mov esi, str.LimeWire
jmp 0x471021
mov ecx, 0x5453
cmp eax, ecx
ja 0x470ea8
je 0x470e9e
mov ecx, 0x5344
cmp eax, ecx
ja 0x470e3c
je 0x47101c
sub eax, 0x4d50
je 0x470e32
dec eax
sub eax, 1
je 0x470e28
dec eax
sub eax, 1
je 0x470e1e
sub eax, 0x3f0
je 0x470e14
sub eax, 0x10
je 0x470e0a
sub eax, 0x100
jne 0x470fdf
mov esi, str.Retriever
jmp 0x471021
mov esi, str.Qt_4_Torrent_Example
jmp 0x471021
mov esi, str.QQDownload
jmp 0x471021
mov esi, str.MoonlightTorrent
jmp 0x471021
mov esi, str.Miro
jmp 0x471021
mov esi, str.MooPolice
jmp 0x471021
sub eax, 0x5347
je 0x470e94
sub eax, 0xc
je 0x470e8a
sub eax, 7
je 0x470e80
sub eax, 0x24
je 0x470e76
sub eax, 0xd0
je 0x470e6c
sub eax, 4
jne 0x470fdf
mov esi, str.Transmission
jmp 0x471021
mov esi, str.Torrent_.NET
jmp 0x471021
mov esi, str.Shareaza_alpha_beta
jmp 0x471021
mov esi, str.Shareaza
jmp 0x471021
mov esi, str.SwarmScope
jmp 0x471021
mov esi, str.SG_Torrent
jmp 0x471021
mov esi, str.TorrentStorm
jmp 0x471021
mov ecx, 0x5759
cmp eax, ecx
ja 0x470fb9
je 0x470fb2
sub eax, 0x5454
je 0x470fab
sub eax, 0xf1
je 0x470fa4
sub eax, 7
je 0x470f9d
sub eax, 1
je 0x470f93
sub eax, 7
je 0x470efd
sub eax, 0xf3
jne 0x470fdf
mov esi, str.Vagaa
jmp 0x471021
cmp dword [ebx + 0x10], 0x30504455
jne 0x470f18
push str._FAKE__BitSpirit
mov ecx, dword [ebp + 8]
call fcn.00429d77
jmp 0x4713e2
movzx ecx, byte [ebx + 3]
mov esi, 0x6c5314
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 0x470f4f
cmp byte [ebp + 0x10], 0
je 0x470f4f
mov esi, 0x6d2308
jmp 0x471021
cmp ecx, 0x313332
jb 0x470f6f
push ebx
call fcn.00471867
test al, al
jne 0x471024
mov esi, str._FAKE__uTorrent
jmp 0x471021
cmp ecx, eax
jb 0x471024
mov ax, word [ebx + 8]
mov ecx, 0x3fff
and ax, cx
mov ecx, 0x1f4
cmp ax, cx
jbe 0x471024
jmp 0x470f45
mov esi, str.uTorrent_Mac
jmp 0x471021
mov esi, str.uLeecher
jmp 0x471021
mov esi, str.uTorrent_Embedded
jmp 0x471021
mov esi, str.TuoTu
jmp 0x471021
mov esi, str.Wyzo
jmp 0x471021
sub eax, 0x584c
je 0x47101c
sub eax, 8
je 0x471015
sub eax, 4
je 0x47100e
sub eax, 0x1fc
je 0x471007
sub eax, 0x1220
je 0x471000
sub eax, 0x4ce
je 0x470ff9
push edi
push edx
push str.Unknown__c_c
lea eax, [ebp - 0x5c]
push 0x14
push eax
call fcn.004651b2
add esp, 0x14
lea esi, [ebp - 0x5c]
jmp 0x471021
mov esi, str.qBittorrent
jmp 0x471021
mov esi, str.libTorrent
jmp 0x471021
mov esi, str.ZipTorrent
jmp 0x471021
mov esi, str.Xtorrent
jmp 0x471021
mov esi, str.XanTorrent
jmp 0x471021
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.00671b41
pop ecx
test eax, eax
je 0x47108b
movzx ecx, byte [esi]
mov word [edi], cx
lea eax, [ecx - 0x30]
cmp ax, bx
ja 0x47105f
lea eax, [ecx - 0x30]
jmp 0x47107a
push 0x19
lea eax, [ecx - 0x41]
pop edx
cmp ax, dx
ja 0x47106f
lea eax, [ecx - 0x37]
jmp 0x47107a
lea eax, [ecx - 0x61]
cmp ax, dx
ja 0x47107d
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 0x47103e
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 0x470d35
mov ch, byte [ebx + 4]
cmp ch, dl
jne 0x471155
cmp byte [ebx + 5], dl
jne 0x471155
movzx ecx, al
mov eax, ecx
sub eax, 0x41
je 0x471120
sub eax, 0xe
je 0x471119
sub eax, 3
je 0x471112
sub eax, 1
je 0x47110b
sub eax, 1
je 0x471104
sub eax, 1
je 0x4710fd
push ecx
push str.Unknown__c
lea eax, [ebp - 0x5c]
push 0x14
push eax
call fcn.004651b2
add esp, 0x10
lea ecx, [ebp - 0x5c]
jmp 0x471125
mov ecx, 0x6d2454
jmp 0x471125
mov ecx, str.BitTornado
jmp 0x471125
mov ecx, str.Shadow
jmp 0x471125
mov ecx, str.Tribler
jmp 0x471125
mov ecx, str.Osprey_Permaseed
jmp 0x471125
mov ecx, 0x6d23f0
movzx eax, byte [ebx + esi + 1]
mov word [ebp + esi*2 - 0x1c], ax
inc esi
cmp esi, 4
jl 0x471125
xor eax, eax
mov word [ebp - 0x16], ax
lea eax, [ebp - 0x1c]
push eax
push ecx
push 0x6d2478
push dword [ebp + 8]
call fcn.00465d7f
add esp, 0x10
jmp 0x4713e2
cmp al, 0x4d
jne 0x4711bd
mov cl, byte [ebx + 2]
cmp cl, dl
jne 0x4711bd
cmp ch, dl
jne 0x471187
cmp byte [ebx + 6], dl
jne 0x471187
cmp byte [ebx + 7], dl
jne 0x471187
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 0x470c3d
cmp cl, dl
jne 0x4711bd
cmp byte [ebx + 5], dl
jne 0x4711bd
cmp byte [ebx + 7], dl
jne 0x4711bd
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.00465d7f
add esp, 0x18
jmp 0x4713e2
cmp al, 0x65
jne 0x471209
cmp byte [ebx + 1], 0x78
jne 0x471209
cmp byte [ebx + 2], 0x62
jne 0x471209
cmp byte [ebx + 3], 0x63
jne 0x471209
cmp byte [ebx + 6], 0x4c
jne 0x4711f0
cmp byte [ebx + 7], 0x4f
jne 0x4711f0
cmp byte [ebx + 8], 0x52
jne 0x4711f0
cmp byte [ebx + 9], 0x44
mov edx, str.BitLord
je 0x4711f5
mov edx, str.BitComet
movzx eax, byte [ebx + 5]
push eax
movzx eax, ch
push eax
push edx
push str._s__i._i
jmp 0x470c3d
mov cl, byte [ebx + 2]
cmp cl, 0x42
jne 0x47124f
cmp byte [ebx + 3], 0x53
jne 0x47124f
cmp dword [ebx + 0x10], 0x30504455
jne 0x47122a
push str.BitSpirit_v2_UDP0
jmp 0x470f0b
cmp dword [ebx + 0xe], 0x50545448
jne 0x471245
cmp word [ebx + 0x12], 0x5442
jne 0x471245
push str.BitSpirit_v2_HTTPBT
jmp 0x470f0b
push str.Unknown_BitSpirit
jmp 0x470f0b
mov dl, byte [ebx + 1]
cmp dl, 0x45
jne 0x47126c
cmp cl, 0x52
jne 0x47126c
cmp byte [ebx + 3], 0x53
jne 0x47126c
push str.ERSAnonymous
jmp 0x470f0b
cmp al, 0x41
jne 0x4712a0
cmp dl, 0x5a
jne 0x4712a0
cmp cl, 0x32
jne 0x4712a0
cmp byte [ebx + 3], 0x35
jne 0x4712a0
cmp ch, 0x30
jne 0x4712a0
cmp byte [ebx + 5], ch
jne 0x4712a0
cmp byte [ebx + 6], 0x42
jne 0x4712a0
cmp byte [ebx + 7], 0x54
jne 0x4712a0
push str.BitTyrant
jmp 0x470f0b
cmp al, 0x42
jne 0x4712c1
cmp dl, 0x4c
jne 0x4712c1
cmp cl, 0x5a
jne 0x4712c1
movzx eax, ch
push eax
movzx eax, byte [ebx + 3]
push eax
push str.Blizzard__d._d
jmp 0x471145
cmp al, 0x4d
jne 0x4712f3
cmp dl, 0x62
jne 0x4712f3
cmp cl, 0x72
jne 0x4712f3
cmp byte [ebx + 3], 0x73
jne 0x4712f3
cmp ch, 0x74
jne 0x4712f3
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 0x470c3d
cmp al, 0x2d
jne 0x471353
cmp dl, 0x46
jne 0x47131c
cmp cl, 0x47
jne 0x47131c
lea eax, [ebx + 3]
push eax
call fcn.006690e2
push 0x64
pop ecx
cdq
idiv ecx
push edx
push eax
push str.FlashGet__u._u
jmp 0x470c3d
cmp dl, 0x47
jne 0x471330
cmp cl, 0x33
jne 0x471330
push str.G3_Torrent
jmp 0x470f0b
cmp dl, 0x4d
jne 0x471353
cmp cl, 0x4c
jne 0x471353
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 0x470c3d
cmp al, 0x4f
jne 0x471378
cmp dl, 0x50
jne 0x471378
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 0x4711ad
cmp al, 0x4c
jne 0x471396
cmp dl, 0x49
jne 0x471396
cmp cl, 0x4d
jne 0x471396
cmp byte [ebx + 3], 0x45
jne 0x471396
push str.Limewire
jmp 0x470f0b
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 0x4713b7
movzx eax, al
jmp 0x4713ba
push 0x20
pop eax
push eax
push 1
lea ecx, [ebp - 0x34]
call fcn.00439096
inc edi
cmp edi, 0x14
jl 0x4713ab
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x34]
push eax
call fcn.00427f9c
push esi
push 1
lea ecx, [ebp - 0x34]
call fcn.004285f6
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