Function at 0x517060
Capabilities:
Check for peb beingdebugged flag

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x48
mov esi, esp
mov dword [esi + 0x30], ebp
mov dword [esi + 4], ecx
mov dword [esi + 0x34], esp
mov dword [esi + 0x40], 0xffffffff
lea eax, [esi + 0x38]
mov dword [esi + 0x3c], 0x594550
mov ecx, dword fs:[0]
mov dword [esi + 0x38], ecx
mov dword fs:[0], eax
lea ecx, [esi + 0x20]
push dword [ebp + 8]
call fcn.0052a990
mov eax, dword [0x5d1950]
mov ecx, dword [0x5d1954]
lea edx, [eax + 1]
imul edx, eax
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete al
cmp ecx, 0xa
setl ah
xor ah, al
mov eax, 0xd8dfa9
mov edi, 0xfe6ab301
cmovne edi, eax
test ebx, edx
sete byte [esi + 2]
cmovne eax, edi
cmp ecx, 0xa
setl byte [esi + 0x14]
mov edx, dword [esi + 4]
mov ecx, dword [edx + 8]
cmovge eax, edi
sub ecx, dword [edx + 4]
sar ecx, 2
mov ebx, 0x9fd9639d
nop word [eax + eax]
cmp ebx, 0xd8dfa8
jg 0x517120
cmp ebx, 0x9fd9639d
je 0x517134
cmp ebx, 0xfe6ab301
jne 0x517100
mov ebx, 0x53798ea4
jmp 0x517100
cmp ebx, 0xd8dfa9
je 0x517165
cmp ebx, 0x53798ea4
jne 0x517100
mov ebx, eax
jmp 0x517100
movzx edx, byte [esi + 2]
mov dh, byte [esi + 0x14]
mov ebx, edx
xor bl, dh
mov edi, 0xfe6ab301
mov ebx, 0x53798ea4
cmovne edi, ebx
test dh, dh
mov ebx, edi
mov dword [esi + 8], ecx
mov ecx, 0x53798ea4
cmovne ebx, ecx
mov ecx, dword [esi + 8]
test dl, dl
cmove ebx, edi
jmp 0x517100
mov eax, dword [esi + 4]
add eax, 0x38
mov dword [esi + 0xc], ecx
mov ecx, dword [esi + 0xc]
mov byte [esi + 2], 4
mov dword [esi + 0x14], ecx
mov dword [esi + 0xc], eax
mov ecx, 0x433b5e43
mov eax, 0x767c16ae
nop word cs:[eax + eax]
cmp ecx, 0x2cd155c5
je 0x5171be
cmp ecx, 0x433b5e43
je 0x5171ad
cmp ecx, 0x767c16ae
jne 0x517190
jmp 0x5172d8
mov ecx, dword [esi + 0xc]
cmp dword [ecx + 0x24], 0
mov ecx, 0x2cd155c5
cmove ecx, eax
jmp 0x517190
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x24]
mov eax, dword [ecx]
mov eax, dword [eax + 8]
mov dword [esi + 0x40], 1
lea edx, [esi + 2]
lea ebx, [esi + 0x14]
lea edi, [esi + 0x20]
push edi
push edx
push ebx
call eax
mov byte [esi + 3], al
mov eax, dword [esi + 4]
lea edi, [eax + 0x20]
lea eax, [esi + 0xc]
mov ecx, edi
push eax
call fcn.00475a60
lea eax, [esi + 3]
mov ecx, edi
push eax
push 1
push dword [esi + 0x10]
push dword [esi + 0xc]
lea eax, [esi + 0x14]
push eax
call fcn.004756f0
cmp byte [esi + 3], 0
mov edi, dword [esi + 4]
je 0x517297
mov eax, dword [edi + 8]
cmp dword [eax - 4], 0
je 0x517297
nop
mov ebx, esp
push eax
sub esp, 0xc
mov dword [esi + 8], esp
mov eax, dword [0x5d1968]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete dl
cmp dword [0x5d196c], 0xa
setge cl
setl ah
xor ah, dl
jne 0x517256
or cl, al
jne 0x517220
mov dword [esi + 0x1c], ebx
lea eax, [edi + 0x68]
mov dword [esi + 0x40], 1
mov ecx, dword [esi + 8]
push eax
call fcn.0051c590
mov eax, dword [esi + 4]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov ecx, dword [eax + 8]
mov dword [esi + 0x40], 2
push dword [ebp + 8]
call fcn.0052ac90
mov ecx, eax
call fcn.00513530
mov esp, dword [esi + 0x1c]
mov ecx, dword [esi + 4]
mov dword [ecx + 0x30], eax
mov eax, dword [0x5d1968]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
cmp dword [0x5d196c], 0xa
setl dh
mov ecx, dword [0x5cf4f0]
mov eax, dword [0x5cf4f4]
test dh, dl
jne 0x517342
xor dh, dl
jne 0x517342
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
jmp 0x5172e4
mov dword [esi + 0x40], 1
call fcn.005956b1
test ecx, ecx
sete dl
setne cl
cmp eax, 0xa
setl ah
setge al
cmp ah, dl
jne 0x517301
or al, cl
jne 0x517400
movzx eax, byte [esi + 0x20]
lea ecx, [esi + 0x28]
mov dword [esi + 0x40], 3
push eax
call fcn.004fb2d0
mov ecx, dword [0x5cf4f0]
mov eax, dword [0x5cf4f4]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x517342
xor dh, dl
je 0x517420
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
cmp eax, 0xa
setl ah
setge al
cmp ah, cl
jne 0x517365
or al, dl
test al, 1
jne 0x5173f0
movzx eax, byte [esi + 0x20]
lea ecx, [esi + 0x28]
mov dword [esi + 0x40], 0
push eax
call fcn.004fb2d0
mov ecx, dword [0x5cf4f0]
mov eax, dword [0x5cf4f4]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x5173a2
xor dh, dl
je 0x517410
mov edx, dword [0x5d1968]
lea edi, [edx + 1]
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
setne dl
sete bl
cmp dword [0x5d196c], 0xa
setge dh
setl bh
xor bh, bl
jne 0x5173d4
or dh, dl
jne 0x5172e4
mov eax, dword [esi + 0x38]
mov dword fs:[0], eax
mov al, 1
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
jmp 0x5173f0
jmp 0x517400
jmp 0x517410
jmp 0x517420