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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6b8
mov eax, dword [0x4f7600]
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.MainExtractor.exe_public:_class_DuiLib::CMarkupNode___thiscall_DuiLib::CMarkup::GetRoot_void_
lea ecx, [esp + 0x298]
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CMarkupNode::IsValid_void_const
test al, al
jne 0x46a82c
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x6b4]
xor ecx, esp
call fcn.00489fe1
mov esp, ebp
pop ebp
ret 0xc
test esi, esi
je 0x46babe
lea eax, [esp + 0x88]
mov dword [esp + 0x34], 0
push eax
lea ecx, [esp + 0x29c]
call sym.MainExtractor.exe_public:_class_DuiLib::CMarkupNode___thiscall_DuiLib::CMarkupNode::GetChild_void_
lea ecx, [esp + 0x88]
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CMarkupNode::IsValid_void_const
test al, al
je 0x46af1c
lea ecx, [esp + 0x88]
call sym.MainExtractor.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetName_void_const
mov edx, str.Image
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x46a89d
test si, si
je 0x46a899
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x46a89d
add ecx, 4
add edx, 4
test si, si
jne 0x46a877
xor ecx, ecx
jmp 0x46a8a2
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46aa2a
lea ecx, [esp + 0x88]
call sym.MainExtractor.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 0x46aee0
push edi
lea ecx, [esp + 0x8c]
call sym.MainExtractor.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x8c]
mov esi, eax
call sym.MainExtractor.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 0x46a92d
test di, di
je 0x46a929
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x46a92d
add ecx, 4
add edx, 4
test ax, ax
jne 0x46a907
xor eax, eax
jmp 0x46a932
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46a943
mov eax, dword [esp + 0x24]
mov dword [esp + 8], eax
jmp 0x46a9f6
mov ecx, str.restype
mov eax, esi
nop word [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46a976
test dx, dx
je 0x46a972
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46a976
add eax, 4
add ecx, 4
test dx, dx
jne 0x46a950
xor eax, eax
jmp 0x46a97b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46a98d
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 8]
mov dword [esp + 0x20], edx
jmp 0x46a9fa
mov eax, str.mask
mov cx, word [esi]
cmp cx, word [eax]
jne 0x46a9b8
test cx, cx
je 0x46a9b4
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x46a9b8
add esi, 4
add eax, 4
test cx, cx
jne 0x46a992
xor eax, eax
jmp 0x46a9bd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46a9f2
mov eax, dword [esp + 0x24]
cmp word [eax], 0x23
jne 0x46a9d2
push eax
call dword [sym.imp.USER32.dll_CharNextW]
push 0x10
lea ecx, [esp + 0x38]
push ecx
push eax
call fcn.004973ba
mov edx, dword [esp + 0x2c]
mov ecx, eax
mov eax, dword [esp + 0x14]
add esp, 0xc
mov dword [esp + 0x14], ecx
jmp 0x46a9fe
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 0x46a8e0
test eax, eax
je 0x46aee0
push ecx
mov ecx, dword [esp + 0x10]
push edx
push eax
call sym.MainExtractor.exe_public:_struct_DuiLib::tagTImageInfo_const____thiscall_DuiLib::CPaintManagerUI::AddImage_wchar_t_const___wchar_t_const___unsigned_long_int_
jmp 0x46aee0
mov edx, str.Font
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x46aa57
test si, si
je 0x46aa53
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x46aa57
add ecx, 4
add edx, 4
test si, si
jne 0x46aa31
xor ecx, ecx
jmp 0x46aa5c
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46adab
lea ecx, [esp + 0x88]
call sym.MainExtractor.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 0x46aee0
nop dword [eax]
nop dword [eax + eax]
push edi
lea ecx, [esp + 0x8c]
call sym.MainExtractor.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x8c]
mov esi, eax
call sym.MainExtractor.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 0x46aaf9
test di, di
je 0x46aaf5
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x46aaf9
add ecx, 4
add edx, 4
test di, di
jne 0x46aad3
xor ecx, ecx
jmp 0x46aafe
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46ab0b
mov dword [esp + 8], eax
jmp 0x46ad4a
mov edx, str.size
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x46ab38
test di, di
je 0x46ab34
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x46ab38
add ecx, 4
add edx, 4
test di, di
jne 0x46ab12
xor ecx, ecx
jmp 0x46ab3d
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46ab60
push 0xa
lea ecx, [esp + 0x38]
push ecx
push eax
call fcn.00497374
mov ecx, eax
add esp, 0xc
mov eax, dword [esp + 8]
mov dword [esp + 0x14], ecx
jmp 0x46ad4e
mov edx, str.bold
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x46ab8d
test di, di
je 0x46ab89
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x46ab8d
add ecx, 4
add edx, 4
test di, di
jne 0x46ab67
xor ecx, ecx
jmp 0x46ab92
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46abe1
mov ecx, str.true
nop dword [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46abd0
test dx, dx
je 0x46abc2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46abd0
add eax, 4
add ecx, 4
test dx, dx
jne 0x46aba0
xor eax, eax
test eax, eax
sete byte [esp + 0x10]
jmp 0x46ad46
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x10]
jmp 0x46ad46
mov edx, str.underline
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x46ac0e
test di, di
je 0x46ac0a
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x46ac0e
add ecx, 4
add edx, 4
test di, di
jne 0x46abe8
xor ecx, ecx
jmp 0x46ac13
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46ac61
mov ecx, str.true
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46ac50
test dx, dx
je 0x46ac42
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46ac50
add eax, 4
add ecx, 4
test dx, dx
jne 0x46ac20
xor eax, eax
test eax, eax
sete byte [esp + 0x2c]
jmp 0x46ad46
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x2c]
jmp 0x46ad46
mov edx, str.italic
mov ecx, esi
mov di, word [ecx]
cmp di, word [edx]
jne 0x46ac8e
test di, di
je 0x46ac8a
mov di, word [ecx + 2]
cmp di, word [edx + 2]
jne 0x46ac8e
add ecx, 4
add edx, 4
test di, di
jne 0x46ac68
xor ecx, ecx
jmp 0x46ac93
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46acdb
mov ecx, str.true
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46accd
test dx, dx
je 0x46acc2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46accd
add eax, 4
add ecx, 4
test dx, dx
jne 0x46aca0
xor eax, eax
test eax, eax
sete byte [esp + 0x30]
jmp 0x46ad46
sbb eax, eax
or eax, 1
test eax, eax
sete byte [esp + 0x30]
jmp 0x46ad46
mov ecx, str.default
mov dx, word [esi]
cmp dx, word [ecx]
jne 0x46ad06
test dx, dx
je 0x46ad02
mov dx, word [esi + 2]
cmp dx, word [ecx + 2]
jne 0x46ad06
add esi, 4
add ecx, 4
test dx, dx
jne 0x46ace0
xor ecx, ecx
jmp 0x46ad0b
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x46ad46
mov ecx, str.true
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46ad3a
test dx, dx
je 0x46ad36
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46ad3a
add eax, 4
add ecx, 4
test dx, dx
jne 0x46ad14
xor eax, eax
jmp 0x46ad3f
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 0x46aab0
test eax, eax
je 0x46aee0
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.MainExtractor.exe_public:_struct_HFONT______thiscall_DuiLib::CPaintManagerUI::AddFont_wchar_t_const___int__bool__bool__bool_
cmp byte [esp + 0x1b], 0
je 0x46aee0
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.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultFont_wchar_t_const___int__bool__bool__bool_
jmp 0x46aee0
mov ecx, str.Default
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46add6
test dx, dx
je 0x46add2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46add6
add eax, 4
add ecx, 4
test dx, dx
jne 0x46adb0
xor eax, eax
jmp 0x46addb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46aee0
lea ecx, [esp + 0x88]
call sym.MainExtractor.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 0x46aee0
push edi
lea ecx, [esp + 0x8c]
call sym.MainExtractor.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x8c]
mov esi, eax
call sym.MainExtractor.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 0x46ae5e
test di, di
je 0x46ae5a
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x46ae5e
add ecx, 4
add edx, 4
test ax, ax
jne 0x46ae38
xor eax, eax
jmp 0x46ae63
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46ae75
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
jmp 0x46aebe
mov eax, str.value
nop word [eax + eax]
mov cx, word [esi]
cmp cx, word [eax]
jne 0x46aea6
test cx, cx
je 0x46aea2
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x46aea6
add esi, 4
add eax, 4
test cx, cx
jne 0x46ae80
xor eax, eax
jmp 0x46aeab
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 0x46ae11
test eax, eax
je 0x46aee0
push ecx
mov ecx, dword [esp + 0x10]
push eax
call sym.MainExtractor.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.MainExtractor.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.MainExtractor.exe_public:_bool___thiscall_DuiLib::CMarkupNode::IsValid_void_const
test al, al
jne 0x46a864
mov esi, dword [esp + 0xc]
lea ecx, [esp + 0x298]
call sym.MainExtractor.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 0x46af56
test dx, dx
je 0x46af52
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46af56
add eax, 4
add ecx, 4
test dx, dx
jne 0x46af30
xor eax, eax
jmp 0x46af5b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46babe
mov ecx, esi
call sym.MainExtractor.exe_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const
test eax, eax
je 0x46babe
lea ecx, [esp + 0x298]
call sym.MainExtractor.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 0x46babe
push edi
lea ecx, [esp + 0x29c]
call sym.MainExtractor.exe_public:_wchar_t_const____thiscall_DuiLib::CMarkupNode::GetAttributeName_int_
push edi
lea ecx, [esp + 0x29c]
mov esi, eax
call sym.MainExtractor.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 0x46afdb
test ax, ax
je 0x46afd7
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x46afdb
add ecx, 4
add edx, 4
test ax, ax
jne 0x46afb5
xor eax, eax
jmp 0x46afe0
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b01e
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.00497374
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.00497374
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetInitSize_int__int_
jmp 0x46baab
mov ecx, str.sizebox
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b04b
test dx, dx
je 0x46b047
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b04b
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b025
xor eax, eax
jmp 0x46b050
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b0ce
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.00497374
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.00497374
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.00497374
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.00497374
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov dword [esp + 0x64], eax
lea eax, [esp + 0x58]
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetSizeBox_struct_tagRECT__
jmp 0x46baab
mov ecx, str.caption
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b0fb
test dx, dx
je 0x46b0f7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b0fb
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b0d5
xor eax, eax
jmp 0x46b100
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b181
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.00497374
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.00497374
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.00497374
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.00497374
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov dword [esp + 0x74], eax
lea eax, [esp + 0x68]
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetCaptionRect_struct_tagRECT__
jmp 0x46baab
mov ecx, str.roundcorner
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b1ae
test dx, dx
je 0x46b1aa
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b1ae
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b188
xor eax, eax
jmp 0x46b1b3
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b1f1
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.00497374
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.00497374
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetRoundCorner_int__int_
jmp 0x46baab
mov ecx, str.mininfo
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b21e
test dx, dx
je 0x46b21a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b21e
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b1f8
xor eax, eax
jmp 0x46b223
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b261
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.00497374
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.00497374
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetMinInfo_int__int_
jmp 0x46baab
mov ecx, str.maxinfo
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b28e
test dx, dx
je 0x46b28a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b28e
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b268
xor eax, eax
jmp 0x46b293
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b2d1
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.00497374
mov ecx, dword [esp + 0x1c]
mov esi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.00497374
mov ecx, dword [esp + 0x24]
add esp, 0x18
push eax
push esi
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetMaxInfo_int__int_
jmp 0x46baab
mov ecx, str.alpha
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b2fe
test dx, dx
je 0x46b2fa
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b2fe
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b2d8
xor eax, eax
jmp 0x46b303
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b31f
push edi
call fcn.00497633
mov ecx, dword [esp + 0x10]
add esp, 4
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetTransparent_int_
jmp 0x46baab
mov ecx, str.bktrans
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b34c
test dx, dx
je 0x46b348
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b34c
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b326
xor eax, eax
jmp 0x46b351
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b3a2
mov eax, str.true
nop word [eax + eax]
mov cx, word [edi]
cmp cx, word [eax]
jne 0x46b386
test cx, cx
je 0x46b382
mov cx, word [edi + 2]
cmp cx, word [eax + 2]
jne 0x46b386
add edi, 4
add eax, 4
test cx, cx
jne 0x46b360
xor eax, eax
jmp 0x46b38b
sbb eax, eax
or eax, 1
mov ecx, dword [esp + 0xc]
test eax, eax
sete al
movzx eax, al
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetUseLayeredWindow_bool_
jmp 0x46baab
mov ecx, str.gdiplustext
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b3d6
test dx, dx
je 0x46b3d2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b3d6
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b3b0
xor eax, eax
jmp 0x46b3db
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b426
mov eax, str.true
mov cx, word [edi]
cmp cx, word [eax]
jne 0x46b40a
test cx, cx
je 0x46b406
mov cx, word [edi + 2]
cmp cx, word [eax + 2]
jne 0x46b40a
add edi, 4
add eax, 4
test cx, cx
jne 0x46b3e4
xor eax, eax
jmp 0x46b40f
sbb eax, eax
or eax, 1
mov ecx, dword [esp + 0xc]
test eax, eax
sete al
movzx eax, al
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetUseGdiplusText_bool_
jmp 0x46baab
mov ecx, str.richeditcorner
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b456
test dx, dx
je 0x46b452
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b456
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b430
xor eax, eax
jmp 0x46b45b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b4e2
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.00497374
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.00497374
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.00497374
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.00497374
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov dword [esp + 0x84], eax
lea eax, [esp + 0x78]
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetRichEditCorner_struct_tagRECT_const__
jmp 0x46baab
mov ecx, str.disabledfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b516
test dx, dx
je 0x46b512
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b516
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b4f0
xor eax, eax
jmp 0x46b51b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b555
cmp word [edi], 0x23
jne 0x46b52e
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.004973ba
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultDisabledColor_unsigned_long_int_
jmp 0x46baab
mov ecx, str.defaultfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b586
test dx, dx
je 0x46b582
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b586
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b560
xor eax, eax
jmp 0x46b58b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b5c5
cmp word [edi], 0x23
jne 0x46b59e
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.004973ba
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultFontColor_unsigned_long_int_
jmp 0x46baab
mov ecx, str.linkfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b5f6
test dx, dx
je 0x46b5f2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b5f6
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b5d0
xor eax, eax
jmp 0x46b5fb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b635
cmp word [edi], 0x23
jne 0x46b60e
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.004973ba
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultLinkFontColor_unsigned_long_int_
jmp 0x46baab
mov ecx, str.linkhoverfontcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b666
test dx, dx
je 0x46b662
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b666
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b640
xor eax, eax
jmp 0x46b66b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b6a5
cmp word [edi], 0x23
jne 0x46b67e
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.004973ba
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultLinkHoverFontColor_unsigned_long_int_
jmp 0x46baab
mov ecx, str.selectedcolor
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b6d6
test dx, dx
je 0x46b6d2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b6d6
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b6b0
xor eax, eax
jmp 0x46b6db
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b715
cmp word [edi], 0x23
jne 0x46b6ee
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.004973ba
mov ecx, dword [esp + 0x18]
add esp, 0xc
push eax
call sym.MainExtractor.exe_public:_void___thiscall_DuiLib::CPaintManagerUI::SetDefaultSelectedBkColor_unsigned_long_int_
jmp 0x46baab
mov ecx, str.shadowsize
mov eax, esi
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b746
test dx, dx
je 0x46b742
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b746
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b720
xor eax, eax
jmp 0x46b74b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b770
mov ecx, dword [esp + 0xc]
call sym.MainExtractor.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov esi, eax
call fcn.00497633
add esp, 4
mov ecx, esi
push eax
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetSize_int_
jmp 0x46baab
mov ecx, str.shadowsharpness
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b79d
test dx, dx
je 0x46b799
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b79d
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b777
xor eax, eax
jmp 0x46b7a2
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b7c7
mov ecx, dword [esp + 0xc]
call sym.MainExtractor.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov esi, eax
call fcn.00497633
add esp, 4
mov ecx, esi
push eax
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetSharpness_unsigned_int_
jmp 0x46baab
mov ecx, str.shadowdarkness
mov eax, esi
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b7f6
test dx, dx
je 0x46b7f2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b7f6
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b7d0
xor eax, eax
jmp 0x46b7fb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b820
mov ecx, dword [esp + 0xc]
call sym.MainExtractor.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov esi, eax
call fcn.00497633
add esp, 4
mov ecx, esi
push eax
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetDarkness_unsigned_int_
jmp 0x46baab
mov ecx, str.shadowposition
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b84d
test dx, dx
je 0x46b849
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b84d
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b827
xor eax, eax
jmp 0x46b852
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b899
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push 0xa
push eax
push edi
call fcn.00497374
mov ecx, dword [esp + 0x1c]
mov edi, eax
push 0xa
lea eax, [esp + 0x20]
add ecx, 2
push eax
push ecx
call fcn.00497374
mov ecx, dword [esp + 0x24]
add esp, 0x18
mov esi, eax
call sym.MainExtractor.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push esi
push edi
mov ecx, eax
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetPosition_int__int_
jmp 0x46baab
mov ecx, str.shadowcolor
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b8c6
test dx, dx
je 0x46b8c2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b8c6
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b8a0
xor eax, eax
jmp 0x46b8cb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b90e
cmp word [edi], 0x23
jne 0x46b8de
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.004973ba
mov ecx, dword [esp + 0x18]
add esp, 0xc
mov esi, eax
call sym.MainExtractor.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push esi
mov ecx, eax
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetColor_unsigned_long_int_
jmp 0x46baab
mov ecx, str.shadowcorner
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46b93b
test dx, dx
je 0x46b937
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46b93b
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b915
xor eax, eax
jmp 0x46b940
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46b9de
mov dword [esp + 8], eax
lea eax, [esp + 8]
push 0xa
push eax
push edi
call fcn.00497374
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.00497374
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.00497374
mov ecx, dword [esp + 0x2c]
mov edi, eax
push 0xa
lea eax, [esp + 0x30]
add ecx, 2
push eax
push ecx
call fcn.00497374
mov ecx, dword [esp + 0x3c]
add esp, 0x30
mov esi, eax
call sym.MainExtractor.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.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetShadowCorner_struct_tagRECT_
jmp 0x46baab
mov ecx, str.shadowimage
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x46ba0b
test dx, dx
je 0x46ba07
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x46ba0b
add eax, 4
add ecx, 4
test dx, dx
jne 0x46b9e5
xor eax, eax
jmp 0x46ba10
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46ba2a
mov ecx, dword [esp + 0xc]
call sym.MainExtractor.exe_public:_class_DuiLib::CShadowUI____thiscall_DuiLib::CPaintManagerUI::GetShadow_void_
push edi
mov ecx, eax
call sym.MainExtractor.exe_public:_bool___thiscall_DuiLib::CShadowUI::SetImage_wchar_t_const__
jmp 0x46baab
mov eax, str.showshadow
nop
mov cx, word [esi]
cmp cx, word [eax]
jne 0x46ba56
test cx, cx
je 0x46ba52
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x46ba56
add esi, 4
add eax, 4
test cx, cx
jne 0x46ba30
xor eax, eax
jmp 0x46ba5b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x46baab
mov ecx, dword [esp + 0xc]
call sym.MainExtractor.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 0x46ba96
test dx, dx
je 0x46ba92
mov ax, word [edi + 2]
cmp ax, word [ecx + 2]
jne 0x46ba96
add edi, 4
add ecx, 4
test ax, ax
jne 0x46ba70
xor eax, eax
jmp 0x46ba9b
sbb eax, eax
or eax, 1
test eax, eax
mov ecx, esi
sete al
movzx eax, al
push eax
call sym.MainExtractor.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 0x46af90
push dword [esp + 0xc]
mov ecx, dword [esp + 0x48]
lea eax, [esp + 0x29c]
push dword [esp + 0x44]
push eax
call sym.MainExtractor.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.00489fe1
mov esp, ebp
pop ebp
ret 0xc