Function at 0x42a4b0
Capabilities:
Check for software breakpoints

Disassembly:
sub esp, 0x50
push ebx
push ebp
mov ebp, ecx
mov byte [esp + 0x2c], 0xe8
push esi
xor ch, ch
mov dword [esp + 0x31], 0
xor al, al
mov byte [esp + 0x28], 0xe9
push edi
xor edi, edi
mov dword [esp + 0x2d], 0
mov word [esp + 0x3c], 0x800f
mov dword [esp + 0x3e], 0
mov byte [esp + 0x12], ch
mov byte [esp + 0x13], al
mov dword [esp + 0x20], edi
mov dword [esp + 0x14], edi
mov dword [ebp + 0xc], edi
mov dword [ebp + 0x10], edi
nop
mov ebx, dword [ebp + 8]
lea edx, [esp + 0x44]
movzx esi, ch
add esi, dword [ebp]
movzx eax, al
mov ecx, esi
add ebx, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x1c], ebx
call fcn.00429a30
test dword [esp + 0x5c], 0x1000
mov edx, eax
mov dword [esp + 0x24], edx
jne 0x42a7ff
cmp byte [esp + 0x12], 5
mov dword [esp + 0x18], esi
jb 0x42a55e
mov eax, esi
mov dword [esp + 0x14], 1
sub eax, ebx
lea ecx, [esp + 0x2c]
sub eax, 5
mov edx, 5
mov dword [esp + 0x2d], eax
jmp 0x42a5d2
mov bl, byte [esp + 0x4a]
cmp bl, 0xe8
jne 0x42a588
movzx eax, byte [esp + 0x44]
lea ecx, [esp + 0x34]
sub eax, dword [esp + 0x1c]
mov edx, 5
add eax, 0xfffffffb
add eax, dword [esp + 0x54]
add eax, esi
mov dword [esp + 0x35], eax
jmp 0x42a5d2
mov al, bl
and al, 0xfd
cmp al, 0xe9
jne 0x42a6bd
movzx ecx, byte [esp + 0x44]
add ecx, esi
cmp bl, 0xeb
jne 0x42a5a9
movsx eax, byte [esp + 0x54]
add ecx, eax
jmp 0x42a5ad
add ecx, dword [esp + 0x54]
mov eax, dword [ebp]
cmp eax, ecx
ja 0x42a69b
add eax, 5
cmp ecx, eax
jae 0x42a69b
cmp edi, ecx
cmovae ecx, edi
mov edi, ecx
mov dword [esp + 0x20], edi
mov ecx, dword [esp + 0x18]
cmp esi, edi
jae 0x42a5e3
movzx eax, byte [esp + 0x44]
cmp edx, eax
jne 0x42a7ff
mov esi, dword [esp + 0x28]
lea eax, [esi + edx]
cmp eax, 0x20
ja 0x42a7ff
mov eax, dword [ebp + 0x10]
cmp eax, 8
jae 0x42a7ff
mov bl, byte [esp + 0x12]
mov byte [eax + ebp + 0x14], bl
mov eax, dword [ebp + 0x10]
mov bl, byte [esp + 0x13]
mov byte [eax + ebp + 0x1c], bl
mov al, bl
mov edi, dword [ebp + 8]
add al, dl
inc dword [ebp + 0x10]
add edi, esi
mov esi, ecx
mov byte [esp + 0x13], al
mov ecx, edx
rep movsb byte es:[edi], byte [esi]
mov ch, byte [esp + 0x12]
add ch, byte [esp + 0x44]
cmp dword [esp + 0x14], 0
mov edi, dword [esp + 0x20]
mov byte [esp + 0x12], ch
je 0x42a500
cmp ch, 5
jae 0x42a7f2
mov ebx, dword [ebp]
movzx edi, ch
mov cl, byte [ebx + edi]
lea edx, [ebx + edi]
test cl, cl
je 0x42a66a
cmp cl, 0x90
je 0x42a66a
cmp cl, 0xcc
jne 0x42a773
mov esi, 5
mov eax, 1
sub esi, edi
cmp esi, eax
jbe 0x42a7f2
nop
cmp byte [edx + eax], cl
jne 0x42a773
inc eax
cmp eax, esi
jb 0x42a680
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x50
ret
sub ecx, dword [esp + 0x1c]
mov edx, 5
sub ecx, 5
cmp esi, edi
mov dword [esp + 0x2d], ecx
lea ecx, [esp + 0x2c]
sbb ebx, ebx
inc ebx
mov dword [esp + 0x14], ebx
jmp 0x42a5d2
mov ch, byte [esp + 0x4b]
mov cl, bl
and cl, 0xf0
cmp cl, 0x70
je 0x42a6f5
mov al, bl
and al, 0xfc
cmp al, 0xe0
je 0x42a6f5
mov al, ch
and al, 0xf0
cmp al, 0x80
je 0x42a6f5
and bl, 0xfe
cmp bl, 0xc2
jne 0x42a5ce
cmp esi, edi
sbb ebx, ebx
inc ebx
mov dword [esp + 0x14], ebx
jmp 0x42a5ce
movzx edx, byte [esp + 0x44]
add edx, esi
cmp cl, 0x70
je 0x42a70f
mov al, bl
and al, 0xfc
cmp al, 0xe0
je 0x42a70f
add edx, dword [esp + 0x54]
jmp 0x42a716
movsx eax, byte [esp + 0x54]
add edx, eax
mov eax, dword [ebp]
cmp eax, edx
ja 0x42a738
add eax, 5
cmp edx, eax
jae 0x42a738
cmp edi, edx
cmovae edx, edi
mov edi, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x20], edi
jmp 0x42a5ce
mov al, bl
and al, 0xfc
cmp al, 0xe0
je 0x42a7ff
cmp bl, 0xf
movzx ecx, ch
movzx eax, bl
cmovne ecx, eax
sub edx, dword [esp + 0x1c]
and cl, 0xf
or cl, 0x80
sub edx, 6
mov byte [esp + 0x3d], cl
lea ecx, [esp + 0x3c]
mov dword [esp + 0x3e], edx
mov edx, 6
jmp 0x42a5d2
cmp ch, 2
jae 0x42a7a0
test cl, cl
je 0x42a786
cmp cl, 0x90
je 0x42a786
cmp cl, 0xcc
jne 0x42a7ff
mov esi, 2
mov eax, 1
sub esi, edi
cmp esi, eax
jbe 0x42a7a0
cmp byte [edx + eax], cl
jne 0x42a7ff
inc eax
cmp eax, esi
jb 0x42a796
push 0x1c
lea eax, [esp + 0x48]
push eax
lea eax, [ebx - 5]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
cmp dword [esp + 0x54], 0x1000
jne 0x42a7ff
test byte [esp + 0x58], 0xf0
je 0x42a7ff
mov eax, dword [ebp]
mov dl, byte [eax - 5]
test dl, dl
je 0x42a7d6
cmp dl, 0x90
je 0x42a7d6
cmp dl, 0xcc
jne 0x42a7ff
mov ecx, 1
add eax, 0xfffffffc
nop
cmp byte [eax], dl
jne 0x42a7ff
inc ecx
inc eax
cmp ecx, 5
jb 0x42a7e0
mov dword [ebp + 0xc], 1
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x50
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x50
ret