Function at 0x455930
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x524ca6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x66c
mov al, byte [esp + 6]
push ebx
push ebp
mov ebx, ecx
xor ebp, ebp
push esi
push edi
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x44], al
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov ecx, 0x11
xor eax, eax
lea edi, [esp + 0x55]
mov byte [esp + 0x54], 0
rep stosd dword es:[edi], eax
mov edx, dword [ebx + 4]
or ecx, 0xffffffff
stosw word es:[edi], ax
stosb byte es:[edi], al
lea edi, [edx + 0x1c]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
lea esi, [esp + 0x54]
sub edi, ecx
mov eax, ecx
mov dword [esp + 0x40], esi
mov esi, edi
mov edi, dword [esp + 0x40]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [esp + 0x684], ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edx, dword [edx]
cmp edx, 0x24
jl 0x4559c5
mov dword [esp + 0x74], 0x48
jmp 0x455a32
cmp edx, 0x18
jl 0x4559d4
mov dword [esp + 0x74], 0x30
jmp 0x455a32
cmp edx, 0x12
jl 0x4559e3
mov dword [esp + 0x74], 0x24
jmp 0x455a32
cmp edx, 0x10
jl 0x4559f2
mov dword [esp + 0x74], 0x20
jmp 0x455a32
cmp edx, 0xe
jl 0x455a01
mov dword [esp + 0x74], 0x1c
jmp 0x455a32
cmp edx, 0xc
jl 0x455a10
mov dword [esp + 0x74], 0x18
jmp 0x455a32
cmp edx, 0xa
jl 0x455a1f
mov dword [esp + 0x74], 0x14
jmp 0x455a32
xor ecx, ecx
cmp edx, 8
setl cl
dec ecx
and ecx, 0xfffffffa
add ecx, 0x18
mov dword [esp + 0x74], ecx
mov edx, dword [ebx + 0x40]
push ebp
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], 1
mov dword [esp + 0x9c], ebp
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], edx
mov dword [esp + 0x40], ebp
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push 0x58
push esi
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov ecx, eax
mov eax, 0x5a0
cdq
idiv ecx
push esi
push ebp
mov dword [esp + 0x48], eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edi, dword [esp + 0x68c]
mov byte [ebx + 0x3c], 0
mov byte [ebx + 0x3d], 1
mov dword [ebx + 0x38], ebp
mov al, byte [edi]
test al, al
je 0x458033
mov ebp, dword [esp + 0x690]
cmp al, 0x3c
je 0x455cba
movsx ecx, al
add ecx, 0xfffffff7
cmp ecx, 0x74
ja case.0x455ace.16
xor edx, edx
mov dl, byte [ecx + 0x458084]
jmp dword [edx*4 + 0x458064]
mov eax, dword [str.nbsp_]
mov esi, 0x5672a0
test eax, eax
je 0x455cb0
mov eax, dword [esi]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrlenA]
mov ecx, dword [esi]
push eax
push ecx
push edi
call fcn.004a888d
add esp, 0xc
test eax, eax
je 0x455b10
mov eax, dword [esi + 8]
add esi, 8
test eax, eax
jne 0x455ae7
jmp 0x455cb0
mov ecx, dword [esi]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrlenA]
mov esi, dword [esi + 4]
add edi, eax
mov al, byte [esi]
test al, al
je 0x455b37
mov edx, dword [ebp]
mov byte [edx], al
mov eax, dword [ebp]
inc eax
inc esi
mov dword [ebp], eax
mov al, byte [esi]
test al, al
jne 0x455b24
inc dword [ebx + 0x38]
jmp 0x455cac
mov eax, dword [ebp]
mov byte [eax], 0x5c
mov esi, dword [ebp]
inc esi
mov eax, esi
mov dword [ebp], esi
mov byte [eax], 0x5c
mov edx, dword [ebp]
inc edx
inc edi
mov dword [ebp], edx
mov eax, dword [ebx + 0x38]
inc eax
mov dword [ebx + 0x38], eax
jmp 0x455cac
mov ecx, dword [ebp]
mov byte [ecx], 0x5c
mov esi, dword [ebp]
inc esi
mov eax, esi
mov dword [ebp], esi
mov byte [eax], 0x7b
mov edx, dword [ebp]
inc edx
inc edi
mov dword [ebp], edx
mov eax, dword [ebx + 0x38]
inc eax
mov dword [ebx + 0x38], eax
jmp 0x455cac
mov edx, dword [ebp]
mov byte [edx], 0x5c
mov esi, dword [ebp]
inc esi
mov eax, esi
mov dword [ebp], esi
mov byte [eax], 0x7d
mov edx, dword [ebp]
inc edx
inc edi
mov dword [ebp], edx
mov eax, dword [ebx + 0x38]
inc eax
mov dword [ebx + 0x38], eax
jmp 0x455cac
mov al, byte [ebx + 0x3c]
test al, al
jne 0x455bd3
mov al, byte [ebx + 0x3d]
test al, al
jne 0x455bd3
mov eax, dword [ebp]
mov byte [eax], 0x20
mov ecx, dword [ebp]
inc ecx
mov dword [ebp], ecx
mov eax, dword [ebx + 0x38]
inc eax
mov dword [ebx + 0x38], eax
inc edi
mov byte [ebx + 0x3d], 1
jmp 0x455cb0
mov al, byte [ebx + 0x3d]
test al, al
jne case.0x455ace.11
mov ecx, dword [ebp]
mov byte [ecx], 0x20
mov ecx, dword [ebp]
inc ecx
mov dword [ebp], ecx
mov eax, dword [ebx + 0x38]
inc eax
mov dword [ebx + 0x38], eax
inc edi
jmp 0x455cb0
inc edi
mov byte [esp + 0x11c], al
test al, 0x80
je 0x455c95
mov edx, dword [ebp]
mov byte [edx], 0x5c
mov ecx, dword [ebp]
inc ecx
mov eax, ecx
mov dword [ebp], ecx
mov byte [eax], 0x27
mov eax, dword [ebp]
inc eax
mov dword [ebp], eax
mov eax, dword [0x56935c]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x11c]
lea edx, [esp + 0x18]
and ecx, 0xff
mov byte [esp + 0x684], 1
push ecx
push str._02x
push edx
call fcn.0050197c
mov eax, dword [esp + 0x24]
add esp, 0xc
cmp dword [eax - 8], 2
jne 0x455c82
mov ecx, dword [ebp]
mov al, byte [eax]
mov byte [ecx], al
mov ecx, dword [ebp]
mov edx, dword [esp + 0x18]
inc ecx
mov dword [ebp], ecx
mov eax, ecx
mov cl, byte [edx + 1]
mov byte [eax], cl
mov eax, dword [ebp]
inc eax
mov dword [ebp], eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x684], 0
call fcn.00509099
jmp 0x455ca1
mov ecx, dword [ebp]
mov byte [ecx], al
mov eax, dword [ebp]
inc eax
mov dword [ebp], eax
mov eax, dword [ebx + 0x38]
mov byte [ebx + 0x3c], 0
inc eax
mov dword [ebx + 0x38], eax
mov byte [ebx + 0x3d], 0
mov al, byte [edi]
test al, al
jne 0x455aaf
cmp byte [edi], 0
je 0x45800c
mov al, byte [edi + 1]
inc edi
test al, al
lea ecx, [esp + 0x174]
je 0x455ce1
cmp al, 0x3e
je 0x455ce1
mov byte [ecx], al
mov al, byte [edi + 1]
inc ecx
inc edi
test al, al
jne 0x455cd2
inc edi
mov byte [ecx], 0
mov dword [esp + 0x68c], edi
lea edi, [esp + 0x174]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + 0x174]
push ecx
push edx
call dword [sym.imp.USER32.dll_CharLowerBuffA]
mov al, byte [esp + 0x174]
lea esi, [esp + 0x20]
test al, al
je 0x455d4d
lea edi, [esp + 0x174]
lea eax, [esp + 0x20]
sub edi, eax
mov al, byte [edi + esi]
cmp al, 0x2f
je 0x455d3f
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
je 0x455d4d
mov dl, byte [edi + esi]
mov al, byte [edi + esi + 1]
mov byte [esi], dl
inc esi
test al, al
jne 0x455d28
lea edi, [esp + 0x20]
or ecx, 0xffffffff
xor eax, eax
mov byte [esi], 0
repne scasb al, byte es:[edi]
not ecx
dec ecx
movsx eax, byte [esp + ecx + 0x174]
lea esi, [esp + ecx + 0x174]
push eax
mov dword [esp + 0x1c], esi
call fcn.004a8777
add esp, 4
test eax, eax
je 0x455d94
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x455d7e
mov dword [esp + 0x18], esi
mov al, byte [esp + 0x20]
mov bl, byte [ebx + 0x3c]
mov ecx, 0x12
lea esi, [esp + 0x54]
lea edi, [esp + 0x12c]
lea edx, [esp + 0x27c]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x1c]
cmp al, 0x2f
mov dword [esp + 0x10], edx
mov byte [esp + 0x17], 0
mov byte [esp + 0x16], 0
mov byte [esi + 0x3c], 0
je 0x457b60
lea eax, [esp + 0x20]
push 0x566e58
push eax
call fcn.004a6365
add esp, 8
test eax, eax
je 0x4578e7
lea ecx, [esp + 0x20]
push str.strong
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
je 0x4578e7
lea edx, [esp + 0x20]
push 0x566e50
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x455e4a
mov al, byte [str.i1]
mov ecx, str.i1
test al, al
je 0x45779b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x455e2e
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566e44
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x455e8e
mov al, byte [str.ul1]
mov ecx, str.ul1
test al, al
je 0x45779b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x455e72
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566da8
push eax
call fcn.004a6365
add esp, 8
test eax, eax
je 0x4578ae
lea ecx, [esp + 0x20]
push 0x567284
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
je 0x4578ae
lea edx, [esp + 0x20]
push 0x567280
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x455f3d
test bl, bl
jne 0x455f04
mov al, byte [str.par]
mov ecx, str.par
test al, al
je 0x455f01
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x455eea
inc dword [esi + 0x38]
mov al, byte [0x567270]
mov ecx, 0x567270
test al, al
je 0x455f29
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x455f12
mov eax, dword [esi + 0x38]
mov byte [esi + 0x3c], 1
inc eax
mov byte [esi + 0x3d], 1
mov dword [esi + 0x38], eax
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566d30
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4565d4
mov ecx, dword [esp + 0x18]
push str.bgcolor
push ecx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], al
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456164
mov edi, str.bgcolor
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x455fb4
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x455fa2
cmp byte [esi], 0x3d
jne 0x456030
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x455fdd
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x455fcb
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456014
cmp cl, 0x27
je 0x456014
test al, al
je 0x45602c
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456004
cmp byte [esi], 0x2d
jne 0x45602c
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x455fef
jmp 0x45602c
mov al, byte [esi + 1]
inc esi
test al, al
je 0x45602c
cmp al, cl
je 0x45602c
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45601c
mov byte [ebp], 0
cmp byte [esp + 0x9c], 0x23
jne 0x45606c
lea edx, [esp + 0x120]
push 0x10
lea eax, [esp + 0xa1]
push edx
push eax
call fcn.004a78ad
xor ecx, ecx
add esp, 0xc
mov cl, ah
mov ch, al
shr eax, 0x10
shl ecx, 8
and eax, 0xff
or eax, ecx
jmp 0x4560fa
lea edx, [esp + 0x9c]
push str.window
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45608f
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x4560fa
lea eax, [esp + 0x9c]
push str.windowtext
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4560b2
push 8
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x4560fa
lea ecx, [esp + 0x9c]
push str.buttonface
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4560d5
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x4560fa
lea edx, [esp + 0x9c]
push str.buttontext
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4560f8
push 0x12
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x4560fa
xor eax, eax
mov ebx, dword [esp + 0x1c]
xor esi, esi
mov dword [esp + 0x34], eax
mov ecx, dword [ebx + 0x14]
mov edx, dword [ebx + 0x18]
cmp ecx, edx
je 0x456120
cmp dword [ecx], eax
je 0x45611c
add ecx, 4
inc esi
cmp ecx, edx
jne 0x45610e
jmp 0x456120
test esi, esi
jge 0x456155
mov eax, dword [ebx + 0x18]
lea esi, [ebx + 0x10]
lea ecx, [esp + 0x34]
push ecx
push eax
mov ecx, esi
call fcn.0045a010
mov eax, dword [esi + 4]
test eax, eax
jne 0x45614c
mov eax, dword [ebx + 0x14]
xor esi, esi
dec esi
mov dword [esp + 0x7c], esi
mov edx, dword [eax + esi*4]
mov dword [ebx + 0x34], edx
jmp 0x456168
mov esi, dword [esi + 8]
sub esi, eax
sar esi, 2
dec esi
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x7c], esi
mov edx, dword [eax + esi*4]
mov dword [ebx + 0x34], edx
jmp 0x456168
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov eax, 8
mov dword [esp + 0x98], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], eax
mov eax, dword [ebx + 0x40]
push str.leftmargin
push ecx
mov dword [esp + 0x94], eax
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456282
mov edi, str.leftmargin
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4561ea
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4561d8
cmp byte [esi], 0x3d
jne 0x456266
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456213
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456201
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x45624a
cmp cl, 0x27
je 0x45624a
test al, al
je 0x456262
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x45623a
cmp byte [esi], 0x2d
jne 0x456262
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456225
jmp 0x456262
mov al, byte [esi + 1]
inc esi
test al, al
je 0x456262
cmp al, cl
je 0x456262
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456252
mov byte [ebp], 0
lea edx, [esp + 0x9c]
push edx
call fcn.004a6a97
mov ecx, dword [ebx + 0x40]
add esp, 4
add eax, ecx
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x18]
push str.rightmargin
push eax
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456373
mov edi, str.rightmargin
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx ecx, byte [esi]
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4562e0
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4562ce
cmp byte [esi], 0x3d
jne 0x45635c
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456309
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4562f7
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456340
cmp cl, 0x27
je 0x456340
test al, al
je 0x456358
movsx edx, al
push edx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456330
cmp byte [esi], 0x2d
jne 0x456358
mov al, byte [esi]
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45631b
jmp 0x456358
mov al, byte [esi + 1]
inc esi
test al, al
je 0x456358
cmp al, cl
je 0x456358
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456348
mov byte [ebp], 0
lea ecx, [esp + 0x9c]
push ecx
call fcn.004a6a97
add esp, 4
mov dword [esp + 0x90], eax
mov edx, dword [esp + 0x18]
push str.topmargin
push edx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456464
mov edi, str.topmargin
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4563d1
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4563bf
cmp byte [esi], 0x3d
jne 0x45644d
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4563fa
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4563e8
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456431
cmp cl, 0x27
je 0x456431
test al, al
je 0x456449
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456421
cmp byte [esi], 0x2d
jne 0x456449
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45640c
jmp 0x456449
mov al, byte [esi + 1]
inc esi
test al, al
je 0x456449
cmp al, cl
je 0x456449
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456439
mov byte [ebp], 0
lea eax, [esp + 0x9c]
push eax
call fcn.004a6a97
add esp, 4
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x18]
push str.bottommargin
push ecx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456555
mov edi, str.bottommargin
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4564c2
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4564b0
cmp byte [esi], 0x3d
jne 0x45653e
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4564eb
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4564d9
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456522
cmp cl, 0x27
je 0x456522
test al, al
je 0x45653a
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456512
cmp byte [esi], 0x2d
jne 0x45653a
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x4564fd
jmp 0x45653a
mov al, byte [esi + 1]
inc esi
test al, al
je 0x45653a
cmp al, cl
je 0x45653a
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45652a
mov byte [ebp], 0
lea edx, [esp + 0x9c]
push edx
call fcn.004a6a97
add esp, 4
mov dword [esp + 0x98], eax
mov esi, dword [esp + 0x40]
lea ecx, [esp + 0x10]
mov eax, esi
imul eax, dword [esp + 0x94]
push eax
push str.margt_d
push ecx
push ebx
call fcn.00458100
mov edx, esi
add esp, 0x10
imul edx, dword [esp + 0x98]
push edx
lea eax, [esp + 0x14]
push str.margb_d
push eax
push ebx
call fcn.00458100
mov ecx, esi
add esp, 0x10
imul ecx, dword [esp + 0x8c]
push ecx
lea edx, [esp + 0x14]
push str.li_d
push edx
push ebx
call fcn.00458100
imul esi, dword [esp + 0xa0]
add esp, 0x10
lea eax, [esp + 0x10]
push esi
push str._ri_d
push eax
push ebx
call fcn.00458100
add esp, 0x10
jmp 0x456b13
lea ecx, [esp + 0x20]
push str.font
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4569e7
mov ebx, dword [esp + 0x18]
push str.color
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], al
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x4567e2
mov edi, str.color
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x45664b
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456639
cmp byte [esi], 0x3d
jne 0x4566c7
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456674
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456662
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x4566ab
cmp cl, 0x27
je 0x4566ab
test al, al
je 0x4566c3
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x45669b
cmp byte [esi], 0x2d
jne 0x4566c3
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456686
jmp 0x4566c3
mov al, byte [esi + 1]
inc esi
test al, al
je 0x4566c3
cmp al, cl
je 0x4566c3
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x4566b3
mov byte [ebp], 0
cmp byte [esp + 0x9c], 0x23
jne 0x456703
lea edx, [esp + 0x124]
push 0x10
lea eax, [esp + 0xa1]
push edx
push eax
call fcn.004a78ad
xor ecx, ecx
add esp, 0xc
mov cl, ah
mov ch, al
shr eax, 0x10
shl ecx, 8
and eax, 0xff
or eax, ecx
jmp 0x456791
lea edx, [esp + 0x9c]
push str.window
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456726
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456791
lea eax, [esp + 0x9c]
push str.windowtext
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456749
push 8
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456791
lea ecx, [esp + 0x9c]
push str.buttonface
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45676c
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456791
lea edx, [esp + 0x9c]
push str.buttontext
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45678f
push 0x12
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456791
xor eax, eax
mov edi, dword [esp + 0x1c]
xor esi, esi
mov dword [esp + 0x30], eax
mov ecx, dword [edi + 0x14]
mov edx, dword [edi + 0x18]
cmp ecx, edx
je 0x4567b7
cmp dword [ecx], eax
je 0x4567b3
add ecx, 4
inc esi
cmp ecx, edx
jne 0x4567a5
jmp 0x4567b7
test esi, esi
jge 0x4567de
mov eax, dword [edi + 0x18]
lea esi, [edi + 0x10]
lea ecx, [esp + 0x30]
push ecx
push eax
mov ecx, esi
call fcn.0045a010
mov eax, dword [esi + 4]
test eax, eax
jne 0x4567d5
xor esi, esi
jmp 0x4567dd
mov esi, dword [esi + 8]
sub esi, eax
sar esi, 2
dec esi
mov dword [esp + 0x78], esi
push str.size
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x4568f9
mov edi, str.size
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x45683c
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x45682a
cmp byte [esi], 0x3d
jne 0x4568b8
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456865
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456853
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x45689c
cmp cl, 0x27
je 0x45689c
test al, al
je 0x4568b4
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x45688c
cmp byte [esi], 0x2d
jne 0x4568b4
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456877
jmp 0x4568b4
mov al, byte [esi + 1]
inc esi
test al, al
je 0x4568b4
cmp al, cl
je 0x4568b4
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x4568a4
mov byte [ebp], 0
lea edx, [esp + 0x9c]
push edx
call fcn.004a6a97
add esp, 4
cmp eax, 7
jle 0x4568db
add eax, eax
cmp eax, 0x18
jl 0x4568f5
mov eax, 0x18
jmp 0x4568f5
dec eax
je 0x4568f0
dec eax
je 0x4568e9
dec eax
mov eax, 0x18
jmp 0x4568f5
mov eax, 0x14
jmp 0x4568f5
mov eax, 0xf
mov dword [esp + 0x74], eax
push str.face
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456b13
mov edi, str.face
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456953
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456941
cmp byte [esi], 0x3d
jne 0x457022
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456980
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x45696e
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x4569c2
cmp cl, 0x27
je 0x4569c2
test al, al
je 0x45701e
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x4569af
cmp byte [esi], 0x2d
jne 0x45701e
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456996
jmp 0x45701e
mov al, byte [esi + 1]
inc esi
test al, al
je 0x45701e
cmp al, cl
je 0x45701e
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x4569ce
jmp 0x45701e
lea ecx, [esp + 0x20]
push 0x5671d4
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456c22
mov edx, dword [esp + 0x18]
push str.href
push edx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], al
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456b13
mov edi, str.href
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456a5e
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456a4c
cmp byte [esi], 0x3d
jne 0x456ada
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456a87
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456a75
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456abe
cmp cl, 0x27
je 0x456abe
test al, al
je 0x456ad6
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456aae
cmp byte [esi], 0x2d
jne 0x456ad6
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456a99
jmp 0x456ad6
mov al, byte [esi + 1]
inc esi
test al, al
je 0x456ad6
cmp al, cl
je 0x456ad6
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456ac6
mov byte [ebp], 0
mov eax, dword [esp + 0x1c]
lea edi, [esp + 0x9c]
lea edx, [esp + 0x1f4]
mov ecx, dword [eax + 0x38]
mov dword [esp + 0x274], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x18]
push str.style
push eax
mov byte [esp + 0x1f], 1
call fcn.004a7d2f
add esp, 8
test eax, eax
je 0x45779b
mov ebx, dword [esp + 0x18]
push str.font_family
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x45798e
mov edi, str.font_family
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx ecx, byte [esi]
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456b90
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456b7e
cmp byte [esi], 0x3a
jne 0x45798e
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456bbd
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456bab
mov al, byte [esi]
mov dl, al
movsx ecx, dl
sub ecx, 0x22
je 0x45794a
dec ecx
je 0x457915
sub ecx, 4
je 0x45794a
test al, al
je 0x457962
movsx edx, al
push edx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456c0f
mov al, byte [esi]
cmp al, 0x20
je 0x456c0f
cmp al, 0x2d
je 0x456c0f
cmp al, 0x5f
je 0x456c0f
cmp al, 0x40
je 0x456c0f
test al, 0x80
je 0x457962
mov al, byte [esi]
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456be5
jmp 0x457962
lea ecx, [esp + 0x20]
push str.span
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457032
mov ebx, dword [esp + 0x18]
push str.color
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], al
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456e22
mov edi, str.color
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456c99
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456c87
cmp byte [esi], 0x3d
jne 0x456d15
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456cc2
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456cb0
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456cf9
cmp cl, 0x27
je 0x456cf9
test al, al
je 0x456d11
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456ce9
cmp byte [esi], 0x2d
jne 0x456d11
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456cd4
jmp 0x456d11
mov al, byte [esi + 1]
inc esi
test al, al
je 0x456d11
cmp al, cl
je 0x456d11
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456d01
mov byte [ebp], 0
cmp byte [esp + 0x9c], 0x23
jne 0x456d51
lea edx, [esp + 0x128]
push 0x10
lea eax, [esp + 0xa1]
push edx
push eax
call fcn.004a78ad
xor ecx, ecx
add esp, 0xc
mov cl, ah
mov ch, al
shr eax, 0x10
shl ecx, 8
and eax, 0xff
or eax, ecx
jmp 0x456ddf
lea edx, [esp + 0x9c]
push str.window
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456d74
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456ddf
lea eax, [esp + 0x9c]
push str.windowtext
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456d97
push 8
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456ddf
lea ecx, [esp + 0x9c]
push str.buttonface
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456dba
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456ddf
lea edx, [esp + 0x9c]
push str.buttontext
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x456ddd
push 0x12
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x456ddf
xor eax, eax
mov edi, dword [esp + 0x1c]
xor esi, esi
mov dword [esp + 0x38], eax
mov ecx, dword [edi + 0x14]
mov edx, dword [edi + 0x18]
cmp ecx, edx
je 0x456e03
cmp dword [ecx], eax
je 0x456ee0
add ecx, 4
inc esi
cmp ecx, edx
jne 0x456df3
mov eax, dword [edi + 0x18]
lea esi, [edi + 0x10]
lea ecx, [esp + 0x38]
push ecx
push eax
mov ecx, esi
call fcn.0045a010
mov ecx, esi
call fcn.00458da0
dec eax
mov dword [esp + 0x78], eax
push str.size
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456f4c
mov edi, str.size
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456e7c
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456e6a
cmp byte [esi], 0x3d
jne 0x456f0b
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456ea9
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456e97
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x456eef
cmp cl, 0x27
je 0x456eef
test al, al
je 0x456f07
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456ed0
cmp byte [esi], 0x2d
jne 0x456f07
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456ebb
jmp 0x456f07
test esi, esi
jl 0x456e03
mov eax, esi
jmp 0x456e1e
mov al, byte [esi + 1]
inc esi
test al, al
je 0x456f07
cmp al, cl
je 0x456f07
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456ef7
mov byte [ebp], 0
lea edx, [esp + 0x9c]
push edx
call fcn.004a6a97
add esp, 4
cmp eax, 7
jle 0x456f2e
add eax, eax
cmp eax, 0x18
jl 0x456f48
mov eax, 0x18
jmp 0x456f48
dec eax
je 0x456f43
dec eax
je 0x456f3c
dec eax
mov eax, 0x18
jmp 0x456f48
mov eax, 0x14
jmp 0x456f48
mov eax, 0xf
mov dword [esp + 0x74], eax
push str.face
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456b13
mov edi, str.face
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456fa6
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456f94
cmp byte [esi], 0x3d
jne 0x457022
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x456fcf
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x456fbd
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x457006
cmp cl, 0x27
je 0x457006
test al, al
je 0x45701e
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x456ff6
cmp byte [esi], 0x2d
jne 0x45701e
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x456fe1
jmp 0x45701e
mov al, byte [esi + 1]
inc esi
test al, al
je 0x45701e
cmp al, cl
je 0x45701e
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45700e
mov byte [ebp], 0
lea edi, [esp + 0x9c]
lea edx, [esp + 0x54]
jmp 0x456af6
lea ecx, [esp + 0x20]
push 0x5671b4
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45736b
test bl, bl
jne 0x457084
mov al, byte [0x567270]
mov ecx, 0x567270
test al, al
je 0x457075
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x45705e
mov eax, dword [esi + 0x38]
mov byte [esi + 0x3c], 1
inc eax
mov byte [esi + 0x3d], 1
mov dword [esi + 0x38], eax
mov ebx, dword [esp + 0x18]
push str.align
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x457267
mov edi, str.align
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4570e2
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4570d0
cmp byte [esi], 0x3d
jne 0x45715e
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x45710b
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4570f9
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x457142
cmp cl, 0x27
je 0x457142
test al, al
je 0x45715a
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x457132
cmp byte [esi], 0x2d
jne 0x45715a
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45711d
jmp 0x45715a
mov al, byte [esi + 1]
inc esi
test al, al
je 0x45715a
cmp al, cl
je 0x45715a
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45714a
mov byte [ebp], 0
lea eax, [esp + 0x9c]
push str.center
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4571a5
mov al, byte [str.qc]
mov ecx, str.qc
test al, al
je 0x457267
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457189
jmp 0x457267
lea eax, [esp + 0x9c]
push str.left
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x4571e9
mov al, byte [str.ql]
mov ecx, str.ql
test al, al
je 0x457267
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x4571d0
jmp 0x457267
lea eax, [esp + 0x9c]
push str.right
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457229
mov al, byte [str.qr]
mov ecx, str.qr
test al, al
je 0x457267
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457210
jmp 0x457267
lea eax, [esp + 0x9c]
push str.justify
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457267
mov al, byte [str.qj]
mov ecx, str.qj
test al, al
je 0x457267
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457250
push str.nowrap
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x456b13
mov edi, str.nowrap
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4572c1
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4572af
cmp byte [esi], 0x3d
jne 0x45733d
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4572ea
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4572d8
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x457321
cmp cl, 0x27
je 0x457321
test al, al
je 0x457339
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x457311
cmp byte [esi], 0x2d
jne 0x457339
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x4572fc
jmp 0x457339
mov al, byte [esi + 1]
inc esi
test al, al
je 0x457339
cmp al, cl
je 0x457339
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457329
mov byte [ebp], 0
mov al, byte [str._nowwrap]
mov ecx, str._nowwrap
test al, al
je 0x456b13
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x45734f
jmp 0x456b13
lea eax, [esp + 0x20]
push str.table
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45763f
mov ecx, dword [esp + 0x18]
xor ebx, ebx
push str.border
push ecx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], bl
call fcn.004a7d2f
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x457480
mov edi, str.border
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx edx, byte [esi]
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4573f2
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4573e0
cmp byte [esi], 0x3d
jne 0x45746e
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x45741b
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x457409
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x457452
cmp cl, 0x27
je 0x457452
test al, al
je 0x45746a
movsx eax, al
push eax
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x457442
cmp byte [esi], 0x2d
jne 0x45746a
mov cl, byte [esi]
mov byte [ebp], cl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45742d
jmp 0x45746a
mov al, byte [esi + 1]
inc esi
test al, al
je 0x45746a
cmp al, cl
je 0x45746a
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45745a
mov byte [ebp], 0
lea edx, [esp + 0x9c]
push edx
call fcn.004a6a97
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
push str.table_layout
push eax
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x4575ae
mov edi, str.table_layout
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx ecx, byte [esi]
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4574de
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4574cc
cmp byte [esi], 0x3a
jne 0x4575ae
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x45750b
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4574f9
mov al, byte [esi]
mov dl, al
movsx ecx, dl
sub ecx, 0x22
je 0x457592
dec ecx
je 0x45755d
sub ecx, 4
je 0x457592
test al, al
je 0x4575aa
movsx edx, al
push edx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x45754d
mov al, byte [esi]
cmp al, 0x20
je 0x45754d
cmp al, 0x2d
je 0x45754d
cmp al, 0x5f
je 0x45754d
cmp al, 0x40
je 0x45754d
test al, 0x80
je 0x4575aa
mov al, byte [esi]
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457527
jmp 0x4575aa
inc esi
mov byte [esp + 0x9c], al
lea ebp, [esp + 0x9d]
mov al, byte [esi]
test al, al
je 0x4575aa
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
je 0x4575aa
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457572
jmp 0x4575aa
mov al, byte [esi + 1]
inc esi
test al, al
je 0x4575aa
cmp al, dl
je 0x4575aa
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45759a
mov byte [ebp], 0
mov al, byte [str.par_trowd__trgaph108_trleft_108]
mov ecx, str.par_trowd__trgaph108_trleft_108
test al, al
je 0x4575d3
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x4575bc
mov esi, dword [esp + 0x1c]
push ebx
lea eax, [esp + 0x14]
push str._trbrdrt_brdrs_brdrw_d
push eax
push esi
call fcn.00458100
add esp, 0x10
lea ecx, [esp + 0x10]
push ebx
push str._trbrdrl_brdrs_brdrw_d
push ecx
push esi
call fcn.00458100
add esp, 0x10
lea edx, [esp + 0x10]
push ebx
push str._trbrdrb_brdrs_brdrw_d
push edx
push esi
call fcn.00458100
add esp, 0x10
lea eax, [esp + 0x10]
push ebx
push str._trbrdrr_brdrs_brdrw_d
push eax
push esi
call fcn.00458100
mov eax, dword [esi + 0x38]
add esp, 0x10
inc eax
mov dword [esp + 0x3c], 0
mov dword [esi + 0x38], eax
mov byte [esi + 0x3d], 1
jmp 0x456b13
lea ecx, [esp + 0x20]
push 0x5670b0
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45781b
mov edx, dword [esp + 0x18]
push str.width
push edx
xor edi, edi
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x457747
mov edi, str.width
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx eax, byte [esi]
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4576b9
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4576a7
cmp byte [esi], 0x3d
jne 0x457735
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4576e2
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4576d0
mov al, byte [esi]
mov cl, al
cmp cl, 0x22
je 0x457719
cmp cl, 0x27
je 0x457719
test al, al
je 0x457731
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x457709
cmp byte [esi], 0x2d
jne 0x457731
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x4576f4
jmp 0x457731
mov al, byte [esi + 1]
inc esi
test al, al
je 0x457731
cmp al, cl
je 0x457731
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457721
mov byte [ebp], 0
lea eax, [esp + 0x9c]
push eax
call fcn.004a6a97
add esp, 4
mov edi, eax
imul edi, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov al, byte [str.clbrdrt_brdrw15_brdrsclbrdrl_brdrw15_brdrsclbrdrb_brdrw15_brdrsclbrdrr_brdrw15_brdrs]
add esi, edi
mov ecx, str.clbrdrt_brdrw15_brdrsclbrdrl_brdrw15_brdrsclbrdrb_brdrw15_brdrsclbrdrr_brdrw15_brdrs
test al, al
mov dword [esp + 0x3c], esi
je 0x45777b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457764
mov eax, dword [esp + 0x3c]
mov esi, dword [esp + 0x1c]
push eax
lea ecx, [esp + 0x14]
push str.cellx_ld
push ecx
push esi
call fcn.00458100
add esp, 0x10
mov byte [esi + 0x3d], 1
mov ebp, dword [esp + 0x690]
mov eax, dword [esp + 0x10]
mov byte [eax], 0
mov al, byte [esp + 0x17]
test al, al
je 0x457dfe
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x12c]
push ecx
push edx
lea ecx, [esp + 0x4c]
call fcn.0045a960
mov al, byte [0x566e88]
mov ecx, 0x566e88
test al, al
je 0x4577ec
mov edx, dword [ebp]
mov byte [edx], al
mov edi, dword [ebp]
inc edi
inc ecx
mov dword [ebp], edi
mov al, byte [ecx]
test al, al
jne 0x4577d9
mov al, byte [esp + 0x27c]
lea ecx, [esp + 0x27c]
test al, al
je 0x457f10
mov edx, dword [ebp]
mov byte [edx], al
mov edi, dword [ebp]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [ebp], edi
test al, al
jne 0x457802
jmp 0x457f10
lea edx, [esp + 0x20]
push 0x56703c
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45785f
mov al, byte [str.intbl]
mov ecx, str.intbl
test al, al
je 0x457856
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x45783f
mov byte [esi + 0x3d], 1
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x567030
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45779b
mov al, byte [0x567270]
mov ecx, 0x567270
test al, al
je 0x45789e
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x457887
mov eax, dword [esi + 0x38]
mov byte [esi + 0x3d], 1
inc eax
mov dword [esi + 0x38], eax
jmp 0x4577a2
mov al, byte [0x567028]
mov ecx, 0x567028
test al, al
je 0x4578d3
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x4578bc
mov eax, dword [esi + 0x38]
mov byte [esi + 0x3c], 1
inc eax
mov byte [esi + 0x3d], 1
mov dword [esi + 0x38], eax
jmp 0x4577a2
mov al, byte [0x567020]
mov ecx, 0x567020
test al, al
je 0x45779b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x4578f9
jmp 0x4577a2
inc esi
mov byte [esp + 0x9c], al
lea ebp, [esp + 0x9d]
mov al, byte [esi]
test al, al
je 0x457962
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
je 0x457962
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x45792a
jmp 0x457962
mov al, byte [esi + 1]
inc esi
test al, al
je 0x457962
cmp al, dl
je 0x457962
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457952
lea edi, [esp + 0x9c]
or ecx, 0xffffffff
xor eax, eax
mov byte [ebp], 0
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x54]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push str.font_size
push ebx
lea ebp, [esp + 0xa4]
mov byte [esp + 0xa4], 0
call fcn.004a7d2f
mov esi, eax
add esp, 8
test esi, esi
je 0x457af9
mov edi, str.font_size
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add esi, ecx
movsx ecx, byte [esi]
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
je 0x4579e8
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x4579d6
cmp byte [esi], 0x3a
jne 0x457af9
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.004a8777
add esp, 4
test eax, eax
je 0x457a15
movsx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.004a8777
add esp, 4
test eax, eax
jne 0x457a03
mov al, byte [esi]
mov dl, al
movsx ecx, dl
sub ecx, 0x22
je 0x457a9c
dec ecx
je 0x457a67
sub ecx, 4
je 0x457a9c
test al, al
je 0x457ab4
movsx edx, al
push edx
call fcn.004a8806
add esp, 4
test eax, eax
jne 0x457a57
mov al, byte [esi]
cmp al, 0x20
je 0x457a57
cmp al, 0x2d
je 0x457a57
cmp al, 0x5f
je 0x457a57
cmp al, 0x40
je 0x457a57
test al, 0x80
je 0x457ab4
mov al, byte [esi]
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457a31
jmp 0x457ab4
inc esi
mov byte [esp + 0x9c], al
lea ebp, [esp + 0x9d]
mov al, byte [esi]
test al, al
je 0x457ab4
movsx ecx, al
push ecx
call fcn.004a8806
add esp, 4
test eax, eax
je 0x457ab4
mov dl, byte [esi]
mov byte [ebp], dl
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457a7c
jmp 0x457ab4
mov al, byte [esi + 1]
inc esi
test al, al
je 0x457ab4
cmp al, dl
je 0x457ab4
mov byte [ebp], al
mov al, byte [esi + 1]
inc ebp
inc esi
test al, al
jne 0x457aa4
lea eax, [esp + 0x9c]
mov byte [ebp], 0
push eax
call fcn.004a6a97
add esp, 4
cmp eax, 7
jle 0x457adb
add eax, eax
cmp eax, 0x18
jl 0x457af5
mov eax, 0x18
jmp 0x457af5
dec eax
je 0x457af0
dec eax
je 0x457ae9
dec eax
mov eax, 0x18
jmp 0x457af5
mov eax, 0x14
jmp 0x457af5
mov eax, 0xf
mov dword [esp + 0x74], eax
mov esi, dword [esp + 0x1c]
lea ecx, [esp + 0x9c]
push ecx
push str.color
push ebx
mov ecx, esi
call fcn.00458120
test al, al
je 0x457b29
lea edx, [esp + 0x9c]
mov ecx, esi
push edx
call fcn.00458260
mov dword [esp + 0x78], eax
lea eax, [esp + 0x9c]
mov ecx, esi
push eax
push str.background_color
push ebx
call fcn.00458120
test al, al
je 0x45779b
lea ecx, [esp + 0x9c]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.00458260
mov dword [esp + 0x7c], eax
jmp 0x45779b
lea edx, [esp + 0x20]
push 0x566ffc
push edx
call fcn.004a6365
add esp, 8
test eax, eax
je 0x457dd0
lea eax, [esp + 0x20]
push str._strong
push eax
call fcn.004a6365
add esp, 8
test eax, eax
je 0x457dd0
lea ecx, [esp + 0x20]
push 0x566ff0
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457bd8
mov al, byte [str.i0]
mov ecx, str.i0
test al, al
je 0x45779b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457bbc
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566fe4
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457c1c
mov al, byte [str.ulnone]
mov ecx, str.ulnone
test al, al
je 0x45779b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457c00
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566fd4
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457c67
mov al, byte [str._row]
mov ecx, str._row
test al, al
je 0x457c57
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x457c40
mov eax, dword [esi + 0x38]
mov byte [esi + 0x3d], 1
inc eax
mov dword [esi + 0x38], eax
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566fc8
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457cb2
mov al, byte [str.cell]
mov ecx, str.cell
test al, al
je 0x457ca2
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x457c8b
mov eax, dword [esi + 0x38]
mov byte [esi + 0x3d], 1
inc eax
mov dword [esi + 0x38], eax
jmp 0x4577a2
lea eax, [esp + 0x20]
push 0x566fb8
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457cd2
mov byte [esp + 0x16], 1
jmp 0x4577a2
lea ecx, [esp + 0x20]
push str._font
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457cf2
mov byte [esp + 0x16], 1
jmp 0x4577a2
lea edx, [esp + 0x20]
push 0x566fac
push edx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457d30
mov eax, dword [esi + 0x38]
lea ecx, [esi + 0x20]
mov dword [esp + 0x278], eax
lea edx, [esp + 0x1f4]
mov eax, dword [ecx + 8]
push edx
push eax
call fcn.0045a6a0
mov byte [esp + 0x16], 1
jmp 0x4577a2
lea eax, [esp + 0x20]
push str._span
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457d50
mov byte [esp + 0x16], 1
jmp 0x4577a2
lea ecx, [esp + 0x20]
push str._div
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x457da4
mov al, byte [0x567270]
mov ecx, 0x567270
test al, al
je 0x457d8b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov ebx, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [esp + 0x10], ebx
test al, al
jne 0x457d74
mov eax, dword [esi + 0x38]
mov byte [esp + 0x16], 1
inc eax
mov byte [esi + 0x3c], 1
mov dword [esi + 0x38], eax
mov byte [esi + 0x3d], 1
jmp 0x4577a2
lea eax, [esp + 0x20]
push str._table
push eax
call fcn.004a6365
add esp, 8
test eax, eax
jne 0x45779b
mov byte [esp + 0x16], 1
mov byte [esi + 0x3c], 1
mov byte [esi + 0x3d], 1
jmp 0x4577a2
mov al, byte [0x566f8c]
mov ecx, 0x566f8c
test al, al
je 0x45779b
mov edx, dword [esp + 0x10]
mov byte [edx], al
mov edi, dword [esp + 0x10]
mov al, byte [ecx + 1]
inc edi
inc ecx
mov dword [esp + 0x10], edi
test al, al
jne 0x457de2
jmp 0x4577a2
mov al, byte [esp + 0x16]
test al, al
je 0x457edd
mov ebp, dword [esp + 0x4c]
mov ecx, 0x12
lea esi, [esp + 0x54]
lea edi, [esp + 0x12c]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x48]
test esi, esi
jne 0x457e2c
xor edi, edi
jmp 0x457e43
mov ecx, ebp
mov eax, 0x38e38e39
sub ecx, esi
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov edi, edx
test esi, esi
je 0x45801b
mov ecx, ebp
mov eax, 0x38e38e39
sub ecx, esi
imul ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
je 0x45801b
lea edx, [edi + edi*8 - 9]
mov ecx, 0x12
lea edi, [esp + 0x54]
add ebp, 0xffffffb8
lea esi, [esi + edx*8]
push ebp
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x48]
call fcn.0045ab90
mov al, byte [esp + 0x27c]
lea ecx, [esp + 0x27c]
test al, al
je 0x457eaf
mov edx, dword [esp + 0x690]
mov esi, dword [edx]
mov byte [esi], al
mov ebx, dword [edx]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [edx], ebx
test al, al
jne 0x457e9e
mov al, byte [0x566f88]
mov ecx, 0x566f88
test al, al
je 0x457fe8
mov edx, dword [esp + 0x690]
mov esi, dword [edx]
mov byte [esi], al
mov ebx, dword [edx]
inc ebx
inc ecx
mov dword [edx], ebx
mov al, byte [ecx]
test al, al
jne 0x457ec8
jmp 0x457fe8
mov al, byte [esp + 0x27c]
lea ecx, [esp + 0x27c]
test al, al
je 0x457fe8
mov edx, dword [esp + 0x690]
mov esi, dword [edx]
mov byte [esi], al
mov ebx, dword [edx]
mov al, byte [ecx + 1]
inc ebx
inc ecx
mov dword [edx], ebx
test al, al
jne 0x457efa
jmp 0x457fe8
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x150]
xor bl, bl
cmp ecx, eax
je 0x457f41
mov esi, dword [esp + 0x690]
mov edi, dword [esp + 0x1c]
inc eax
push eax
push str.cf_d
push esi
push edi
call fcn.00458100
add esp, 0x10
mov bl, 1
jmp 0x457f4c
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x690]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x154]
cmp ecx, eax
je 0x457f6e
inc eax
push eax
push str.highlight_d
push esi
push edi
call fcn.00458100
add esp, 0x10
mov bl, 1
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x14c]
cmp ecx, eax
je 0x457f8f
push eax
push str._fs_d
push esi
push edi
call fcn.00458100
add esp, 0x10
mov bl, 1
lea eax, [esp + 0x54]
lea ecx, [esp + 0x12c]
push eax
push ecx
call fcn.004a6365
add esp, 8
test eax, eax
je 0x457fc6
lea edx, [esp + 0x54]
mov ecx, edi
push edx
call fcn.00458370
push eax
push 0x566f68
push esi
push edi
call fcn.00458100
add esp, 0x10
jmp 0x457fca
test bl, bl
je 0x457fe8
mov al, byte [0x565444]
mov ecx, 0x565444
test al, al
je 0x457fe8
mov edx, dword [esi]
mov byte [edx], al
mov ebx, dword [esi]
inc ebx
inc ecx
mov dword [esi], ebx
mov al, byte [ecx]
test al, al
jne 0x457fd8
mov eax, dword [esp + 0x68c]
mov al, byte [eax]
test al, al
je 0x458033
mov edi, dword [esp + 0x68c]
mov ebp, dword [esp + 0x690]
mov ebx, dword [esp + 0x1c]
jmp 0x455aaf
mov ecx, dword [esp + 0x48]
push ecx
call fcn.005096eb
add esp, 4
jmp 0x458047
lea ecx, [esp + 0x44]
mov dword [esp + 0x684], 0xffffffff
call fcn.004594e0
xor al, al
jmp 0x458049
lea ecx, [esp + 0x44]
mov dword [esp + 0x684], 0xffffffff
call fcn.004594e0
mov al, 1
mov ecx, dword [esp + 0x67c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x678
ret 8