Function at 0x803166
Capabilities:
Execute anti-debugging instructions

Disassembly:
add ecx, 0x901a3757
jmp 0x802bcd
add ecx, 0xc10ac99d
jmp 0x8031f3
mov dword [esp + 0x10], ebp
stc
jmp 0x802653
clc
popal
movzx edx, byte [ebx]
mov ebx, esi
lea ebx, [ecx + esi]
sub esp, 0x13
jmp 0x80269e
pushal
mov si, word [esp]
lea ecx, [ebx*4]
jmp 0x80261d
je 0x802628
clc
popal
jmp 0x80265d
movzx edx, byte [ebx]
mov ebx, esi
lea ebx, [ecx + esi]
jmp 0x802632
push esi
jmp 0x80289a
setge bl
lea esp, [esp + 3]
bsr ecx, esp
jl 0x802688
push esi
xchg ecx, ebx
setp bh
mov byte [esp + 2], cl
push word [esp + 1]
jmp 0x80270b
add dl, al
jb 0x8026e1
mov bl, 0xdd
mov cx, ax
cmc
neg ebx
jmp 0x8026ef
jmp 0x8026c9
mov bl, 0xdd
mov cx, ax
jmp 0x8026ec
cmc
neg ebx
mov cl, dl
jmp 0x802866
push word [esp + 1]
push dword [esp + 2]
push word [esp + 9]
jb 0x8026df
jae 0x8026df
mov ebx, edi
lea ebx, [ebx*4]
bts ebx, eax
mov bl, byte [esp]
jmp 0x802744
lea esp, [esp + 9]
lea esp, [esp + 3]
jmp 0x80280f
xchg dword [esp], edi
mov ebx, edx
or bl, cl
bsf ebx, ebx
mov bx, dx
jmp 0x80277a
push cx
pop dword [esp + 2]
sub ebx, esp
jmp 0x80272e
lea esp, [esp + 2]
xchg dword [esp], edi
mov bl, dl
dec ebx
mov ebx, 0xb49cd33a
jmp 0x802790
lea edi, reloc.WSOCK32.dll___WSAFDIsSet
mov ebx, dword [esp]
sub esp, 0
pushfd
pop word [esp]
bsf ebx, ebp
jmp 0x802764
lea ebx, [eax*4]
mov bl, 0x5a
push dword [esp]
ret 4
sub esp, 0xe
mov ebx, ecx
jmp 0x80275a
mov bx, word [esp]
not ebx
xor bl, 0xaa
pushal
push bp
lea esp, [esp + 2]
jmp 0x8027d4
mov bl, byte [esp]
rol cl, 0
sub bl, ch
je 0x8027ad
jne 0x8027ed
pushal
push bp
jmp 0x8027b9
lea esp, [esp + 0x20]
neg cl
not bx
mov ebx, dword [esp]
mov ebx, esi
jmp 0x8027f8
mov bx, word [esp]
not ebx
xor bl, 0xaa
jmp 0x8027cf
mov bx, 0x6ddf
lea ebx, [esi*4]
lea ebx, [eax + ebx]
jmp 0x80283a
rol cl, 0
not bh
lea ebx, reloc.WSOCK32.dll___WSAFDIsSet
mov ebx, 0xe29b6359
mov bh, byte [esp]
jmp 0x8027c3
mov bx, si
clc
mov ebx, dword [esp]
jmp 0x8028e3
mov bx, word [esp]
mov bh, al
neg cl
mov bh, byte [esp]
bsf bx, ax
jmp 0x80284f
jp 0x802824
mov bx, si
clc
jmp 0x802880
dec bx
jl 0x8027a6
sub esp, 0xe
mov ebx, ecx
push cx
pop dword [esp + 2]
sub ebx, esp
call 0x802718
mov ebx, dword [esp]
jmp 0x8028e3
xchg ecx, ebx
setp bh
mov byte [esp + 2], cl
jmp 0x802706
bts ebx, eax
setne bh
adc ebx, esp
jmp 0x8028c4
mov bx, 0xb597
jmp 0x8028a8
lea ebx, [ebp - 0x27]
add al, cl
push sp
lea esp, [esp + 2]
jmp 0x802a08
add dword [eax], eax
add byte [0x92670092], dl
and byte [ebp + 0x11e28717], dl
lodsd eax, dword [esi]
or ah, byte [ebp + 0x51c180d4]
add cl, 0x51
stc
jb 0x8028be
mov bx, 0xb597
bts ebx, eax
setne bh
adc ebx, esp
lea ebx, [ebp - 0x27]
jmp 0x8028c7
mov ch, byte [esp]
btr ecx, ecx
mov ebx, 0x4376e4af
not dl
jmp 0x802943
inc dl
not ch
jmp 0x80292d
add ch, dl
bts bx, bp
mov cx, 0xe5af
jmp 0x8028fa
mov ecx, esp
sub ebx, ebp
jl 0x80294b
btr cx, cx
call fcn.00802981
arpl word [esi], ax
cmc
inc esi
jbe 0x8028d1
lea ebx, [ecx + esi]
sbb al, 0x31
inc ecx
jge 0x802909
jl 0x802909
btr cx, cx
bsf ebx, ecx
lea ebx, reloc.WSOCK32.dll___WSAFDIsSet
jmp 0x8029e6
mov bx, di
jmp 0x802921
neg dl
call 0x8029ee
clc
mov ecx, dword [esp + 3]
lea ecx, reloc.WSOCK32.dll___WSAFDIsSet
mov cx, word [esp + 1]
pop word [esp]
jmp 0x802a3f
inc ebp
or cx, 0x3348
jbe 0x802966
mov bx, di
add ch, dl
bts bx, bp
mov cx, 0xe5af
mov ch, byte [esp]
jmp 0x8028fd
rol bh, cl
lea esp, [esp + 2]
jmp 0x802a50
add esp, 0
jg 0x802a29
rol bh, cl
lea esp, [esp + 2]
jmp 0x802a50
add dl, 0xde
setb bh
inc ecx
jo 0x802b58
jno 0x802ac2
adc dword [edx + esi + reloc.WSOCK32.dll___WSAFDIsSet], ebx
jmp 0x576b42e4
lea ecx, [ecx*4]
jmp 0x802aea
neg dl
setge bh
bts cx, bx
jns 0x802a80
fisttp word [ebp + 0x8d0c]
add byte [eax], al
lea ecx, [ecx*4]
mov ch, 0x64
jmp 0x802aec
mov dword [esp + 0x18], edx
bsr ebx, ebp
je 0x802acf
popal
jmp 0x802b0c
lea ebx, [ecx + ecx]
mov bh, 0x6b
mov cx, bx
jmp 0x802b60
popal
mov ebx, dword [esp]
bswap ebx
call int.00802b2d
add byte [esi + 0x2a9e6304], dl
xchg edx, eax
or ebx, dword [ebx + reloc.WSOCK32.dll___WSAFDIsSet]
cmp dword [eax], ebx
jnp 0x802aa0
mov ch, 0x64
pushal
pushal
mov bp, 0x286a
lea eax, [eax + edx]
jmp 0x802aac
jmp 0x802ba7
mov ebx, dword [esp]
bswap ebx
jmp 0x802af6
lea ebx, [ecx + ecx]
mov bh, 0x6b
mov cx, bx
jmp 0x802a96
mov bx, 0x9cfc
jmp 0x802561
shl ecx, 2
setnp bh
mov ebx, dword [esp]
btc ebx, esi
jo 0x802b91
jno 0x802be6
setne bl
jmp 0x802bef
ror bl, 3
jl 0x802bb7
setne bl
jmp 0x802bef
mov bx, 0x9cfc
jmp 0x802561
mov ecx, dword [ecx + reloc.WSOCK32.dll___WSAFDIsSet]
mov bl, 0xa2
sub esp, 0xf
jmp 0x803856
lea ebx, [esi*4]
lea esp, [esp + 3]
jmp 0x802579
je 0x80311d
not ebx
jmp 0x80311f
not ebx
call fcn.00802d05
rol dl, 0
mov cl, 0x56
sub esp, 2
jl 0x803159
jge 0x80313f
int 0x49
fnstcw word [eax - 0x749705b5]
and bl, byte [ebp - 0x76]
cmp al, 0x24
jmp 0x803124
lea ebx, reloc.WSOCK32.dll___WSAFDIsSet
call fcn.008031b6
test eax, 0x36dbbc2e
test byte [ecx + 0x45b6d343], bh
int1
xchg byte [ecx], dh
lea ebx, reloc.WSOCK32.dll___WSAFDIsSet
call 0x803166
xor byte [ebp - 0x7cfddb9c], cl
loop 0x8031a9
jmp 0x8031fb
jmp 0x8031cf
mov word [esp + 1], si
mov bh, 0xa9
lea esp, [esp + 1]
xchg dword [esp + 0x10], ecx
call fcn.0080355a
ja 0x8031e4
add byte [eax], al
lodsd eax, dword es:[esi]
lodsd eax, dword [esi]
cmp eax, 0x300bb744
mov esi, 0x70c64b2c
setbe byte [ecx]
rol byte [eax + 0x35e912e3], 0xfd
invalid
and bl, 0x12
jmp 0x802f30
mov ecx, dword [esp]
mov bx, si
mov cl, 0x2e
lea ecx, [edi - 0x29]
mov ebx, dword [edi]
jmp 0x803383
lea edx, [eax*4]
jmp 0x803249
neg ecx
lea edx, [eax*4]
adc al, 0x85
add byte [eax], al
add byte [eax], al
add edi, 4
rcr ebx, 0x1f
jo 0x80326e
jno 0x803276
in al, dx
jge 0x803243
je 0x8031df
xor al, 0xde
dec esi
fdivr qword [ebx - 0x59a01faa]
rcl dword [eax - 0x2d]
mov dword [edx + esi], ebx
inc ecx
je 0x803240
neg ecx
jmp 0x80322a
xchg ch, cl
jmp 0x8032d9
xchg ch, cl
lea edx, [edi*4]
jmp fcn.00802645
jmp 0x803264
lea edx, [edi*4]
jmp fcn.00802645
lea ecx, reloc.WSOCK32.dll___WSAFDIsSet
mov ecx, 0x457cef09
bswap ecx
btr cx, bp
ja 0x803297
jbe 0x803297
jbe 0x802c00
lea ebx, [esi*4]
lea esp, [esp + 3]
jmp 0x802579