Function at 0x4a31b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6b8
mov eax, dword [0x537700]
xor eax, esp
mov dword [esp + 0x6b4], eax
mov eax, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 0xc]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x140], eax
lea eax, [esp + 0x294]
push edi
push eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x10], esi
call sym.ClientofCSP.exe_public:_class_DuiLib::CMarkupNode___thiscall_DuiLib::CMarkup::GetRoot_void_
lea ecx, [esp + 0x298]
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CMarkupNode::IsValid_void_const
test al, al
jne 0x4a321c
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x6b4]
xor ecx, esp
call fcn.004b847a
mov esp, ebp
pop ebp
ret 0xc
test esi, esi
je 0x4a44ae
lea eax, [esp + 0x88]
mov dword [esp + 0x34], 0
push eax
lea ecx, [esp + 0x29c]
call sym.ClientofCSP.exe_public:_class_DuiLib::CMarkupNode___thiscall_DuiLib::CMarkupNode::GetChild_void_
lea ecx, [esp + 0x88]
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CMarkupNode::IsValid_void_const
test al, al
je 0x4a390c
lea ecx, [esp + 0x88]
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetName_void_const
mov edx, 0x4fbe20
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x4a328d
test si, si
je 0x4a3289
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x4a328d
add ecx, 4
add edx, 4
test si, si
jne 0x4a3267
xor ecx, ecx
jmp 0x4a3292
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a341a
lea ecx, [esp + 0x88]
call sym.ClientofCSP.exe_public:_int___thiscall_DuiLib::CMarkupNode::GetAttributeCount_void_
xor edi, edi
mov dword [esp + 0x28], eax
mov dword [esp + 8], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], edi
test eax, eax
jle 0x4a38d0
push edi
lea ecx, [esp + 0x8c]
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x8c]
mov esi, eax
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeValue_int_
mov dword [esp + 0x24], eax
mov edx, str.name
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a331d
test di, di
je 0x4a3319
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x4a331d
add ecx, 4
add edx, 4
test ax, ax
jne 0x4a32f7
xor eax, eax
jmp 0x4a3322
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3333
mov eax, dword [esp + 0x24]
mov dword [esp + 8], eax
jmp 0x4a33e6
mov ecx, str.restype
mov eax, esi
nop word [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3366
test dx, dx
je 0x4a3362
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3366
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3340
xor eax, eax
jmp 0x4a336b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a337d
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 8]
mov dword [esp + 0x20], edx
jmp 0x4a33ea
mov eax, str.mask
mov cx, word [esi]
cmp cx, word [eax]
jne 0x4a33a8
test cx, cx
je 0x4a33a4
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x4a33a8
add esi, 4
add eax, 4
test cx, cx
jne 0x4a3382
xor eax, eax
jmp 0x4a33ad
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a33e2
mov eax, dword [esp + 0x24]
cmp word [eax], 0x23
jne 0x4a33c2
push eax
call dword [sym.imp.USER32.dll_CharNextW]
push 0x10
lea ecx, [esp + 0x38]
push ecx
push eax
call fcn.004cd39d
mov edx, dword [esp + 0x2c]
mov ecx, eax
mov eax, dword [esp + 0x14]
add esp, 0xc
mov dword [esp + 0x14], ecx
jmp 0x4a33ee
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
inc edi
mov dword [esp + 0x1c], edi
cmp edi, dword [esp + 0x28]
jl 0x4a32d0
test eax, eax
je 0x4a38d0
push ecx
mov ecx, dword [esp + 0x10]
push edx
push eax
call sym.ClientofCSP.exe_public:_struct_DuiLib::tagTImageInfo_const____thiscall_DuiLib::CPaintManagerUI::AddImage_wchar_t_const___wchar_t_const___unsigned_long_int_
jmp 0x4a38d0
mov edx, str.Font
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x4a3447
test si, si
je 0x4a3443
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x4a3447
add ecx, 4
add edx, 4
test si, si
jne 0x4a3421
xor ecx, ecx
jmp 0x4a344c
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a379b
lea ecx, [esp + 0x88]
call sym.ClientofCSP.exe_public:_int___thiscall_DuiLib::CMarkupNode::GetAttributeCount_void_
xor ecx, ecx
mov dword [esp + 0x14], 0xc
mov edx, eax
mov dword [esp + 8], ecx
mov byte [esp + 0x10], cl
xor edi, edi
mov byte [esp + 0x2c], cl
mov byte [esp + 0x30], cl
xor cl, cl
mov dword [esp + 0x28], edx
mov byte [esp + 0x1b], cl
mov dword [esp + 0x1c], edi
test edx, edx
jle 0x4a38d0
nop dword [eax]
nop dword [eax + eax]
push edi
lea ecx, [esp + 0x8c]
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x8c]
mov esi, eax
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeValue_int_
mov edx, str.name
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a34e9
test di, di
je 0x4a34e5
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x4a34e9
add ecx, 4
add edx, 4
test di, di
jne 0x4a34c3
xor ecx, ecx
jmp 0x4a34ee
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a34fb
mov dword [esp + 8], eax
jmp 0x4a373a
mov edx, str.size
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a3528
test di, di
je 0x4a3524
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x4a3528
add ecx, 4
add edx, 4
test di, di
jne 0x4a3502
xor ecx, ecx
jmp 0x4a352d
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a3550
push 0xa
lea ecx, [esp + 0x38]
push ecx
push eax
call fcn.004cd357
mov ecx, eax
add esp, 0xc
mov eax, dword [esp + 8]
mov dword [esp + 0x14], ecx
jmp 0x4a373e
mov edx, str.bold
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a357d
test di, di
je 0x4a3579
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x4a357d
add ecx, 4
add edx, 4
test di, di
jne 0x4a3557
xor ecx, ecx
jmp 0x4a3582
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a35d1
mov ecx, str.true
nop dword [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a35c0
test dx, dx
je 0x4a35b2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a35c0
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3590
xor eax, eax
test eax, eax
sete byte [esp + 0x10]
jmp 0x4a3736
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x10]
jmp 0x4a3736
mov edx, str.underline
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a35fe
test di, di
je 0x4a35fa
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x4a35fe
add ecx, 4
add edx, 4
test di, di
jne 0x4a35d8
xor ecx, ecx
jmp 0x4a3603
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a3651
mov ecx, str.true
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3640
test dx, dx
je 0x4a3632
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3640
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3610
xor eax, eax
test eax, eax
sete byte [esp + 0x2c]
jmp 0x4a3736
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x2c]
jmp 0x4a3736
mov edx, str.italic
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a367e
test di, di
je 0x4a367a
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x4a367e
add ecx, 4
add edx, 4
test di, di
jne 0x4a3658
xor ecx, ecx
jmp 0x4a3683
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a36cb
mov ecx, str.true
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a36bd
test dx, dx
je 0x4a36b2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a36bd
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3690
xor eax, eax
test eax, eax
sete byte [esp + 0x30]
jmp 0x4a3736
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x30]
jmp 0x4a3736
mov ecx, str.default
mov dx, word [esi]
cmp dx, word [ecx]
jne 0x4a36f6
test dx, dx
je 0x4a36f2
mov dx, word [esi + 2]
cmp dx, word [ecx + 2]
jne 0x4a36f6
add esi, 4
add ecx, 4
test dx, dx
jne 0x4a36d0
xor ecx, ecx
jmp 0x4a36fb
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x4a3736
mov ecx, str.true
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a372a
test dx, dx
je 0x4a3726
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a372a
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3704
xor eax, eax
jmp 0x4a372f
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x1b]
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
inc edi
mov dword [esp + 0x1c], edi
cmp edi, dword [esp + 0x28]
jl 0x4a34a0
test eax, eax
je 0x4a38d0
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x2c]
push esi
push edi
push dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x1c]
push eax
call sym.ClientofCSP.exe_public:_struct_HFONT______thiscall_DuiLib::CPaintManagerUI::AddFont_wchar_t_const___int__bool__bool__bool_
cmp byte [esp + 0x1b], 0
je 0x4a38d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 8]
push esi
push edi
push dword [esp + 0x18]
push eax
push ecx
mov ecx, dword [esp + 0x20]
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultFont_wchar_t_const___int__bool__bool__bool_
jmp 0x4a38d0
mov ecx, str.Default
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a37c6
test dx, dx
je 0x4a37c2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a37c6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a37a0
xor eax, eax
jmp 0x4a37cb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a38d0
lea ecx, [esp + 0x88]
call sym.ClientofCSP.exe_public:_int___thiscall_DuiLib::CMarkupNode::GetAttributeCount_void_
xor edi, edi
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 8], edi
test eax, eax
jle 0x4a38d0
push edi
lea ecx, [esp + 0x8c]
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x8c]
mov esi, eax
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeValue_int_
mov dword [esp + 0x1c], eax
mov edx, str.name
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x4a384e
test di, di
je 0x4a384a
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x4a384e
add ecx, 4
add edx, 4
test ax, ax
jne 0x4a3828
xor eax, eax
jmp 0x4a3853
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3865
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
jmp 0x4a38ae
mov eax, str.value
nop word [eax + eax]
mov cx, word [esi]
cmp cx, word [eax]
jne 0x4a3896
test cx, cx
je 0x4a3892
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x4a3896
add esi, 4
add eax, 4
test cx, cx
jne 0x4a3870
xor eax, eax
jmp 0x4a389b
sbb eax, eax
or eax, 1
mov ecx, dword [esp + 0x24]
test eax, eax
mov eax, dword [esp + 0x20]
cmove ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov edi, dword [esp + 8]
inc edi
mov dword [esp + 8], edi
cmp edi, dword [esp + 0x28]
jl 0x4a3801
test eax, eax
je 0x4a38d0
push ecx
mov ecx, dword [esp + 0x10]
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::AddDefaultAttributeList_wchar_t_const___wchar_t_const__
lea eax, [esp + 0x4a8]
push eax
lea ecx, [esp + 0x8c]
call sym.ClientofCSP.exe_public:_class_DuiLib::CMarkupNode___thiscall_DuiLib::CMarkupNode::GetSibling_void_
mov esi, eax
lea edi, [esp + 0x88]
mov ecx, 0x83
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x88]
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CMarkupNode::IsValid_void_const
test al, al
jne 0x4a3254
mov esi, dword [esp + 0xc]
lea ecx, [esp + 0x298]
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetName_void_const
mov ecx, str.Window
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3946
test dx, dx
je 0x4a3942
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3946
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3920
xor eax, eax
jmp 0x4a394b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a44ae
mov ecx, esi
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const
test eax, eax
je 0x4a44ae
lea ecx, [esp + 0x298]
call sym.ClientofCSP.exe_public:_int___thiscall_DuiLib::CMarkupNode::GetAttributeCount_void_
xor edi, edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x2c], edi
test eax, eax
jle 0x4a44ae
push edi
lea ecx, [esp + 0x29c]
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x29c]
mov esi, eax
call sym.ClientofCSP.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeValue_int_
mov edi, eax
mov edx, str.size
mov ecx, esi
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x4a39cb
test ax, ax
je 0x4a39c7
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x4a39cb
add ecx, 4
add edx, 4
test ax, ax
jne 0x4a39a5
xor eax, eax
jmp 0x4a39d0
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3a0e
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.004cd357
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetInitSize_int__int_
jmp 0x4a449b
mov ecx, str.sizebox
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3a3b
test dx, dx
je 0x4a3a37
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3a3b
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3a15
xor eax, eax
jmp 0x4a3a40
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3abe
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.004cd357
mov dword [esp + 0x64], eax
lea eax, [esp + 0x14]
push 0xa
push eax
mov eax, dword [esp + 0x1c]
add eax, 2
push eax
call fcn.004cd357
mov dword [esp + 0x74], eax
lea eax, [esp + 0x20]
push 0xa
push eax
mov eax, dword [esp + 0x28]
add eax, 2
push eax
call fcn.004cd357
mov dword [esp + 0x84], eax
lea eax, [esp + 0x2c]
push 0xa
push eax
mov eax, dword [esp + 0x34]
add eax, 2
push eax
call fcn.004cd357
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov dword [esp + 0x64], eax
lea eax, [esp + 0x58]
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetSizeBox_struct_tagRECT__
jmp 0x4a449b
mov ecx, str.caption
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3aeb
test dx, dx
je 0x4a3ae7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3aeb
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3ac5
xor eax, eax
jmp 0x4a3af0
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3b71
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.004cd357
mov dword [esp + 0x74], eax
lea eax, [esp + 0x14]
push 0xa
push eax
mov eax, dword [esp + 0x1c]
add eax, 2
push eax
call fcn.004cd357
mov dword [esp + 0x84], eax
lea eax, [esp + 0x20]
push 0xa
push eax
mov eax, dword [esp + 0x28]
add eax, 2
push eax
call fcn.004cd357
mov dword [esp + 0x94], eax
lea eax, [esp + 0x2c]
push 0xa
push eax
mov eax, dword [esp + 0x34]
add eax, 2
push eax
call fcn.004cd357
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov dword [esp + 0x74], eax
lea eax, [esp + 0x68]
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetCaptionRect_struct_tagRECT__
jmp 0x4a449b
mov ecx, str.roundcorner
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3b9e
test dx, dx
je 0x4a3b9a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3b9e
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3b78
xor eax, eax
jmp 0x4a3ba3
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3be1
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.004cd357
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetRoundCorner_int__int_
jmp 0x4a449b
mov ecx, str.mininfo
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3c0e
test dx, dx
je 0x4a3c0a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3c0e
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3be8
xor eax, eax
jmp 0x4a3c13
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3c51
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.004cd357
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetMinInfo_int__int_
jmp 0x4a449b
mov ecx, str.maxinfo
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3c7e
test dx, dx
je 0x4a3c7a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3c7e
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3c58
xor eax, eax
jmp 0x4a3c83
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3cc1
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.004cd357
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetMaxInfo_int__int_
jmp 0x4a449b
mov ecx, str.alpha
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3cee
test dx, dx
je 0x4a3cea
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3cee
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3cc8
xor eax, eax
jmp 0x4a3cf3
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3d0f
push edi
call fcn.004c4b32
mov ecx, dword [esp + 0x10]
add esp, 4
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetTransparent_int_
jmp 0x4a449b
mov ecx, str.bktrans
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3d3c
test dx, dx
je 0x4a3d38
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3d3c
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3d16
xor eax, eax
jmp 0x4a3d41
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3d92
mov eax, str.true
nop word [eax + eax]
mov cx, word [edi]
cmp cx, word [eax]
jne 0x4a3d76
test cx, cx
je 0x4a3d72
mov cx, word [edi + 2]
cmp cx, word [eax + 2]
jne 0x4a3d76
add edi, 4
add eax, 4
test cx, cx
jne 0x4a3d50
xor eax, eax
jmp 0x4a3d7b
sbb eax, eax
or eax, 1
mov ecx, dword [esp + 0xc]
test eax, eax
sete al
movzx eax, al
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetUseLayeredWindow_bool_
jmp 0x4a449b
mov ecx, str.gdiplustext
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3dc6
test dx, dx
je 0x4a3dc2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3dc6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3da0
xor eax, eax
jmp 0x4a3dcb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3e16
mov eax, str.true
mov cx, word [edi]
cmp cx, word [eax]
jne 0x4a3dfa
test cx, cx
je 0x4a3df6
mov cx, word [edi + 2]
cmp cx, word [eax + 2]
jne 0x4a3dfa
add edi, 4
add eax, 4
test cx, cx
jne 0x4a3dd4
xor eax, eax
jmp 0x4a3dff
sbb eax, eax
or eax, 1
mov ecx, dword [esp + 0xc]
test eax, eax
sete al
movzx eax, al
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetUseGdiplusText_bool_
jmp 0x4a449b
mov ecx, str.richeditcorner
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3e46
test dx, dx
je 0x4a3e42
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3e46
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3e20
xor eax, eax
jmp 0x4a3e4b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3ed2
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.004cd357
mov dword [esp + 0x84], eax
lea eax, [esp + 0x14]
push 0xa
push eax
mov eax, dword [esp + 0x1c]
add eax, 2
push eax
call fcn.004cd357
mov dword [esp + 0x94], eax
lea eax, [esp + 0x20]
push 0xa
push eax
mov eax, dword [esp + 0x28]
add eax, 2
push eax
call fcn.004cd357
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x2c]
push 0xa
push eax
mov eax, dword [esp + 0x34]
add eax, 2
push eax
call fcn.004cd357
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov dword [esp + 0x84], eax
lea eax, [esp + 0x78]
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetRichEditCorner_struct_tagRECT_const__
jmp 0x4a449b
mov ecx, str.disabledfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3f06
test dx, dx
je 0x4a3f02
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3f06
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3ee0
xor eax, eax
jmp 0x4a3f0b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3f45
cmp word [edi], 0x23
jne 0x4a3f1e
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
push 0x10
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
push edi
call fcn.004cd39d
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultDisabledColor_unsigned_long_int_
jmp 0x4a449b
mov ecx, str.defaultfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3f76
test dx, dx
je 0x4a3f72
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3f76
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3f50
xor eax, eax
jmp 0x4a3f7b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a3fb5
cmp word [edi], 0x23
jne 0x4a3f8e
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
push 0x10
lea eax, [esp + 0x34]
mov dword [esp + 0x34], 0
push eax
push edi
call fcn.004cd39d
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultFontColor_unsigned_long_int_
jmp 0x4a449b
mov ecx, str.linkfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a3fe6
test dx, dx
je 0x4a3fe2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a3fe6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a3fc0
xor eax, eax
jmp 0x4a3feb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a4025
cmp word [edi], 0x23
jne 0x4a3ffe
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
push 0x10
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edi
call fcn.004cd39d
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultLinkFontColor_unsigned_long_int_
jmp 0x4a449b
mov ecx, str.linkhoverfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a4056
test dx, dx
je 0x4a4052
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a4056
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a4030
xor eax, eax
jmp 0x4a405b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a4095
cmp word [edi], 0x23
jne 0x4a406e
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
push 0x10
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
push edi
call fcn.004cd39d
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultLinkHoverFontColor_unsigned_long_int_
jmp 0x4a449b
mov ecx, str.selectedcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a40c6
test dx, dx
je 0x4a40c2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a40c6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a40a0
xor eax, eax
jmp 0x4a40cb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a4105
cmp word [edi], 0x23
jne 0x4a40de
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
push 0x10
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
push edi
call fcn.004cd39d
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultSelectedBkColor_unsigned_long_int_
jmp 0x4a449b
mov ecx, str.shadowsize
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a4136
test dx, dx
je 0x4a4132
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a4136
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a4110
xor eax, eax
jmp 0x4a413b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a4160
mov ecx, dword [esp + 0xc]
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov esi, eax
call fcn.004c4b32
add esp, 4
mov ecx, esi
push eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetSize_int_
jmp 0x4a449b
mov ecx, str.shadowsharpness
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a418d
test dx, dx
je 0x4a4189
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a418d
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a4167
xor eax, eax
jmp 0x4a4192
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a41b7
mov ecx, dword [esp + 0xc]
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov esi, eax
call fcn.004c4b32
add esp, 4
mov ecx, esi
push eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetSharpness_unsigned_int_
jmp 0x4a449b
mov ecx, str.shadowdarkness
mov eax, esi
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a41e6
test dx, dx
je 0x4a41e2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a41e6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a41c0
xor eax, eax
jmp 0x4a41eb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a4210
mov ecx, dword [esp + 0xc]
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov esi, eax
call fcn.004c4b32
add esp, 4
mov ecx, esi
push eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetDarkness_unsigned_int_
jmp 0x4a449b
mov ecx, str.shadowposition
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a423d
test dx, dx
je 0x4a4239
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a423d
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a4217
xor eax, eax
jmp 0x4a4242
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a4289
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.004cd357
mov ecx, dword [esp + 0x1c]
mov edi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x24]
add esp, 0x18
mov esi, eax
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push esi
push edi
mov ecx, eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetPosition_int__int_
jmp 0x4a449b
mov ecx, str.shadowcolor
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a42b6
test dx, dx
je 0x4a42b2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a42b6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a4290
xor eax, eax
jmp 0x4a42bb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a42fe
cmp word [edi], 0x23
jne 0x4a42ce
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
push 0x10
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
push edi
call fcn.004cd39d
mov ecx, dword [esp + 0x18]
add esp, 0xc
mov esi, eax
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push esi
mov ecx, eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetColor_unsigned_long_int_
jmp 0x4a449b
mov ecx, str.shadowcorner
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a432b
test dx, dx
je 0x4a4327
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a432b
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a4305
xor eax, eax
jmp 0x4a4330
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a43ce
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.004cd357
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
add ecx, 2
push 0xa
lea eax, [esp + 0x18]
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x50], eax
add ecx, 2
push 0xa
lea eax, [esp + 0x24]
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x2c]
mov edi, eax
push 0xa
lea eax, [esp + 0x30]
add ecx, 2
push eax
push ecx
call fcn.004cd357
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov esi, eax
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
mov ecx, dword [esp + 0x10]
sub esp, 0x10
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x5c], ecx
mov ecx, esp
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], esi
movups xmm0, xmmword [esp + 0x58]
movups xmmword [ecx], xmm0
mov ecx, eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetShadowCorner_struct_tagRECT_
jmp 0x4a449b
mov ecx, str.shadowimage
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a43fb
test dx, dx
je 0x4a43f7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a43fb
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a43d5
xor eax, eax
jmp 0x4a4400
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a441a
mov ecx, dword [esp + 0xc]
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov ecx, eax
call sym.ClientofCSP.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetImage_wchar_t_const__
jmp 0x4a449b
mov eax, str.showshadow
nop
mov cx, word [esi]
cmp cx, word [eax]
jne 0x4a4446
test cx, cx
je 0x4a4442
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x4a4446
add esi, 4
add eax, 4
test cx, cx
jne 0x4a4420
xor eax, eax
jmp 0x4a444b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a449b
mov ecx, dword [esp + 0xc]
call sym.ClientofCSP.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
mov esi, eax
mov ecx, str.true
nop
mov dx, word [edi]
cmp dx, word [ecx]
jne 0x4a4486
test dx, dx
je 0x4a4482
mov ax, word [edi + 2]
cmp ax, word [ecx + 2]
jne 0x4a4486
add edi, 4
add ecx, 4
test ax, ax
jne 0x4a4460
xor eax, eax
jmp 0x4a448b
sbb eax, eax
or eax, 1
test eax, eax
mov ecx, esi
sete al
movzx eax, al
push eax
call sym.ClientofCSP.exe_public:_void___thiscall_DuiLib::CShadowUI::ShowShadow_bool_
mov edi, dword [esp + 0x2c]
inc edi
mov dword [esp + 0x2c], edi
cmp edi, dword [esp + 0x3c]
jl 0x4a3980
push dword [esp + 0xc]
mov ecx, dword [esp + 0x48]
lea eax, [esp + 0x29c]
push dword [esp + 0x44]
push eax
call sym.ClientofCSP.exe_private:_class_DuiLib::CControlUI____thiscall_DuiLib::CDialogBuilder::_Parse_class_DuiLib::CMarkupNode___class_DuiLib::CControlUI___class_DuiLib::CPaintManagerUI__
mov ecx, dword [esp + 0x6bc]
pop edi
pop esi
xor ecx, esp
call fcn.004b847a
mov esp, ebp
pop ebp
ret 0xc