Function at 0x42ebe0
Capabilities:
Inspect section memory permissions

Disassembly:
sub esp, 0x24
mov eax, dword [0x64786c]
xor eax, esp
mov dword [esp + 0x20], eax
xor eax, eax
push ebx
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov byte [esp + 0x14], bl
mov dword [esp + 0x15], eax
mov dword [esp + 0x19], eax
mov dword [esp + 0x1d], eax
mov word [esp + 0x21], ax
mov byte [esp + 0x23], al
call fcn.0054e590
test eax, eax
jne 0x42ec35
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.0059709c
add esp, 0x24
ret
push edi
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x14]
push eax
push ebx
call fcn.0054e5a0
mov eax, dword [esp + 0x1c]
add esp, 0x14
mov edi, eax
cmp eax, ebx
je 0x42ec87
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x14]
push ecx
push 1
call fcn.0054e5a0
mov ebx, dword [esp + 0x24]
add esp, 0x14
test ebx, 0x800000
jne 0x42ec9a
pop edi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.0059709c
add esp, 0x24
ret
push ebp
mov ebp, 1
test ebx, 0x2000000
je 0x42ecad
mov ebp, 7
test ebx, 0x4000000
je 0x42ecb8
or ebp, 8
test bl, 1
je 0x42ecc3
or ebp, 0x1000
test ebx, 0x8000
je 0x42ecd1
or ebp, 0x4000
mov ecx, str.GenuineIntel
lea eax, [esp + 0x1c]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42ed00
test dl, dl
je 0x42ecfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42ed00
add eax, 2
add ecx, 2
test dl, dl
jne 0x42ece0
xor eax, eax
jmp 0x42ed05
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x42ed3b
mov ecx, str.AuthenticAMD
lea eax, [esp + 0x1c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42ed32
test dl, dl
je 0x42ed2e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42ed32
add eax, 2
add ecx, 2
test dl, dl
jne 0x42ed12
xor eax, eax
jmp 0x42ed37
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x42ed49
test ebx, 0x10000000
je 0x42ed49
or ebp, 0x2000
mov eax, dword [esp + 0x10]
test al, 1
je 0x42ed54
or ebp, 0x10
test eax, 0x200
je 0x42ed61
or ebp, 0x200
test eax, 0x80000
je 0x42ed6b
or ebp, 0x20
test eax, 0x100000
je 0x42ed78
or ebp, 0x400
mov edx, dword [esp + 0xc]
push eax
push edx
call fcn.0054e5d0
add esp, 8
test eax, eax
je 0x42ed90
or ebp, 0x800
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
push eax
push ecx
call fcn.0054e610
add esp, 8
test eax, eax
je 0x42edac
or ebp, 0x20000
mov eax, dword [esp + 0x10]
test eax, 0x2000000
je 0x42edbd
or ebp, 0x10000
test eax, 0x400000
je 0x42edca
or ebp, 0x8000
cmp edi, 7
jb 0x42edf5
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x18]
push edx
push 7
mov dword [esp + 0x24], 0
call fcn.0054e5a0
add esp, 0x14
test esi, esi
je 0x42ee82
test ebp, 0x2000
je 0x42ee15
mov eax, dword [esp + 0x18]
shr eax, 0x10
and eax, 0xff
mov dword [esi], eax
jmp 0x42ee1b
mov dword [esi], 0
mov ecx, str.GenuineIntel
lea eax, [esp + 0x1c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42ee44
test dl, dl
je 0x42ee40
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42ee44
add eax, 2
add ecx, 2
test dl, dl
jne 0x42ee24
xor eax, eax
jmp 0x42ee49
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x42ee82
cmp edi, 4
jb 0x42ee82
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x18], eax
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x18]
push ecx
push 4
call fcn.0054e5a0
mov eax, dword [esp + 0x20]
add esp, 0x14
test eax, eax
je 0x42ee82
shr eax, 0x1a
inc eax
mov dword [esi], eax
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x18]
push edx
push connect
call fcn.0054e5a0
add esp, 0x14
mov ecx, str.AuthenticAMD
lea eax, [esp + 0x1c]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42eed0
test dl, dl
je 0x42eecc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42eed0
add eax, 2
add ecx, 2
test dl, dl
jne 0x42eeb0
xor eax, eax
jmp 0x42eed5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x42ef19
cmp dword [esp + 0xc], reloc.WS2_32.dll_accept
jb 0x42ef19
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x18]
push eax
push reloc.WS2_32.dll_accept
call fcn.0054e5a0
mov eax, dword [esp + 0x28]
add esp, 0x14
test eax, 0x400000
je 0x42ef12
or ebp, 2
test eax, eax
jns 0x42ef19
or ebp, 0x40
mov ecx, str.GenuineIntel
lea eax, [esp + 0x1c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42ef42
test dl, dl
je 0x42ef3e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42ef42
add eax, 2
add ecx, 2
test dl, dl
jne 0x42ef22
xor eax, eax
jmp 0x42ef47
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x42efac
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x18]
push ecx
push 1
call fcn.0054e5a0
mov eax, dword [esp + 0x20]
mov ecx, eax
mov edx, eax
shr edx, 4
and edx, 0xf
shr ecx, 0xc
and ecx, 0xf0
add ecx, edx
mov edx, eax
shr edx, 0x14
shr eax, 8
and edx, 0xff
and eax, 0xf
add edx, eax
add esp, 0x14
cmp edx, 6
jne 0x42efac
cmp ecx, 9
je 0x42efa9
cmp ecx, 0xd
je 0x42efa9
cmp ecx, 0xe
jne 0x42efac
and ebp, 0xffffffe7
mov ecx, str.GenuineIntel
lea eax, [esp + 0x1c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42efd5
test dl, dl
je 0x42efd1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42efd5
add eax, 2
add ecx, 2
test dl, dl
jne 0x42efb5
xor eax, eax
jmp 0x42efda
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x42f014
mov ecx, str.CyrixInstead
lea eax, [esp + 0x1c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42f007
test dl, dl
je 0x42f003
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42f007
add eax, 2
add ecx, 2
test dl, dl
jne 0x42efe7
xor eax, eax
jmp 0x42f00c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x42f0a8
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x18]
push eax
push 1
call fcn.0054e5a0
mov eax, dword [esp + 0x2c]
shr eax, 5
and eax, 0x7f8
add esp, 0x14
cmp eax, 0x80
jne 0x42f05f
or ebp, 0x80000000
mov eax, ebp
pop ebp
pop edi
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.0059709c
add esp, 0x24
ret
cmp eax, 0x40
jne 0x42f07e
or ebp, 0x40000000
mov eax, ebp
pop ebp
pop edi
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.0059709c
add esp, 0x24
ret
cmp eax, 0x20
jne 0x42f09d
or ebp, 0x20000000
mov eax, ebp
pop ebp
pop edi
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.0059709c
add esp, 0x24
ret
cmp eax, 0x10
jne 0x42f0a8
or ebp, 0x10000000
mov ecx, dword [esp + 0x2c]
mov eax, ebp
pop ebp
pop edi
pop ebx
xor ecx, esp
call fcn.0059709c
add esp, 0x24
ret