Function at 0x40b990
Capabilities:
Check for peb ntglobalflag flag
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5a4b80
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x70
push ebx
push ebp
push esi
push edi
mov esi, ecx
mov eax, dword [0x628100]
xor ebx, ebx
mov ebp, 1
mov dword [esp + 0x88], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x88], 2
call fcn.0040d770
push 0xa
lea ecx, [esp + 0x68]
mov byte [esp + 0x8c], 3
call fcn.0040d920
push ebx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 4
mov dword [esp + 0x2c], vtable.CMarkup.0
call fcn.00424fd0
mov eax, dword [esp + 0x90]
lea ecx, [esp + 0x28]
push eax
mov byte [esp + 0x8c], 5
call fcn.00424fd0
test al, al
je 0x40d0cb
push str.IR_Button
lea ecx, [esp + 0x2c]
call fcn.004253d0
test al, al
je 0x40d0b9
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
push ebx
push ecx
push edx
lea ecx, [esp + 0x34]
call fcn.0040dda0
push str.Version
lea ecx, [esp + 0x2c]
call fcn.00425430
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
push ebx
push eax
push ecx
lea ecx, [esp + 0x34]
call fcn.0040dda0
push str.Type
lea ecx, [esp + 0x2c]
call fcn.00425430
test al, al
je 0x40baaf
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 4], eax
call fcn.0058f6df
push str.Info
lea ecx, [esp + 0x2c]
call fcn.00425430
test al, al
je 0x40bd4d
lea ecx, [esp + 0x28]
call fcn.004256e0
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
push ebx
push eax
push ecx
lea ecx, [esp + 0x34]
call fcn.0040dda0
push str.Name
lea ecx, [esp + 0x2c]
call fcn.00425430
test al, al
je 0x40bb24
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
push eax
lea ecx, [esi + 8]
mov byte [esp + 0x8c], 6
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
push ebx
push eax
push ecx
lea ecx, [esp + 0x34]
call fcn.0040dda0
push str.Desc
lea ecx, [esp + 0x2c]
call fcn.00425430
test al, al
je 0x40bb7a
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
push eax
lea ecx, [esi + 0xc]
mov byte [esp + 0x8c], 7
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
push ebx
push eax
push ecx
lea ecx, [esp + 0x34]
call fcn.0040dda0
push 0x602600
lea ecx, [esp + 0x2c]
call fcn.00425430
test al, al
je 0x40bbd0
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
push eax
lea ecx, [esi + 0x10]
mov byte [esp + 0x8c], 8
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push 0x6025f4
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40bc2d
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
push eax
lea ecx, [esi + 0x14]
mov byte [esp + 0x8c], 9
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push 0x6025f0
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40bc8a
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
push eax
lea ecx, [esi + 0x18]
mov byte [esp + 0x8c], 0xa
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Email
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40bce7
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
push eax
lea ecx, [esi + 0x1c]
mov byte [esp + 0x8c], 0xb
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.Other
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40bd44
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
push eax
lea ecx, [esi + 0x20]
mov byte [esp + 0x8c], 0xc
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.HitThreshold
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40bd9f
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x24], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Caption
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c16f
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Text
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40be36
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
push eax
lea ecx, [esi + 0x28]
mov byte [esp + 0x8c], 0xd
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Font
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c0c2
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Face
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40becd
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
push eax
lea ecx, [esi + 0x2c]
mov byte [esp + 0x8c], 0xe
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.CharSet
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40bf1f
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x30], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.Size
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40bf71
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x34], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Bold
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40bfc3
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x38], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Italic
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c015
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x3c], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.Underline
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c067
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x40], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Strikeout
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c0b9
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x44], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.CenterX
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c114
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x48], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.CenterY
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c166
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esi + 0x4c], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push 0x602564
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c9c5
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.Normal
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c3fa
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Image
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c242
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
push eax
lea ecx, [esi + 0x50]
mov byte [esp + 0x8c], 0xf
call fcn.0058f818
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
jmp 0x40c258
push str.Failed_to_find__UpNormalImage__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.FontColor
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c34b
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov edi, dword [eax]
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x10
call fcn.0040dd80
mov ebp, dword [eax]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x11
call fcn.0040dd80
mov ecx, dword [eax]
push 0x10
push ebx
push ebp
mov dword [esp + 0x24], ecx
call fcn.00574c85
xor edx, edx
push 0x10
mov dl, ah
xor eax, eax
mov ah, dl
push ebx
push edi
mov dword [esp + 0x2c], eax
call fcn.00574c85
mov ecx, dword [esp + 0x2c]
push 0x10
shr eax, 0x10
mov cl, al
mov eax, dword [esp + 0x34]
push 0
push eax
mov dword [esp + 0x3c], ecx
call fcn.00574c85
mov ecx, dword [esp + 0x3c]
and eax, 0xff
shl eax, 0x10
or ecx, eax
add esp, 0x24
mov dword [esi + 0x54], ecx
lea ecx, [esp + 0x1c]
call fcn.0058f6df
lea ecx, [esp + 0x20]
mov byte [esp + 0x88], 0x10
call fcn.0058f6df
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov ebp, dword [esp + 0x10]
xor ebx, ebx
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.DeltaX
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c39d
lea edx, [esp + 0x24]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x58], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.DeltaY
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c3ef
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x5c], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
jmp 0x40c410
push str.Failed_to_find__UpNormal__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Highlight
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c661
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.Image
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c4a9
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
push eax
lea ecx, [esi + 0x60]
mov byte [esp + 0x8c], 0x12
call fcn.0058f818
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 5
call fcn.0058f6df
jmp 0x40c4bf
push str.Failed_to_find__UpHighlightImage__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.FontColor
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c5b2
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov edi, dword [eax]
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x13
call fcn.0040dd80
mov ebp, dword [eax]
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x14
call fcn.0040dd80
mov eax, dword [eax]
push 0x10
push ebx
push ebp
mov dword [esp + 0x2c], eax
call fcn.00574c85
xor ecx, ecx
push 0x10
mov cl, ah
xor eax, eax
mov ah, cl
push ebx
push edi
mov dword [esp + 0x3c], eax
call fcn.00574c85
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
shr eax, 0x10
push 0x10
mov cl, al
push 0
push edx
mov dword [esp + 0x48], ecx
call fcn.00574c85
mov ecx, dword [esp + 0x48]
and eax, 0xff
shl eax, 0x10
or ecx, eax
add esp, 0x24
mov dword [esi + 0x64], ecx
lea ecx, [esp + 0x1c]
call fcn.0058f6df
lea ecx, [esp + 0x18]
mov byte [esp + 0x88], 0x13
call fcn.0058f6df
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov ebp, dword [esp + 0x10]
xor ebx, ebx
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.DeltaX
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c604
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x68], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.DeltaY
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c656
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x6c], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
jmp 0x40c677
push str.Failed_to_find__UpHighlight__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Disabled
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c8c8
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Image
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c710
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
push eax
lea ecx, [esi + 0x70]
mov byte [esp + 0x8c], 0x15
call fcn.0058f818
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 5
call fcn.0058f6df
jmp 0x40c726
push str.Failed_to_find__UpDisabledImage__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.FontColor
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40c819
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov edi, dword [eax]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x16
call fcn.0040dd80
mov ebp, dword [eax]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x17
call fcn.0040dd80
mov edx, dword [eax]
push 0x10
push ebx
push ebp
mov dword [esp + 0x2c], edx
call fcn.00574c85
xor ecx, ecx
push 0x10
mov cl, ah
xor eax, eax
mov ah, cl
push ebx
push edi
mov dword [esp + 0x3c], eax
call fcn.00574c85
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
shr eax, 0x10
push 0x10
mov cl, al
push 0
push edx
mov dword [esp + 0x48], ecx
call fcn.00574c85
mov ecx, dword [esp + 0x48]
and eax, 0xff
shl eax, 0x10
or ecx, eax
add esp, 0x24
mov dword [esi + 0x74], ecx
lea ecx, [esp + 0x1c]
call fcn.0058f6df
lea ecx, [esp + 0x18]
mov byte [esp + 0x88], 0x16
call fcn.0058f6df
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov ebp, dword [esp + 0x10]
xor ebx, ebx
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.DeltaX
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c86b
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x78], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.DeltaY
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40c8bd
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x7c], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
jmp 0x40c8de
push str.Failed_to_find__UpDisabled__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
lea ecx, [esp + 0x28]
call fcn.00425720
cmp ebp, ebx
je 0x40d0e1
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Down
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40d0a7
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Normal
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40cb9b
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.Image
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40c9da
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
push eax
lea ecx, [esi + 0x80]
mov byte [esp + 0x8c], 0x18
call fcn.0058f818
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 5
call fcn.0058f6df
jmp 0x40c9f0
push str.Failed_to_find__Up__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
jmp 0x40d0df
push str.Failed_to_find__DownNormalImage__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.FontColor
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40cae6
lea eax, [esp + 0x14]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov edi, dword [eax]
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x19
call fcn.0040dd80
mov ebp, dword [eax]
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x1a
call fcn.0040dd80
mov eax, dword [eax]
push 0x10
push ebx
push ebp
mov dword [esp + 0x2c], eax
call fcn.00574c85
xor ecx, ecx
push 0x10
mov cl, ah
xor eax, eax
mov ah, cl
push ebx
push edi
mov dword [esp + 0x3c], eax
call fcn.00574c85
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
shr eax, 0x10
push 0x10
mov cl, al
push 0
push edx
mov dword [esp + 0x48], ecx
call fcn.00574c85
mov ecx, dword [esp + 0x48]
and eax, 0xff
shl eax, 0x10
or ecx, eax
add esp, 0x24
mov dword [esi + 0x84], ecx
lea ecx, [esp + 0x1c]
call fcn.0058f6df
lea ecx, [esp + 0x18]
mov byte [esp + 0x88], 0x19
call fcn.0058f6df
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov ebp, dword [esp + 0x10]
xor ebx, ebx
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.DeltaX
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40cb3b
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x88], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.DeltaY
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40cb90
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x8c], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
jmp 0x40cbb1
push str.Failed_to_find__DownNormal__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Highlight
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40ce0e
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Image
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40cc4d
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
push eax
lea ecx, [esi + 0x90]
mov byte [esp + 0x8c], 0x1b
call fcn.0058f818
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 5
call fcn.0058f6df
jmp 0x40cc63
push str.Failed_to_find__DownHighlightImage__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.FontColor
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40cd59
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov edi, dword [eax]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x1c
call fcn.0040dd80
mov ebp, dword [eax]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x1d
call fcn.0040dd80
mov edx, dword [eax]
push 0x10
push ebx
push ebp
mov dword [esp + 0x2c], edx
call fcn.00574c85
xor ecx, ecx
push 0x10
mov cl, ah
xor eax, eax
mov ah, cl
push ebx
push edi
mov dword [esp + 0x3c], eax
call fcn.00574c85
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
shr eax, 0x10
push 0x10
mov cl, al
push 0
push edx
mov dword [esp + 0x48], ecx
call fcn.00574c85
mov ecx, dword [esp + 0x48]
and eax, 0xff
shl eax, 0x10
or ecx, eax
add esp, 0x24
mov dword [esi + 0x94], ecx
lea ecx, [esp + 0x1c]
call fcn.0058f6df
lea ecx, [esp + 0x18]
mov byte [esp + 0x88], 0x1c
call fcn.0058f6df
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov ebp, dword [esp + 0x10]
xor ebx, ebx
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.DeltaX
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40cdae
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x98], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.DeltaY
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40ce03
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0x9c], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
jmp 0x40ce24
push str.Failed_to_find__DownHighlight__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.Disabled
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40d08a
lea ecx, [esp + 0x28]
call fcn.004256e0
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.Image
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40cec0
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
push eax
lea ecx, [esi + 0xa0]
mov byte [esp + 0x8c], 0x1e
call fcn.0058f818
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 5
call fcn.0058f6df
jmp 0x40ced6
push str.Failed_to_find__DownDisabledImage__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp edi, ebx
push str.FontColor
setne cl
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00425430
test al, al
je 0x40cfcc
lea edx, [esp + 0x14]
lea ecx, [esp + 0x28]
push edx
call fcn.0040dd80
mov edi, dword [eax]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x1f
call fcn.0040dd80
mov ebp, dword [eax]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x8c], 0x20
call fcn.0040dd80
mov edx, dword [eax]
push 0x10
push ebx
push ebp
mov dword [esp + 0x2c], edx
call fcn.00574c85
xor ecx, ecx
push 0x10
mov cl, ah
xor eax, eax
mov ah, cl
push ebx
push edi
mov dword [esp + 0x3c], eax
call fcn.00574c85
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
shr eax, 0x10
push 0x10
mov cl, al
push 0
push edx
mov dword [esp + 0x48], ecx
call fcn.00574c85
mov ecx, dword [esp + 0x48]
and eax, 0xff
shl eax, 0x10
or ecx, eax
add esp, 0x24
mov dword [esi + 0xa4], ecx
lea ecx, [esp + 0x1c]
call fcn.0058f6df
lea ecx, [esp + 0x18]
mov byte [esp + 0x88], 0x1f
call fcn.0058f6df
lea ecx, [esp + 0x14]
mov byte [esp + 0x88], 5
call fcn.0058f6df
mov ebp, dword [esp + 0x10]
xor ebx, ebx
mov edi, dword [esp + 0x4c]
xor eax, eax
cmp edi, ebx
push str.DeltaX
setne al
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], eax
call fcn.00425430
test al, al
je 0x40d021
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0xa8], eax
call fcn.0058f6df
mov edi, dword [esp + 0x4c]
xor edx, edx
cmp edi, ebx
push str.DeltaY
setne dl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x5c], edx
call fcn.00425430
test al, al
je 0x40d076
lea eax, [esp + 0x24]
lea ecx, [esp + 0x28]
push eax
call fcn.0040dd80
mov eax, dword [eax]
push eax
call fcn.0057405e
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esi + 0xac], eax
call fcn.0058f6df
lea ecx, [esp + 0x28]
call fcn.00425720
lea ecx, [esp + 0x28]
call fcn.00425720
jmp 0x40d0e1
push str.Failed_to_find__DownDisabled__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
lea ecx, [esp + 0x28]
xor ebp, ebp
call fcn.00425720
jmp 0x40d0e1
push str.Failed_to_find__Down__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
jmp 0x40d0df
push str.Failed_to_find__IR_Button__XML_tag.
lea ecx, [esi + 0xe0]
call fcn.0058f868
jmp 0x40d0df
add esi, 0xe0
push str.Could_not_set_XML_data.
push esi
call fcn.0058c6ce
add esp, 8
xor ebp, ebp
mov dword [esp + 0x28], vtable.CMarkup.0
lea ecx, [esp + 0x64]
mov dword [esp + 0x64], vtable.CMap_class_CString__char_const___struct_CMarkup::SavedPos__struct_CMarkup::SavedPos_.0
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x68]
mov byte [esp + 0x88], 0x24
cmp eax, ebx
je 0x40d138
mov ecx, dword [esp + 0x6c]
xor edi, edi
cmp ecx, ebx
jbe 0x40d138
mov esi, dword [eax + edi*4]
cmp esi, ebx
je 0x40d12f
lea edx, [esi + 8]
push 1
push edx
call fcn.0058c8ed
mov esi, dword [esi]
cmp esi, ebx
jne 0x40d11a
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc edi
cmp edi, ecx
jb 0x40d113
push eax
call fcn.0058f449
mov ecx, dword [esp + 0x7c]
add esp, 4
mov dword [esp + 0x68], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
call fcn.0058e55a
lea eax, [esp + 0x34]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], vtable.CArray_struct_CMarkup::ElemPos__struct_CMarkup::ElemPos__.0
mov eax, dword [esp + 0x38]
mov byte [esp + 0x88], 0x25
cmp eax, ebx
je 0x40d183
push eax
call fcn.0058f449
add esp, 4
lea ecx, [esp + 0x30]
mov byte [esp + 0x88], 0x21
call fcn.0058f6df
lea ecx, [esp + 0x2c]
mov byte [esp + 0x88], bl
call fcn.0058f6df
lea ecx, [esp + 0x90]
mov dword [esp + 0x88], 0xffffffff
call fcn.0058f6df
mov ecx, dword [esp + 0x80]
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x7c
ret 4