Function at 0x51cc3c
Capabilities:
Check for software breakpoints

Disassembly:
push eax
wait
pop ecx
add al, dl
pushfd
pop ecx
add ah, cl
mov dl, 0x59
add byte [eax - 0x242fffaf], al
push ecx
add byte [esi], bl
popfd
pop ecx
add al, bh
sahf
pop ecx
add dl, bl
mov al, 0x59
add byte [eax], dl
mov cl, 0x59
add byte [esi], dl
mov cl, 0x59
add ah, dl
mov al, 0x59
add byte [edx + ebx*8 - 0x649dffaf], al
pop ecx
add byte [edx - 0x65], cl
pop ecx
add byte [ebx + ebx*4 + 0x59], bl
add byte [esi - 0x5bffa661], cl
wait
pop ecx
add byte [esi - 0x31ffa665], bl
wait
pop ecx
add byte [edx - 0x6bffa661], bl
lahf
pop ecx
add byte [ebp + ebx*4 + 0x59], dl
add byte [esi - 0x63], cl
pop ecx
add dh, bh
sahf
pop ecx
add byte [esi - 0x61], dh
pop ecx
add dh, ah
sahf
pop ecx
add dl, dh
sahf
pop ecx
add byte [esi - 0x37ffa662], al
sahf
pop ecx
add byte [esi + 0x4200599c], ah
popfd
pop ecx
add al, cl
wait
pop ecx
add byte [ebx + ebx*4 - 0x2353ffa7], bh
push ecx
add dl, al
wait
pop ecx
add byte [eax], bl
popfd
pop ecx
add byte [edx], dl
popfd
pop ecx
add byte [esi - 0x1dffa664], bh
pushfd
pop ecx
add dh, dl
pushfd
pop ecx
add ah, bl
pushfd
pop ecx
add byte [eax - 0x4dffa664], bh
pushfd
pop ecx
add ah, al
pushfd
pop ecx
add dl, cl
pushfd
pop ecx
add byte [edx - 0x6bffa665], ch
pushfd
pop ecx
add ah, dl
wait
pop ecx
add byte [esi + 0x500599b], dh
add byte [0x8000700], al
add byte [edi - 0xb004400], al
fcom qword [ecx]
insb byte es:[edi], dx
fst qword [ecx]
mov ah, 0xdd
push ecx
add byte [eax - 0x20], ch
push ecx
add ah, bh
fst qword [ecx]
push cs
push esp
dec edx
js 0x51cd91
push ebx
jo 0x51cd91
outsb dx, byte [esi]
inc edx
jne 0x51cda0
je 0x51cd9d
outsb dx, byte [esi]
nop
xor al, 0xcd
push ecx
add byte [edi], al
pop es
push cs
push esp
dec edx
js 0x51cda6
push ebx
jo 0x51cda6
outsb dx, byte [esi]
inc edx
jne 0x51cdb5
je 0x51cdb2
outsb dx, byte [esi]
cmp al, 0xcc
push ecx
add byte [eax], bh
push esp
pop edi
add byte [ecx], ch
add byte [edi], al
dec edx
js 0x51cdbe
push ebx
jo 0x51cdbe
outsb dx, byte [esi]
push ds
add ah, al
push esp
pop edi
add byte [ebx], bl
add bh, bh
lahf
pop ecx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
or eax, dword [eax]
add eax, 0x67696c41
outsb dx, byte [esi]
movsb byte es:[edi], byte [esi]
push esp
pop edi
add byte [ecx], ah
add bh, bh
mov byte [edi - 0x6083ffa7], bl
pop ecx
add byte [eax], al
add byte [eax], al
add byte [ebx], 0
add byte [eax], al
or al, 0
pop es
add byte [edi], al
inc ecx
outsb dx, byte [esi]
arpl word [eax + 0x6f], bp
jb 0x51ce0d
mov al, byte [0x74005f54]
add byte [eax], al
add byte [eax + eax], dh
add bh, bh
popfd
push dword [esi]
popfd
pop ecx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x430b000d], al
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
or eax, 0x6f430b00
inc ebx
outsd dx, dword [esi]
outsb dx, byte [esi]
jae 0x51ce2e
jb 0x51ce1d
imul ebp, dword [esi + 0x74], 0x5f656473
je 0x51ce33
pop edi
add byte [ebp - 0x6d00ffff], ah
wait
pop ecx
add byte [ebx + ebx*4 + 0x59], cl
add byte [eax - 0x80000000], al
push cs
add byte [0x336c7443], al
inc esp
invalid
push ecx
add byte [edx + 0x10051], cl
add byte [eax], al
add byte [eax], al
add byte [eax + 1], al
loop 0x51ce60
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
adc byte [eax], al
or eax, 0x6e776f44
add byte [0x6e776f44], cl
dec esi
jne 0x51ce93
inc edi
insb byte es:[edi], dx
jns 0x51ce9a
push 0x5f54c873
pop edi
add byte [edx], bh
add bh, bh
jp 0x51ce36
invalid
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0xc], al
adc dword [eax], eax
or al, byte [edx + esi*2 + 0x61]
inc ebx
jne 0x51cec0
jae 0x51cebf
jb 0x51ce0a
push esp
pop edi
add byte [ebx - 0x64010000], bl
add byte [eax], al
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
adc al, byte [eax]
or byte [edx + esi*2 + 0x61], al
dec ebx
imul ebp, dword [esi + 0x64], 0x5f54bc
pop ebp
add byte [eax], al
jmp dword [eax]
dec ebp
outsd dx, dword [esi]
pop edi
add byte [eax], dl
add dh, bh
add byte fs:[eax], al
invalid
add bh, bh
adc al, 2
call dword [edx + eax]
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
adc eax, 0x6f460c00
arpl word [ebp + 0x73], si
inc ebx
outsd dx, dword [esi]
outsb dx, byte [esi]
je 0x51cf50
outsd dx, dword [esi]
insb byte es:[edi], dx
pop edi
add byte [ecx - 0x7900ffff], ch
wait
pop ecx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
push ss
add byte [ebx], cl
push eax
popal
jb 0x51cf64
outsb dx, byte [esi]
je 0x51cf45
je 0x51cf70
xor eax, dword [esp + 0x65]
pop edi
add byte [edx - 0x61010000], bl
sahf
pop ecx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
pop ss
add byte [esi], cl
push eax
popal
jb 0x51cf8a
outsb dx, byte [esi]
je 0x51cf7b
push 0x6948776f
outsb dx, byte [esi]
je 0x51cf80
dec eax
imul ebp, dword [esi + 0x74], 0x5f4c50
jl 0x51cf35
dec esp
pop edi
add byte [eax + eax], bh
invalid
add bh, bh
ficomp dword [esi + 0x10059]
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
sbb byte [eax], al
or dword [eax + 0x6f], edx
add byte [eax + 0x50090018], al
outsd dx, dword [esi]
jo 0x51cfc3
jo 0x51cf9d
outsb dx, byte gs:[esi]
jne 0x51cfb8
pop edi
add byte [ecx - 0x5b010000], bl
sahf
pop ecx
add byte [esi + 0x599e], dh
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x53080019], al
push 0x6948776f
outsb dx, byte [esi]
je 0x51cf2b
outsd dx, dword [esi]
ja 0x51cfbb
imul ebp, dword [esi + 0x74], sym.imp.vcl60.bpl___xp_18Controls_TTabOrder
sbb byte [ebx - 0x6485ffa7], 0x59
push esp
pop edi
add byte [eax + 0x7a00599b], al
wait
wait
pop ecx
add byte [edx - 0x65], bh
pop ecx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
cmp bh, 0xff
invalid
movsb byte es:[edi], byte [esi]
add dword [eax], eax
push dword [ebx + ebx*4 + 0x59]
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
sbb eax, dword [eax]
pop es
push esp
popal
bound edx, qword [ebx + 0x74]
outsd dx, dword [esi]
je 0x51d029
jo 0x51cfac
invalid
inc ecx
pop edi
add ah, ch
loopne 0x51d013
add byte [eax], dl
loope 0x51d017
adc cl, ah
push ecx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x5507001c], al
jo 0x51d020
insb byte es:[edi], dx
jns 0x51d04c
push sym.imp.vcl60.bpl___xp_18Buttons_TNumGlyphs
test cl, ah
push ecx
add byte [eax + 0x10051e1], ch
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
sbb eax, 0x70550b00
dec esi
jne 0x51d06a
inc edi
insb byte es:[edi], dx
jns 0x51d071
push 0x5f656473
add byte [edi], dl
add bh, bh
in al, dx
sahf
pop ecx
add byte [ebp + ebx*4 + 0x59], ch
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 1], al
add byte [ecx], 0
add dword [eax], eax
add byte [eax], al
push ds
add byte [edi], al
push esi
imul esi, dword [ebx + 0x69], 0x3c656c62
jae 0x51d08b
bound ebp, qword [ebp + 0x3c]
outsd dx, dword [esi]
pop edi
add byte [eax], ah
add al, byte [eax]
jmp dword [eax]
and byte [edx], al
add bh, bh
and byte [edx], al
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
pop ds
add byte [ebx], cl
dec edi
outsb dx, byte [esi]
inc esp
outsd dx, dword [esi]
ja 0x51d0b4
inc ebx
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0x5f5488
call 0xe950d054
add byte [eax], al
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f0a0020], al
outsb dx, byte [esi]
inc esp
jb 0x51d0cc
push esp
pop edi
add al, ch
add byte [eax], al
invalid
popal
inc esp
jb 0x51d0de
jo 0x51cffd
push esp
pop edi
add al, dh
add byte [eax], al
push eax
add byte [eax], al
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f0a0021], al
dec edi
outsb dx, byte [esi]
inc esp
jb 0x51d0f1
dec edi
jbe 0x51d0f9
jb 0x51d016
push esp
pop edi
add byte [eax], cl
add dword [eax], eax
dec dword [eax]
add dword [eax], eax
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f090022], al
outsb dx, byte [esi]
inc ebp
outsb dx, byte [esi]
inc esp
outsd dx, dword [esi]
arpl word [ebx - 0x80], bp
push esp
pop edi
add byte [eax], bl
add dword [eax], eax
call [eax]
add dword [eax], eax
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f090023], al
outsb dx, byte [esi]
inc ebp
outsb dx, byte [esi]
inc esp
jb 0x51d13d
cmp al, 0x6f
outsd dx, dword [esi]
pop edi
add al, al
add dword [eax], eax
inc eax
add dword [eax], eax
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
add byte [eax + 0x4f070024], al
outsb dx, byte [esi]
inc ebp
outsb dx, byte [esi]
je 0x51d163
jb 0x51d13c
outsd dx, dword [esi]
pop edi
add al, cl
add dword [eax], eax
dec eax
add dword [eax], eax
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f060025], al
outsb dx, byte [esi]
inc ebp
js 0x51d188
je 0x51d191
push esp
pop edi
add byte [eax], al
add dword [eax], eax
inc dword [eax]
add dword [eax], eax
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f0b0026], al
outsb dx, byte [esi]
push ebx
je 0x51d1a1
jb 0x51d1b6
inc esp
outsd dx, dword [esi]
arpl word [ebx - 0x7c], bp
push esp
pop edi
add byte [eax], dl
add dword [eax], eax
call dword [eax]
add dword [eax], eax
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f0b0027], al
outsb dx, byte [esi]
push ebx
je 0x51d1c7
jb sym.SDERPServer.exe__Jxlspin_TJxlSpinEdit_
inc esp
jb 0x51d1cc
cmp al, 0x6f
pop edi
add byte [eax], bl
add al, byte [eax]
call [eax]
add al, byte [eax]
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f090028], al
outsb dx, byte [esi]
push ebp
jo 0x51d1cf
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0x51d1dc
rcl dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sub al, 0xd3
push ecx
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, ch
rcl byte [ecx], cl
sbb dl, bl
push ecx
add byte [edx + eax - 0x11940000], al
rcl dword [ecx], cl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
call 0x1a522383
rcl dword [ecx], cl
test byte [edx], al
add byte [eax], al
insb byte es:[edi], dx
out dx, al
push ecx
add al, ah
mov al, 0x59
add byte [ebx + ebp*4 - 0x4ec5ffa7], ah
pop ecx
add byte [eax + 0x280059ab], bl
xchg ebp, eax
pop ecx
sub byte [ebp - 0x540dffa7], dl
add dl, dh
stosd dword es:[edi], eax
pop ecx
add ah, ch
stosd dword es:[edi], eax
pop ecx
add al, bl
jecxz 0x51d22c
invalid