Function at 0x5744f0
Capabilities:
Check for peb beingdebugged flag

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5d5c60
mov eax, dword fs:[0]
push eax
sub esp, 0x298
mov eax, dword [0x64e0a0]
xor eax, esp
mov dword [esp + 0x290], eax
push ebx
push esi
push edi
mov eax, dword [0x64e0a0]
xor eax, esp
push eax
lea eax, [esp + 0x2a8]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x14], edi
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDC]
push eax
call fcn.00429fbe
lea ecx, [esp + 0x34]
mov ebx, eax
call fcn.00429528
mov dword [esp + 0x2b0], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x1c]
push dword [ebx + 4]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push eax
lea ecx, [esp + 0x38]
call fcn.00429d3f
lea eax, [esp + 0x4c]
push eax
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetClientRect]
push 0xfaf4f0
lea eax, [esp + 0x50]
push eax
mov ecx, ebx
call fcn.0042d9f1
lea esi, [edi + 0x84]
push esi
mov ecx, ebx
call fcn.0042a4a1
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x58]
push 0xcfb6a2
mov dword [esp + 0x6c], eax
push 0xcfb6a2
lea eax, [esp + 0x64]
push eax
mov ecx, ebx
mov dword [esp + 0x74], 0x28
call fcn.0042d6a5
mov eax, dword [esp + 0x68]
add eax, 0xd
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x58]
push 0xcfb6a2
mov dword [esp + 0x6c], eax
push 0xcfb6a2
lea eax, [esp + 0x64]
push eax
mov ecx, ebx
call fcn.0042d6a5
mov eax, dword [ebx]
push dword [edi + 0x74]
mov ecx, ebx
call dword [eax + 0x28]
mov eax, dword [ebx]
push 0
mov ecx, ebx
call dword [eax + 0x30]
push 1
mov ecx, ebx
call fcn.0042a58d
push esi
mov ecx, ebx
call fcn.0042a4a1
mov eax, dword [edi + 0xb0]
add eax, dword [edi + 0xac]
mov esi, dword [esp + 0x4c]
add eax, dword [edi + 0xa8]
mov ecx, dword [esp + 0x50]
add eax, dword [edi + 0xa4]
mov dword [esp + 0x6c], esi
add eax, dword [edi + 0xa0]
mov dword [esp + 0x80], ecx
add eax, dword [edi + 0x9c]
mov dword [esp + 0x70], ecx
add eax, dword [edi + 0x98]
lea ecx, [esi + 4]
add eax, dword [edi + 0x94]
mov dword [esp + 0x7c], esi
add eax, dword [edi + 0x90]
mov dword [esp + 0x7c], ecx
add eax, dword [edi + 0x8c]
mov edi, dword [esp + 0x54]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x58]
mov edx, edi
mov dword [esp + 0x88], eax
mov dword [esp + 0x78], eax
sub edx, esi
sar edx, 1
mov dword [esp + 0x84], edi
lea eax, [edx + 2]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x60]
add eax, 3
push eax
lea eax, [edx - 2]
push eax
mov dword [esp + 0x7c], edi
lea eax, [esp + 0x20]
mov dword [esp + 0x54], ecx
sub edi, 4
push eax
mov ecx, ebx
mov dword [esp + 0x90], edx
mov dword [esp + 0x60], edi
call fcn.0042a161
mov eax, dword [esp + 0x68]
add eax, 0xfffffffd
push eax
mov eax, dword [esp + 0x88]
add eax, 0xfffffffe
push eax
mov ecx, ebx
call fcn.0042a12c
xor esi, esi
lea esp, [esp]
lea eax, [esi + esi*8]
lea edi, [esi + 1]
lea eax, [eax*2 + 5]
mov dword [esp + 0x70], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x50], eax
lea eax, [edi + edi*8]
mov dword [esp + 0x10], edi
lea eax, [eax*2 + 4]
mov dword [esp + 0x78], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x58], eax
cmp esi, 3
je 0x5747d3
cmp esi, 0xd
jne 0x5747f3
push eax
push dword [esp + 0x50]
lea eax, [esp + 0x4c]
push eax
mov ecx, ebx
call fcn.0042a161
push dword [esp + 0x58]
mov ecx, ebx
push dword [esp + 0x58]
call fcn.0042a12c
cmp esi, 0xe
ja case.0x574803.2
movzx eax, byte [esi + 0x574d5c]
jmp dword [eax*4 + 0x574d44]
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx]
push dword [ecx + 0x78]
mov ecx, ebx
call dword [eax + 0x28]
push 0x120
lea ecx, [esp + 0x50]
push ecx
push 0xffffffffffffffff
push dword [0x65c08c]
jmp 0x574cd5
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx]
push dword [ecx + 0x74]
mov ecx, ebx
call dword [eax + 0x28]
cmp byte [0x65145e], 0
je 0x574875
cmp byte [0x650a78], 2
jne 0x574875
push 0
lea eax, [esp + 0x90]
push 0x105
push eax
mov edx, 0x105
mov ecx, 0x651460
call fcn.00594c60
add esp, 0xc
jmp 0x5749e5
cmp byte [0x650ce4], 2
jne 0x5748e5
mov edx, dword [0x65c03c]
mov ecx, edx
lea esi, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x574890
sub ecx, esi
sar ecx, 1
lea eax, [esp + 0x8c]
cmp ecx, 0x105
jae 0x5748c2
push edx
push 0x105
push eax
call fcn.00543349
add esp, 0xc
jmp 0x5749e5
push 0x104
push edx
push 0x105
push eax
call fcn.00543d6d
add esp, 0x10
xor eax, eax
mov word [esp + 0x294], ax
jmp 0x5749e5
push 0x105
push 0x651032
call fcn.0054332a
mov esi, eax
push 0x60f04c
push 0x651032
lea edi, [esi*2 + 0x651030]
call fcn.005433a5
add esp, 0x10
test eax, eax
jne 0x57496f
push 0x60f050
push 0x651032
call fcn.005433a5
add esp, 8
test eax, eax
jne 0x57496f
mov eax, 0x651032
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x574931
sub eax, edx
sar eax, 1
cmp eax, 0x105
lea eax, [esp + 0x8c]
jae 0x574963
push 0x651032
push 0x105
push eax
call fcn.00543349
add esp, 0xc
jmp 0x5749e1
push 0x104
push 0x651032
jmp 0x5749c9
test esi, esi
je 0x5749e1
movzx eax, word [edi]
cmp eax, 0x5c
je 0x574988
cmp eax, 0x2f
je 0x574988
sub edi, 2
dec esi
jne 0x574973
jmp 0x5749e1
test esi, esi
je 0x5749e1
add edi, 2
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x574994
sub ecx, edx
sar ecx, 1
lea eax, [esp + 0x8c]
cmp ecx, 0x105
jae 0x5749c3
push edi
push 0x105
push eax
call fcn.00543349
add esp, 0xc
jmp 0x5749e1
push 0x104
push edi
push 0x105
push eax
call fcn.00543d6d
add esp, 0x10
xor eax, eax
mov word [esp + 0x294], ax
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov si, word [esp + 0x8c]
mov edx, dword [ecx + 0x74]
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
test si, si
jne 0x574a13
mov dword [esp + 0x10], 0
jmp 0x574a6a
test edx, edx
je 0x574a1f
mov eax, dword [ebx]
push edx
mov ecx, ebx
call dword [eax + 0x28]
lea ecx, [esp + 0x8c]
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x574a30
sub ecx, edx
lea eax, [esp + 0x20]
push eax
sar ecx, 1
push ecx
lea eax, [esp + 0x94]
push eax
push dword [ebx + 4]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [esp + 0x20]
mov si, word [esp + 0x8c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x54]
mov eax, edx
sub eax, dword [esp + 0x4c]
cmp dword [esp + 0x10], eax
jbe 0x574b14
mov eax, dword [ecx + 0x7c]
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
test si, si
jne 0x574a9e
xor eax, eax
jmp 0x574ae9
test eax, eax
je 0x574aad
mov eax, dword [ebx]
push dword [esp + 0x10]
mov ecx, ebx
call dword [eax + 0x28]
lea ecx, [esp + 0x8c]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x574ab7
sub ecx, edx
lea eax, [esp + 0x2c]
push eax
sar ecx, 1
push ecx
lea eax, [esp + 0x94]
push eax
push dword [ebx + 4]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x14]
sub edx, dword [esp + 0x4c]
cmp eax, edx
mov eax, dword [ebx]
jbe 0x574b0c
push dword [ecx + 0x80]
mov ecx, ebx
call dword [eax + 0x28]
push 0x8120
lea ecx, [esp + 0x50]
jmp 0x574cca
push dword [ecx + 0x7c]
mov ecx, ebx
call dword [eax + 0x28]
push 0x8120
lea ecx, [esp + 0x50]
jmp 0x574cca
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx]
push dword [ecx + 0x78]
mov ecx, ebx
call dword [eax + 0x28]
mov eax, dword [ebx]
push 0x120
lea ecx, [esp + 0x80]
push ecx
push 0xffffffffffffffff
push dword [0x65c090]
mov ecx, ebx
call dword [eax + 0x68]
push 0x120
lea ecx, [esp + 0x70]
push ecx
push 0xffffffffffffffff
push dword [0x65c094]
jmp 0x574cd5
mov eax, dword [esp + 0x14]
push dword [eax + esi*4 + 0x7c]
lea eax, [esp + 0x90]
push 0x60efc8
push 0x105
push eax
call fcn.005c1aa0
mov ecx, dword [esp + 0x24]
add esp, 0x10
cmp esi, 4
jne 0x574b98
mov eax, dword [0x65c098]
push dword [ecx + 0x74]
jmp 0x574ba2
mov eax, dword [esi*4 + 0x65bd7c]
push dword [ecx + 0x78]
mov dword [esp + 0x14], eax
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
mov eax, dword [0x650c80]
mov edx, dword [ebx]
push dword [eax + esi*4 + 0x1b5c]
mov ecx, ebx
call dword [edx + 0x30]
mov eax, dword [ebx]
push 0x124
lea ecx, [esp + 0x80]
push ecx
push 0xffffffffffffffff
push dword [esp + 0x1c]
mov ecx, ebx
call dword [eax + 0x68]
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx]
push dword [ecx + 0x74]
mov ecx, ebx
call dword [eax + 0x28]
mov eax, dword [ebx]
push 0
mov ecx, ebx
call dword [eax + 0x30]
jmp 0x574cc1
mov esi, dword [esp + 0x14]
mov eax, dword [ebx]
push dword [esi + 0x74]
mov ecx, ebx
call dword [eax + 0x28]
push dword [0x65c09c]
lea eax, [esp + 0x90]
push dword [esp + 0x2c]
push str._d__s
push 0x105
push eax
call fcn.005c1aa0
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esi + 0x74]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x6c]
add esp, 0x14
cmp word [esp + 0x8c], 0
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
jne 0x574c6a
xor eax, eax
jmp 0x574cae
test edx, edx
je 0x574c76
mov eax, dword [ebx]
push edx
mov ecx, ebx
call dword [eax + 0x28]
lea ecx, [esp + 0x8c]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x574c80
sub ecx, edx
lea eax, [esp + 0x18]
push eax
sar ecx, 1
push ecx
lea eax, [esp + 0x94]
push eax
push dword [ebx + 4]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x64]
sub ecx, eax
sub ecx, 4
cmp ecx, dword [esp + 0x6c]
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x5c]
jl 0x574cc5
lea ecx, [esp + 0x6c]
push 0x124
push ecx
push 0xffffffffffffffff
lea ecx, [esp + 0x98]
push ecx
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x68]
mov esi, edi
cmp esi, 0xf
jl 0x574790
push dword [esp + 0x38]
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx]
push 0xffffffffffffffff
mov ecx, ebx
call dword [eax + 0x20]
push dword [ebx + 4]
mov eax, dword [esp + 0x18]
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_ReleaseDC]
lea ecx, [esp + 0x34]
mov dword [esp + 0x2b0], 0xffffffff
call fcn.00429668
mov ecx, dword [esp + 0x2a8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x290]
xor ecx, esp
call fcn.00541b41
mov esp, ebp
pop ebp
ret 4