Function at 0x10025620
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 0x34], edi
mov esi, ecx
mov dword [ebp - 0x28], esi
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x30], eax
mov eax, dword fs:[0x18]
mov edx, dword [eax + 4]
xor ebx, ebx
mov eax, dword [eax + 8]
mov dword [ebp - 0x3c], eax
mov eax, esi
mov dword [ebp - 0x38], edx
xor edx, edx
div edi
mov ecx, dword [ebp + 8]
mov eax, 0x18
sub edi, edx
shr edi, 2
cmp edi, eax
mov dword [ebp - 0x24], ecx
cmova edi, eax
mov dword [ebp - 0x2c], edi
mov edi, 1
cmp dword [ebp - 0x2c], edi
jbe 0x10025975
jmp 0x10025690
mov edx, dword [esi + edi*4]
cmp edx, 0x10000
jb 0x1002596b
cmp edx, 0x7ffeffff
ja 0x1002596b
cmp edx, dword [ebp - 0x3c]
jb 0x100256b9
cmp edx, dword [ebp - 0x38]
jb 0x1002596b
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [eax + 4]
cmp byte [ecx + 0xd], 0
jne 0x100256da
cmp dword [ecx + 0x10], edx
jae 0x100256d0
mov ecx, dword [ecx + 8]
jmp 0x100256d4
mov esi, ecx
mov ecx, dword [ecx]
cmp byte [ecx + 0xd], 0
je 0x100256c6
cmp esi, eax
je 0x100256eb
cmp edx, dword [esi + 0x10]
jb 0x100256eb
mov dword [ebp - 0x44], esi
lea ecx, [ebp - 0x44]
jmp 0x100256f1
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x40]
mov esi, dword [ebp - 0x28]
cmp dword [ecx], eax
jne 0x10025968
cmp byte [esi + edi*4 + 1], 0
jne 0x10025728
cmp byte [esi + edi*4 + 3], 0
jne 0x10025728
movzx eax, byte [0x10049c32]
push eax
lea eax, [ebp - 0x64]
mov dword [ebp - 0x64], edx
push eax
mov byte [ebp - 0x60], 1
lea eax, [ebp - 0x84]
jmp 0x1002595e
push 0x1c
lea eax, [ebp - 0x20]
push eax
push edx
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_VirtualQueryEx]
test eax, eax
je 0x10025968
cmp dword [ebp - 0x10], 0x1000
mov eax, dword [ebp - 0xc]
jne 0x10025759
cmp dword [ebp - 8], 0x1000000
jne 0x10025759
cmp eax, 0x10
je 0x1002576e
cmp eax, 0x20
je 0x1002576e
cmp eax, 0x40
je 0x1002576e
cmp eax, 0x80
jne 0x10025968
mov ecx, dword [esi + edi*4]
mov al, byte [ecx]
test al, al
je 0x10025948
cmp al, 5
je 0x10025948
cmp al, 0x1c
je 0x10025948
cmp al, 0x24
je 0x10025948
cmp al, 0x28
je 0x10025948
cmp al, 0x2a
je 0x10025948
cmp al, 0x30
je 0x10025948
cmp al, 0x3c
je 0x10025948
cmp al, 0x42
je 0x10025948
cmp al, 0x55
je 0x10025948
cmp al, 0x60
je 0x10025948
cmp al, 0x77
je 0x10025948
cmp al, 0xa6
je 0x10025948
cmp al, 0xb3
je 0x10025948
cmp al, 0xcc
je 0x10025948
cmp al, 0xcd
je 0x10025948
cmp al, 0xce
je 0x10025948
cmp al, 0xd0
je 0x10025948
cmp al, 0xd4
je 0x10025948
cmp al, 0xd5
je 0x10025948
cmp al, 0xd8
je 0x10025948
cmp al, 0xd9
je 0x10025948
cmp al, 0xda
je 0x10025948
cmp al, 0xdb
je 0x10025948
cmp al, 0xdc
je 0x10025948
cmp al, 0xdd
je 0x10025948
cmp al, 0xde
je 0x10025948
cmp al, 0xdf
je 0x10025948
cmp al, 0xe0
je 0x10025948
cmp al, 0xec
je 0x10025948
cmp al, 0xed
je 0x10025948
cmp al, 0xee
je 0x10025948
cmp al, 0xef
je 0x10025948
cmp al, 0xe4
je 0x10025948
cmp al, 0xe5
je 0x10025948
cmp al, 0xe6
je 0x10025948
cmp al, 0xe7
je 0x10025948
cmp al, 0xf0
je 0x10025948
cmp al, 0xf1
je 0x10025948
cmp al, 0xf4
je 0x10025948
cmp al, 0xfd
je 0x10025948
cmp byte [ecx + 1], 0
je 0x10025948
xor edx, edx
mov eax, ecx
div dword [ebp - 0x34]
cmp edx, 4
jae 0x100258e9
movzx eax, byte [0x10049c32]
push eax
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], ecx
push eax
mov byte [ebp - 0x58], 1
lea eax, [ebp - 0x6c]
jmp 0x1002595e
cmp byte [ecx - 1], 0xc3
je 0x10025930
cmp byte [ecx - 3], 0xc2
je 0x10025930
cmp byte [ecx - 4], 0xc2
je 0x10025930
movzx eax, word [ecx - 2]
mov edx, 0x340f
cmp ax, dx
je 0x10025930
mov edx, 0x90c3
cmp ax, dx
je 0x10025930
mov edx, 0x9090
cmp ax, dx
je 0x10025930
mov edx, 0xcccc
cmp ax, dx
je 0x10025930
mov eax, dword [ebp - 0x30]
mov dword [eax + ebx*4], ecx
inc ebx
jmp 0x10025968
movzx eax, byte [0x10049c32]
push eax
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x4c], ecx
push eax
mov byte [ebp - 0x48], 1
lea eax, [ebp - 0x7c]
jmp 0x1002595e
movzx eax, byte [0x10049c32]
push eax
lea eax, [ebp - 0x54]
mov dword [ebp - 0x54], ecx
push eax
mov byte [ebp - 0x50], 1
lea eax, [ebp - 0x74]
push ecx
mov ecx, dword [ebp - 0x24]
push eax
call fcn.1001fc80
mov ecx, dword [ebp - 0x24]
inc edi
cmp edi, dword [ebp - 0x2c]
jb 0x10025690
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10026980
mov esp, ebp
pop ebp
ret