Function at 0x456c20
Capabilities:
Check for peb ntglobalflag flag
Contain obfuscated stackstrings
Get number of processors
Parse pe header

Disassembly:
push 0xffffffffffffffff
push 0x5fd118
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x48
push ebx
push ebp
push esi
push edi
lea eax, [esp + 0x68]
push eax
push str.window
lea ecx, [esp + 0x18]
call fcn.00402f20
mov esi, dword [esp + 0x68]
lea ecx, [esp + 0x10]
push ecx
xor ebx, ebx
mov ecx, esi
mov dword [esp + 0x64], ebx
call fcn.005bb000
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
or edi, 0xffffffff
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov ebp, ecx
je 0x456cb8
cmp eax, 0x80
jbe 0x456c8b
push ecx
call fcn.005e05ca
jmp 0x456cb5
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x30]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push 0x60c434
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 1
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.window
lea ecx, [esp + 0x18]
mov byte [esp + 0x68], 2
call fcn.00402f20
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 3
call fcn.005bb030
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x456d65
cmp eax, 0x80
jbe 0x456d38
push ecx
call fcn.005e05ca
jmp 0x456d62
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x456db2
cmp eax, 0x80
jbe 0x456d86
push ecx
call fcn.005e05ca
jmp 0x456daf
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x456e03
cmp eax, 0x80
jbe 0x456dd7
push ecx
call fcn.005e05ca
jmp 0x456e00
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.size
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 4
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.window
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 5
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 6
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x456eb0
cmp eax, 0x80
jbe 0x456e83
push ecx
call fcn.005e05ca
jmp 0x456ead
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x456efd
cmp eax, 0x80
jbe 0x456ed1
push ecx
call fcn.005e05ca
jmp 0x456efa
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x456f4e
cmp eax, 0x80
jbe 0x456f22
push ecx
call fcn.005e05ca
jmp 0x456f4b
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push 0x60c654
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 7
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.window
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 8
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 9
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x456ffb
cmp eax, 0x80
jbe 0x456fce
push ecx
call fcn.005e05ca
jmp 0x456ff8
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x457048
cmp eax, 0x80
jbe 0x45701c
push ecx
call fcn.005e05ca
jmp 0x457045
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x457099
cmp eax, 0x80
jbe 0x45706d
push ecx
call fcn.005e05ca
jmp 0x457096
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push str.label
lea ecx, [esp + 0x30]
call fcn.00402f20
lea eax, [esp + 0x28]
push eax
mov ecx, esi
mov dword [esp + 0x64], 0xa
call fcn.005bb000
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov ebp, ecx
je 0x457110
cmp eax, 0x80
jbe 0x4570e3
push ecx
call fcn.005e05ca
jmp 0x45710d
dec eax
shr eax, 3
lea ecx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], ecx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov edx, dword [eax]
mov dword [ebp], edx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.window_id
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0xb
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.label
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0xc
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0xd
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x4571bd
cmp eax, 0x80
jbe 0x457190
push ecx
call fcn.005e05ca
jmp 0x4571ba
dec eax
shr eax, 3
lea eax, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], eax
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x45720a
cmp eax, 0x80
jbe 0x4571de
push ecx
call fcn.005e05ca
jmp 0x457207
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x45725b
cmp eax, 0x80
jbe 0x45722f
push ecx
call fcn.005e05ca
jmp 0x457258
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.text
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0xe
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.label
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0xf
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x10
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x457308
cmp eax, 0x80
jbe 0x4572db
push ecx
call fcn.005e05ca
jmp 0x457305
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x457355
cmp eax, 0x80
jbe 0x457329
push ecx
call fcn.005e05ca
jmp 0x457352
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x4573a6
cmp eax, 0x80
jbe 0x45737a
push ecx
call fcn.005e05ca
jmp 0x4573a3
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push 0x60c654
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x11
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.label
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x12
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x13
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x457453
cmp eax, 0x80
jbe 0x457426
push ecx
call fcn.005e05ca
jmp 0x457450
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x4574a0
cmp eax, 0x80
jbe 0x457474
push ecx
call fcn.005e05ca
jmp 0x45749d
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x4574f1
cmp eax, 0x80
jbe 0x4574c5
push ecx
call fcn.005e05ca
jmp 0x4574ee
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.color
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x14
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.label
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x15
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x16
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x45759e
cmp eax, 0x80
jbe 0x457571
push ecx
call fcn.005e05ca
jmp 0x45759b
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x4575eb
cmp eax, 0x80
jbe 0x4575bf
push ecx
call fcn.005e05ca
jmp 0x4575e8
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x45763c
cmp eax, 0x80
jbe 0x457610
push ecx
call fcn.005e05ca
jmp 0x457639
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.font
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x17
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.label
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x18
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x19
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x4576e9
cmp eax, 0x80
jbe 0x4576bc
push ecx
call fcn.005e05ca
jmp 0x4576e6
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x457736
cmp eax, 0x80
jbe 0x45770a
push ecx
call fcn.005e05ca
jmp 0x457733
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x457787
cmp eax, 0x80
jbe 0x45775b
push ecx
call fcn.005e05ca
jmp 0x457784
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.x_centered
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x1a
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.label
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x1b
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x1c
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x457834
cmp eax, 0x80
jbe 0x457807
push ecx
call fcn.005e05ca
jmp 0x457831
dec eax
shr eax, 3
lea edx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], edx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x68], ecx
je 0x457881
cmp eax, 0x80
jbe 0x457855
push ecx
call fcn.005e05ca
jmp 0x45787e
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov edx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], edx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x68], ecx
je 0x4578d2
cmp eax, 0x80
jbe 0x4578a6
push ecx
call fcn.005e05ca
jmp 0x4578cf
lea ebp, [eax - 1]
shr ebp, 3
push 0x655bd8
lea ebp, [ebp*4 + 0x655be0]
call fcn.00401450
mov ecx, dword [ebp]
mov eax, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [ebp], eax
mov dword [0x655bd8], ebx
add esp, 4
lea edx, [esp + 0x68]
push edx
push str.image
lea ecx, [esp + 0x30]
call fcn.00402f20
lea eax, [esp + 0x28]
push eax
mov ecx, esi
mov dword [esp + 0x64], 0x1d
call fcn.005bb000
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov dword [esp + 0x60], edi
mov ebp, ecx
je 0x457949
cmp eax, 0x80
jbe 0x45791c
push ecx
call fcn.005e05ca
jmp 0x457946
dec eax
shr eax, 3
lea ecx, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], ecx
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov edx, dword [eax]
mov dword [ebp], edx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.window_id
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x1e
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.image
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x1f
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x20
call fcn.005bb030
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
sub eax, ecx
cmp ecx, ebx
mov ebp, ecx
je 0x4579f6
cmp eax, 0x80
jbe 0x4579c9
push ecx
call fcn.005e05ca
jmp 0x4579f3
dec eax
shr eax, 3
lea eax, [eax*4 + 0x655be0]
push 0x655bd8
mov dword [esp + 0x6c], eax
call fcn.00401450
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [ebp], ecx
mov dword [eax], ebp
mov dword [0x655bd8], ebx
add esp, 4
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push 0x60c434
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x21
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.image
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x22
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x23
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push 0x60c654
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x24
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.image
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x25
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x26
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea edx, [esp + 0x68]
push edx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.alpha
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x27
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.image
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x28
call fcn.00402f20
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
mov byte [esp + 0x6c], 0x29
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea edx, [esp + 0x68]
push edx
push str.widget
lea ecx, [esp + 0x30]
call fcn.00402f20
lea eax, [esp + 0x28]
push eax
mov ecx, esi
mov dword [esp + 0x64], 0x2a
call fcn.005bb000
lea ecx, [esp + 0x28]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.window_id
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x2b
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x2c
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x2d
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
mov dword [esp + 0x60], edi
lea ecx, [esp + 0x10]
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push 0x60c434
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x2e
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x2f
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x30
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push 0x60c654
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x31
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x32
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x33
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
mov dword [esp + 0x60], 0x34
lea edx, [esp + 0x68]
push edx
push str.size
lea ecx, [esp + 0x24]
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x35
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x36
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.image
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x37
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x38
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x39
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.image_over
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x3a
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
mov byte [esp + 0x64], 0x3b
push str.widget
lea ecx, [esp + 0x30]
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x3c
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.image_press
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x3d
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x3e
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x3f
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.image_off
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x40
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x41
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
mov byte [esp + 0x64], 0x42
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.text
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x43
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x44
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x45
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.x_centered
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x46
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x47
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x48
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
mov dword [esp + 0x60], edi
lea ecx, [esp + 0x10]
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.font
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x49
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x4a
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x4b
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.color
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x4c
call fcn.00402f20
lea eax, [esp + 0x68]
push eax
push str.widget
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x4d
call fcn.00402f20
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x6c], 0x4e
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea ecx, [esp + 0x68]
push ecx
push str.dialog
lea ecx, [esp + 0x30]
call fcn.00402f20
mov dword [esp + 0x60], 0x4f
lea edx, [esp + 0x28]
push edx
mov ecx, esi
call fcn.005bb000
lea ecx, [esp + 0x28]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push 0x60c434
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x50
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x51
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x52
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.size
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x53
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x54
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x55
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.title
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x56
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x57
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x58
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.text
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x59
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x5a
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x5b
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.left
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x5c
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x5d
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x5e
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.right
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x5f
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x60
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x61
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.center
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x62
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x63
call fcn.00402f20
mov byte [esp + 0x60], 0x64
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.left_blink
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x65
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x66
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x67
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.right_blink
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x68
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x69
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x6a
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.center_blink
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x6b
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x6c
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x6d
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.left_right_balance
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x6e
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x6f
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x70
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x18]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.on_enter
lea ecx, [esp + 0x24]
mov dword [esp + 0x68], 0x71
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], 0x72
call fcn.00402f20
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x73
call fcn.005bb030
lea ecx, [esp + 0x28]
call fcn.0041d780
lea ecx, [esp + 0x1c]
call fcn.0041d780
lea ecx, [esp + 0x10]
mov dword [esp + 0x60], edi
call fcn.0041d780
lea eax, [esp + 0x68]
push eax
push 0x60c437
lea ecx, [esp + 0x54]
call fcn.00402f20
lea ecx, [esp + 0x68]
push ecx
push str.on_escape
lea ecx, [esp + 0x48]
mov dword [esp + 0x68], 0x74
call fcn.00402f20
lea edx, [esp + 0x68]
push edx
push str.dialog
lea ecx, [esp + 0x3c]
mov byte [esp + 0x68], 0x75
call fcn.00402f20
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x3c]
push edx
mov ecx, esi
mov byte [esp + 0x6c], 0x76
call fcn.005bb030
lea ecx, [esp + 0x34]
call fcn.0041d780
lea ecx, [esp + 0x40]
call fcn.0041d780
lea ecx, [esp + 0x4c]
call fcn.0041d780
mov ecx, dword [esp + 0x58]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x54
ret 4