Function at 0x46fdf3
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x6a705e
call fcn.00640244
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 0x4703a9
mov cl, byte [ebx + 6]
cmp cl, dl
je 0x46fe28
cmp byte [ebx + 7], dl
jne 0x4703a9
movzx edx, byte [ebx + 1]
movzx edi, byte [ebx + 2]
mov eax, edx
shl eax, 8
add eax, edi
cmp eax, 0x4c57
ja 0x4700b0
je 0x4700a6
cmp eax, 0x4253
ja 0x46ff7b
je 0x46ff71
mov esi, 0x4242
cmp eax, esi
ja 0x46fec6
je 0x46febc
sub eax, 0x4147
je 0x46fe8a
sub eax, 0xb
je 0x46feb2
sub eax, 4
je 0x46fea8
dec eax
sub eax, 1
je 0x46fe9e
dec eax
sub eax, 1
je 0x46fe94
sub eax, 0x24
jne 0x4702db
mov esi, str.Ares
jmp 0x47031d
mov esi, str.Azureus
jmp 0x47031d
mov esi, str.BitPump
jmp 0x47031d
mov esi, str.Avicora
jmp 0x47031d
mov esi, str.Arctic
jmp 0x47031d
mov esi, str.BitBuddy
jmp 0x47031d
sub eax, 0x4243
je 0x46ff67
dec eax
sub eax, 1
je 0x46ff5d
sub eax, 1
je 0x46ff53
sub eax, 1
je 0x46ff49
sub eax, 8
je 0x46fefd
sub eax, 3
jne 0x4702db
mov esi, str.BitRocket
jmp 0x47031d
mov dl, byte [ebx + 4]
cmp dl, 0x41
jne 0x46ff27
cmp byte [ebx + 5], 0x30
jne 0x46ff27
movzx eax, cl
sub eax, 0x3d
push eax
push str.Bits_on_Wheels_1.0._d
push dword [ebp + 8]
call fcn.004654e1
add esp, 0xc
jmp 0x4706de
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.004654e1
add esp, 0x14
jmp 0x4706de
mov esi, 0x6cee80
jmp 0x47031d
mov esi, str.Bitflu
jmp 0x47031d
mov esi, str.BitTorrent_SDK
jmp 0x47031d
mov esi, str.BitComet
jmp 0x47031d
mov esi, str.BitSlave
jmp 0x47031d
mov ecx, 0x4654
cmp eax, ecx
ja 0x470041
je 0x46fff0
sub eax, 0x4258
je 0x46ffe6
sub eax, 0xec
je 0x46ffdc
sub eax, 0x10
je 0x46ffd2
sub eax, 0xf1
je 0x46ffc8
sub eax, 0xfd
je 0x46ffbe
sub eax, 0x11
jne 0x4702db
mov esi, str.electric_sheep
jmp 0x47031d
mov esi, str.EBit
jmp 0x47031d
mov esi, str.DelugeTorrent
jmp 0x47031d
mov esi, str.CTorrent
jmp 0x47031d
mov esi, str.Enhanced_CTorrent
jmp 0x47031d
mov esi, str.Bittorrent_X
jmp 0x47031d
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 0x47000d
lea eax, [ecx - 0x30]
mov word [ebp + esi*2 - 0x1c], ax
inc esi
cmp esi, 4
jl 0x46fff3
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.004654e1
add esp, 0x1c
jmp 0x4706de
sub eax, 0x4845
je 0x47009c
sub eax, 7
je 0x470092
dec eax
sub eax, 1
je 0x470088
sub eax, 0x306
je 0x47007e
sub eax, 0xfc
je 0x470074
sub eax, 4
jne 0x4702db
mov esi, str.libtorrent
jmp 0x47031d
mov esi, str.Lphant
jmp 0x47031d
mov esi, str.KTorrent
jmp 0x47031d
mov esi, str.Hydranode
jmp 0x47031d
mov esi, str.Halite
jmp 0x47031d
mov esi, str.Helix
jmp 0x47031d
mov esi, str.LimeWire
jmp 0x47031d
mov ecx, 0x5453
cmp eax, ecx
ja 0x4701a4
je 0x47019a
mov ecx, 0x5344
cmp eax, ecx
ja 0x470138
je 0x470318
sub eax, 0x4d50
je 0x47012e
dec eax
sub eax, 1
je 0x470124
dec eax
sub eax, 1
je 0x47011a
sub eax, 0x3f0
je 0x470110
sub eax, 0x10
je 0x470106
sub eax, 0x100
jne 0x4702db
mov esi, str.Retriever
jmp 0x47031d
mov esi, str.Qt_4_Torrent_Example
jmp 0x47031d
mov esi, str.QQDownload
jmp 0x47031d
mov esi, str.MoonlightTorrent
jmp 0x47031d
mov esi, str.Miro
jmp 0x47031d
mov esi, str.MooPolice
jmp 0x47031d
sub eax, 0x5347
je 0x470190
sub eax, 0xc
je 0x470186
sub eax, 7
je 0x47017c
sub eax, 0x24
je 0x470172
sub eax, 0xd0
je 0x470168
sub eax, 4
jne 0x4702db
mov esi, str.Transmission
jmp 0x47031d
mov esi, str.Torrent_.NET
jmp 0x47031d
mov esi, str.Shareaza_alpha_beta
jmp 0x47031d
mov esi, str.Shareaza
jmp 0x47031d
mov esi, str.SwarmScope
jmp 0x47031d
mov esi, str.SG_Torrent
jmp 0x47031d
mov esi, str.TorrentStorm
jmp 0x47031d
mov ecx, 0x5759
cmp eax, ecx
ja 0x4702b5
je 0x4702ae
sub eax, 0x5454
je 0x4702a7
sub eax, 0xf1
je 0x4702a0
sub eax, 7
je 0x470299
sub eax, 1
je 0x47028f
sub eax, 7
je 0x4701f9
sub eax, 0xf3
jne 0x4702db
mov esi, str.Vagaa
jmp 0x47031d
cmp dword [ebx + 0x10], 0x30504455
jne 0x470214
push str._FAKE__BitSpirit
mov ecx, dword [ebp + 8]
call fcn.00429973
jmp 0x4706de
movzx ecx, byte [ebx + 3]
mov esi, 0x6c2294
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 0x47024b
cmp byte [ebp + 0x10], 0
je 0x47024b
mov esi, 0x6cf268
jmp 0x47031d
cmp ecx, 0x313332
jb 0x47026b
push ebx
call fcn.00470b63
test al, al
jne 0x470320
mov esi, str._FAKE__uTorrent
jmp 0x47031d
cmp ecx, eax
jb 0x470320
mov ax, word [ebx + 8]
mov ecx, 0x3fff
and ax, cx
mov ecx, 0x1f4
cmp ax, cx
jbe 0x470320
jmp 0x470241
mov esi, str.uTorrent_Mac
jmp 0x47031d
mov esi, str.uLeecher
jmp 0x47031d
mov esi, str.uTorrent_Embedded
jmp 0x47031d
mov esi, str.TuoTu
jmp 0x47031d
mov esi, str.Wyzo
jmp 0x47031d
sub eax, 0x584c
je 0x470318
sub eax, 8
je 0x470311
sub eax, 4
je 0x47030a
sub eax, 0x1fc
je 0x470303
sub eax, 0x1220
je 0x4702fc
sub eax, 0x4ce
je 0x4702f5
push edi
push edx
push str.Unknown__c_c
lea eax, [ebp - 0x5c]
push 0x14
push eax
call fcn.00464914
add esp, 0x14
lea esi, [ebp - 0x5c]
jmp 0x47031d
mov esi, str.qBittorrent
jmp 0x47031d
mov esi, str.libTorrent
jmp 0x47031d
mov esi, str.ZipTorrent
jmp 0x47031d
mov esi, str.Xtorrent
jmp 0x47031d
mov esi, str.XanTorrent
jmp 0x47031d
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.0066f6f2
pop ecx
test eax, eax
je 0x470387
movzx ecx, byte [esi]
mov word [edi], cx
lea eax, [ecx - 0x30]
cmp ax, bx
ja 0x47035b
lea eax, [ecx - 0x30]
jmp 0x470376
push 0x19
lea eax, [ecx - 0x41]
pop edx
cmp ax, dx
ja 0x47036b
lea eax, [ecx - 0x37]
jmp 0x470376
lea eax, [ecx - 0x61]
cmp ax, dx
ja 0x470379
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 0x47033a
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 0x470031
mov ch, byte [ebx + 4]
cmp ch, dl
jne 0x470451
cmp byte [ebx + 5], dl
jne 0x470451
movzx ecx, al
mov eax, ecx
sub eax, 0x41
je 0x47041c
sub eax, 0xe
je 0x470415
sub eax, 3
je 0x47040e
sub eax, 1
je 0x470407
sub eax, 1
je 0x470400
sub eax, 1
je 0x4703f9
push ecx
push str.Unknown__c
lea eax, [ebp - 0x5c]
push 0x14
push eax
call fcn.00464914
add esp, 0x10
lea ecx, [ebp - 0x5c]
jmp 0x470421
mov ecx, 0x6cf3b4
jmp 0x470421
mov ecx, str.BitTornado
jmp 0x470421
mov ecx, str.Shadow
jmp 0x470421
mov ecx, str.Tribler
jmp 0x470421
mov ecx, str.Osprey_Permaseed
jmp 0x470421
mov ecx, 0x6cf350
movzx eax, byte [ebx + esi + 1]
mov word [ebp + esi*2 - 0x1c], ax
inc esi
cmp esi, 4
jl 0x470421
xor eax, eax
mov word [ebp - 0x16], ax
lea eax, [ebp - 0x1c]
push eax
push ecx
push 0x6cf3d8
push dword [ebp + 8]
call fcn.004654e1
add esp, 0x10
jmp 0x4706de
cmp al, 0x4d
jne 0x4704b9
mov cl, byte [ebx + 2]
cmp cl, dl
jne 0x4704b9
cmp ch, dl
jne 0x470483
cmp byte [ebx + 6], dl
jne 0x470483
cmp byte [ebx + 7], dl
jne 0x470483
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 0x46ff39
cmp cl, dl
jne 0x4704b9
cmp byte [ebx + 5], dl
jne 0x4704b9
cmp byte [ebx + 7], dl
jne 0x4704b9
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.004654e1
add esp, 0x18
jmp 0x4706de
cmp al, 0x65
jne 0x470505
cmp byte [ebx + 1], 0x78
jne 0x470505
cmp byte [ebx + 2], 0x62
jne 0x470505
cmp byte [ebx + 3], 0x63
jne 0x470505
cmp byte [ebx + 6], 0x4c
jne 0x4704ec
cmp byte [ebx + 7], 0x4f
jne 0x4704ec
cmp byte [ebx + 8], 0x52
jne 0x4704ec
cmp byte [ebx + 9], 0x44
mov edx, str.BitLord
je 0x4704f1
mov edx, str.BitComet
movzx eax, byte [ebx + 5]
push eax
movzx eax, ch
push eax
push edx
push str._s__i._i
jmp 0x46ff39
mov cl, byte [ebx + 2]
cmp cl, 0x42
jne 0x47054b
cmp byte [ebx + 3], 0x53
jne 0x47054b
cmp dword [ebx + 0x10], 0x30504455
jne 0x470526
push str.BitSpirit_v2_UDP0
jmp 0x470207
cmp dword [ebx + 0xe], 0x50545448
jne 0x470541
cmp word [ebx + 0x12], 0x5442
jne 0x470541
push str.BitSpirit_v2_HTTPBT
jmp 0x470207
push str.Unknown_BitSpirit
jmp 0x470207
mov dl, byte [ebx + 1]
cmp dl, 0x45
jne 0x470568
cmp cl, 0x52
jne 0x470568
cmp byte [ebx + 3], 0x53
jne 0x470568
push str.ERSAnonymous
jmp 0x470207
cmp al, 0x41
jne 0x47059c
cmp dl, 0x5a
jne 0x47059c
cmp cl, 0x32
jne 0x47059c
cmp byte [ebx + 3], 0x35
jne 0x47059c
cmp ch, 0x30
jne 0x47059c
cmp byte [ebx + 5], ch
jne 0x47059c
cmp byte [ebx + 6], 0x42
jne 0x47059c
cmp byte [ebx + 7], 0x54
jne 0x47059c
push str.BitTyrant
jmp 0x470207
cmp al, 0x42
jne 0x4705bd
cmp dl, 0x4c
jne 0x4705bd
cmp cl, 0x5a
jne 0x4705bd
movzx eax, ch
push eax
movzx eax, byte [ebx + 3]
push eax
push str.Blizzard__d._d
jmp 0x470441
cmp al, 0x4d
jne 0x4705ef
cmp dl, 0x62
jne 0x4705ef
cmp cl, 0x72
jne 0x4705ef
cmp byte [ebx + 3], 0x73
jne 0x4705ef
cmp ch, 0x74
jne 0x4705ef
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 0x46ff39
cmp al, 0x2d
jne 0x47064f
cmp dl, 0x46
jne 0x470618
cmp cl, 0x47
jne 0x470618
lea eax, [ebx + 3]
push eax
call fcn.00666c12
push 0x64
pop ecx
cdq
idiv ecx
push edx
push eax
push str.FlashGet__u._u
jmp 0x46ff39
cmp dl, 0x47
jne 0x47062c
cmp cl, 0x33
jne 0x47062c
push str.G3_Torrent
jmp 0x470207
cmp dl, 0x4d
jne 0x47064f
cmp cl, 0x4c
jne 0x47064f
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 0x46ff39
cmp al, 0x4f
jne 0x470674
cmp dl, 0x50
jne 0x470674
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 0x4704a9
cmp al, 0x4c
jne 0x470692
cmp dl, 0x49
jne 0x470692
cmp cl, 0x4d
jne 0x470692
cmp byte [ebx + 3], 0x45
jne 0x470692
push str.Limewire
jmp 0x470207
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 0x4706b3
movzx eax, al
jmp 0x4706b6
push 0x20
pop eax
push eax
push 1
lea ecx, [ebp - 0x34]
call fcn.00438c5c
inc edi
cmp edi, 0x14
jl 0x4706a7
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x34]
push eax
call fcn.00427b6c
push esi
push 1
lea ecx, [ebp - 0x34]
call fcn.004281f2
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