Function at 0x45c0d6
Capabilities:
Print debug messages

Disassembly:
push 0x6e4
mov eax, 0x5e8389
call fcn.00423157
mov dword [ebp - 0x684], ecx
mov esi, dword [ebp + 8]
xor ebx, ebx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x668], esi
mov dword [ebp - 0x6b8], ebx
mov dword [ebp - 0x6b4], ebx
mov dword [ebp - 0x6b0], ebx
mov dword [ebp - 0x6ac], ebx
push eax
lea ecx, [ebp - 0x658]
mov dword [ebp - 4], ebx
call fcn.00401ef0
lea eax, [ebp - 0x6b8]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x658]
push eax
call fcn.004043e0
cmp eax, 2
pop ecx
pop ecx
setne byte [ebp - 0x659]
mov ecx, dword [ebp - 0x658]
add ecx, 0xfffffff4
mov byte [ebp - 4], 2
cmp ecx, dword [0x66f994]
je 0x45c15d
call fcn.00414d2c
cmp byte [ebp - 0x659], 0
mov edi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov byte [ebp - 4], bl
je 0x45c2b2
mov ecx, dword [0x67eb4c]
test ecx, ecx
je 0x45c18a
call fcn.0044202c
mov dword [ebp - 0x660], eax
jmp 0x45c190
mov dword [ebp - 0x660], ebx
push 0x2801
call fcn.004ac74e
mov dword [ebp - 0x654], eax
mov dword [esp], 0x5002
call fcn.004ac74e
mov dword [esp], str.warning_____Add_ResProvider_Error.
push 0xffffffffffffffff
push 0x2800
push eax
mov dword [ebp - 0x664], eax
call fcn.00407ae0
add esp, 0x10
mov dword [ebp - 0x658], eax
push ebx
push ebx
push ebx
push ebx
push eax
push dword [ebp - 0x664]
push ebx
push ebx
call edi
mov ecx, eax
mov eax, dword [ebp - 0x658]
cmp eax, 0x2800
jge 0x45c210
push ebx
push ebx
push ecx
push dword [ebp - 0x654]
push eax
push dword [ebp - 0x664]
push ebx
push ebx
call edi
mov eax, dword [ebp - 0x654]
mov ecx, dword [ebp - 0x658]
mov byte [ecx + eax], bl
push dword [ebp - 0x664]
call fcn.004ac749
pop ecx
mov ecx, dword [ebp - 0x660]
test ecx, ecx
je 0x45c25c
mov eax, dword [ecx]
push 1
push ebx
call dword [eax + 0x2c]
test al, al
je 0x45c25c
push dword [ebp + 4]
mov ecx, dword [ebp - 0x660]
push str.SOUI::SUiDefInfo::Init
push 0x56
push str.src_res.mgrSUiDef.cpp
push dword [ebp - 0x654]
mov eax, dword [ecx]
push str.soui
push 1
push ebx
call dword [eax + 0x34]
jmp 0x45c2a6
push 0x2801
call fcn.004ac74e
push 0x56
push str.src_res.mgrSUiDef.cpp
push str.SOUI::SUiDefInfo::Init
push dword [ebp - 0x654]
mov esi, eax
push str._s__s__s:_d_n
push 0xffffffffffffffff
push 0x2800
push esi
call fcn.00407aa0
add esp, 0x24
mov byte [eax + esi], bl
push esi
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push esi
call fcn.004ac749
mov esi, dword [ebp - 0x668]
pop ecx
push dword [ebp - 0x654]
call fcn.004ac749
pop ecx
mov eax, dword [ebp - 0x6b8]
mov ecx, esi
mov edx, dword [esi]
push dword [eax + 4]
push dword [eax]
call dword [edx + 0x28]
mov esi, eax
mov dword [ebp - 0x658], esi
test esi, esi
jne 0x45c3fb
mov ecx, dword [0x67eb4c]
test ecx, ecx
je 0x45c2e7
call fcn.0044202c
mov esi, eax
jmp 0x45c2e9
mov esi, ebx
push 0x2801
call fcn.004ac74e
mov dword [ebp - 0x668], eax
mov dword [esp], 0x5002
call fcn.004ac74e
mov dword [esp], str.warning_____uidef_was_not_found_in_the_specified_resprovider
push 0xffffffffffffffff
push 0x2800
push eax
mov dword [ebp - 0x654], eax
call fcn.00407ae0
add esp, 0x10
mov dword [ebp - 0x658], eax
push ebx
push ebx
push ebx
push ebx
push eax
push dword [ebp - 0x654]
push ebx
push ebx
call edi
mov ecx, eax
mov eax, dword [ebp - 0x658]
cmp eax, 0x2800
jge 0x45c36b
push ebx
push ebx
push ecx
push dword [ebp - 0x668]
push eax
push dword [ebp - 0x654]
push ebx
push ebx
call edi
mov edi, dword [ebp - 0x668]
mov eax, dword [ebp - 0x658]
mov byte [eax + edi], bl
jmp 0x45c371
mov edi, dword [ebp - 0x668]
push dword [ebp - 0x654]
call fcn.004ac749
pop ecx
test esi, esi
je 0x45c3b0
mov eax, dword [esi]
mov ecx, esi
push 1
push ebx
call dword [eax + 0x2c]
test al, al
je 0x45c3b0
push dword [ebp + 4]
mov eax, dword [esi]
mov ecx, esi
push str.SOUI::SUiDefInfo::Init
push 0x5c
push str.src_res.mgrSUiDef.cpp
push edi
push str.soui
push 1
push ebx
call dword [eax + 0x34]
jmp 0x45c3ef
push 0x2801
call fcn.004ac74e
push 0x5c
push str.src_res.mgrSUiDef.cpp
push str.SOUI::SUiDefInfo::Init
push edi
push str._s__s__s:_d_n
push 0xffffffffffffffff
mov esi, eax
push 0x2800
push esi
call fcn.00407aa0
add esp, 0x24
mov byte [eax + esi], bl
push esi
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push esi
call fcn.004ac749
pop ecx
push edi
call fcn.004ac749
pop ecx
jmp 0x45cd66
lea ecx, [ebp - 0xd8]
call fcn.0049b38a
lea ecx, [ebp - 0x6a8]
mov byte [ebp - 4], 3
call fcn.004a01e7
push esi
lea ecx, [ebp - 0x6a8]
mov byte [ebp - 4], 4
call fcn.004a022d
mov eax, dword [ebp - 0x6b8]
lea ecx, [ebp - 0x6a8]
mov ebx, dword [ebp - 0x668]
push dword [ebp - 0x658]
mov esi, dword [eax + 4]
mov edi, dword [eax]
mov ebx, dword [ebx]
call fcn.004a022a
push eax
push esi
push edi
mov edi, dword [ebp - 0x668]
mov ecx, edi
call dword [ebx + 0x2c]
xor ebx, ebx
lea ecx, [ebp - 0x6a8]
push ebx
push 0x74
call fcn.0042208d
push eax
lea ecx, [ebp - 0x6a8]
call fcn.004a022a
push eax
lea eax, [ebp - 0x6f0]
push eax
lea ecx, [ebp - 0xd8]
call fcn.0049c62b
lea ecx, [ebp - 0x6f0]
call fcn.0049b445
test al, al
jne 0x45c577
mov ecx, dword [0x67eb4c]
test ecx, ecx
je 0x45c4ac
call fcn.0044202c
mov edi, eax
jmp 0x45c4ae
mov edi, ebx
push 0x2801
call fcn.004ac74e
mov dword [ebp - 0x654], eax
mov dword [esp], 0x5002
call fcn.004ac74e
mov dword [esp], str.warning____load_uidef_as_xml_document_failed
mov esi, eax
push 0xffffffffffffffff
push 0x2800
push esi
mov dword [ebp - 0x66c], esi
call fcn.00407ae0
add esp, 0x10
mov dword [ebp - 0x658], eax
push ebx
push ebx
push ebx
push ebx
push eax
push esi
mov esi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push ebx
push ebx
call esi
mov ecx, eax
mov eax, dword [ebp - 0x658]
cmp eax, 0x2800
jge 0x45c533
push ebx
push ebx
push ecx
push dword [ebp - 0x654]
push eax
push dword [ebp - 0x66c]
push ebx
push ebx
call esi
mov esi, dword [ebp - 0x654]
mov eax, dword [ebp - 0x658]
mov byte [eax + esi], bl
jmp 0x45c539
mov esi, dword [ebp - 0x654]
push dword [ebp - 0x66c]
call fcn.004ac749
pop ecx
test edi, edi
je 0x45c566
mov eax, dword [edi]
mov ecx, edi
push 1
push ebx
call dword [eax + 0x2c]
test al, al
je 0x45c566
push dword [ebp + 4]
push str.SOUI::SUiDefInfo::Init
push 0x69
jmp 0x45c66a
push 0x2801
call fcn.004ac74e
push 0x69
jmp 0x45c68d
push ebx
push str.uidef
lea eax, [ebp - 0x660]
push eax
lea ecx, [ebp - 0xd8]
call fcn.0049bb8d
lea ecx, [ebp - 0x660]
call fcn.0049b445
test al, al
je 0x45c6d7
mov ecx, dword [0x67eb4c]
test ecx, ecx
je 0x45c5b5
call fcn.0044202c
mov edi, eax
jmp 0x45c5b7
mov edi, ebx
push 0x2801
call fcn.004ac74e
mov dword [ebp - 0x654], eax
mov dword [esp], 0x5002
call fcn.004ac74e
mov dword [esp], str.warning_____uidef__element_is_not_the_root_element_of_uidef_xml
mov esi, eax
push 0xffffffffffffffff
push 0x2800
push esi
mov dword [ebp - 0x66c], esi
call fcn.00407ae0
add esp, 0x10
mov dword [ebp - 0x658], eax
push ebx
push ebx
push ebx
push ebx
push eax
push esi
mov esi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push ebx
push ebx
call esi
mov ecx, eax
mov eax, dword [ebp - 0x658]
cmp eax, 0x2800
jge 0x45c63c
push ebx
push ebx
push ecx
push dword [ebp - 0x654]
push eax
push dword [ebp - 0x66c]
push ebx
push ebx
call esi
mov esi, dword [ebp - 0x654]
mov eax, dword [ebp - 0x658]
mov byte [eax + esi], bl
jmp 0x45c642
mov esi, dword [ebp - 0x654]
push dword [ebp - 0x66c]
call fcn.004ac749
pop ecx
test edi, edi
je 0x45c681
mov eax, dword [edi]
mov ecx, edi
push 1
push ebx
call dword [eax + 0x2c]
test al, al
je 0x45c681
push dword [ebp + 4]
push str.SOUI::SUiDefInfo::Init
push 0x6f
mov eax, dword [edi]
mov ecx, edi
push str.src_res.mgrSUiDef.cpp
push esi
push str.soui
push 1
push ebx
call dword [eax + 0x34]
jmp 0x45c6cb
push 0x2801
call fcn.004ac74e
push 0x6f
push str.src_res.mgrSUiDef.cpp
push str.SOUI::SUiDefInfo::Init
push dword [ebp - 0x654]
mov esi, eax
push str._s__s__s:_d_n
push 0xffffffffffffffff
push 0x2800
push esi
call fcn.00407aa0
add esp, 0x24
mov byte [eax + esi], bl
push esi
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push esi
call fcn.004ac749
mov esi, dword [ebp - 0x654]
pop ecx
push esi
call fcn.004ac749
pop ecx
jmp 0x45cd50
lea ecx, [ebp - 0x664]
call fcn.0049b39d
push ebx
push 0x5f72b4
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x660]
call fcn.0049bb8d
lea ecx, [ebp - 0x664]
mov eax, dword [eax]
mov dword [ebp - 0x664], eax
call fcn.0049b46b
test eax, eax
je 0x45cb17
push 0xc
push ebx
push 0x5fc424
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x664]
call fcn.0049bb1c
mov ecx, eax
call fcn.0049bab1
push 1
push ebx
mov esi, eax
lea ecx, [ebp - 0x664]
push 0x602290
lea eax, [ebp - 0x6e4]
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049bab1
push ebx
push ebx
mov dword [ebp - 0x658], eax
lea ecx, [ebp - 0x664]
push 0x6022a0
lea eax, [ebp - 0x6bc]
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049ba5d
push ebx
push ebx
mov byte [ebp - 0x659], al
lea ecx, [ebp - 0x664]
push 0x6022ac
lea eax, [ebp - 0x6c0]
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049ba5d
push ebx
push ebx
mov byte [ebp - 0x66d], al
lea ecx, [ebp - 0x664]
push 0x6022c0
lea eax, [ebp - 0x6c4]
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049ba5d
xor edi, edi
lea ecx, [ebp - 0x664]
push edi
push edi
mov bl, al
lea eax, [ebp - 0x6c8]
push 0x6022d0
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049ba5d
push edi
push edi
mov bh, al
lea ecx, [ebp - 0x664]
push 0x6022e0
lea eax, [ebp - 0x6cc]
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049baf5
inc edi
movzx edx, bl
add eax, 2
lea ecx, [esi + esi]
and edx, edi
shl eax, 6
or edx, ecx
and eax, 0xff00
movzx ecx, byte [ebp - 0x659]
add edx, edx
and ecx, edi
mov esi, dword [ebp - 0x684]
or edx, ecx
movzx ecx, byte [ebp - 0x66d]
add edx, edx
and ecx, edi
or edx, ecx
movzx ecx, bh
and ecx, edi
add edx, edx
or edx, ecx
lea edi, [esi + 0x58]
mov ecx, dword [ebp - 0x658]
xor ebx, ebx
shl edx, 0x10
or eax, edx
movzx ecx, cl
or eax, ecx
lea ecx, [ebp - 0x664]
push ebx
mov dword [esi + 0x54], eax
lea eax, [ebp - 0x6d0]
push str.face
push eax
call fcn.0049bb1c
mov ecx, eax
call fcn.0049fbc5
push eax
mov ecx, edi
call fcn.00409260
mov eax, dword [edi]
cmp dword [eax - 8], ebx
je 0x45c8a2
push edi
call dword [0x66f57c]
pop ecx
test eax, eax
jne 0x45c8ae
push 0x601fd0
mov ecx, edi
call fcn.00409260
mov edi, dword [ebp - 0x668]
lea ecx, [ebp - 0x66c]
call fcn.0049b39d
push ebx
push str.unit
lea eax, [ebp - 0x6d4]
push eax
lea ecx, [ebp - 0x660]
call fcn.0049bb8d
lea ecx, [ebp - 0x66c]
mov eax, dword [eax]
mov dword [ebp - 0x66c], eax
call fcn.0049b46b
test eax, eax
je 0x45c959
push 0x5fc22c
push ebx
push str.defUnit
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x66c]
call fcn.0049bb1c
mov ecx, eax
call fcn.0049bade
push eax
lea ecx, [ebp - 0x688]
call fcn.00401ef0
lea eax, [ebp - 0x688]
mov byte [ebp - 4], 5
push eax
call fcn.0043cfc9
pop ecx
cmp eax, 0xffffffff
je 0x45c93b
push eax
call fcn.0043cf14
pop ecx
mov ecx, dword [ebp - 0x688]
add ecx, 0xfffffff4
mov byte [ebp - 4], 6
cmp ecx, dword [0x66f994]
je 0x45c955
call fcn.00414d2c
mov byte [ebp - 4], 4
lea ecx, [esi + 0x60]
call fcn.0049f3d3
push ebx
push 0x602018
lea eax, [ebp - 0x68c]
push eax
lea ecx, [ebp - 0x660]
call fcn.0049bb8d
lea ecx, [ebp - 0x68c]
call fcn.0049b46b
test eax, eax
je 0x45c99e
lea eax, [ebp - 0x68c]
push eax
lea eax, [ebp - 0x680]
push eax
lea ecx, [esi + 0x60]
call fcn.0049b921
lea ecx, [ebp - 0x330]
call fcn.0049b38a
push str.string
push edi
lea eax, [ebp - 0x330]
mov byte [ebp - 4], 7
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x690]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x690]
call fcn.0049b46b
test eax, eax
je 0x45c9eb
push dword [ebp - 0x690]
lea ecx, [esi + 0x2c]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x330]
mov byte [ebp - 4], 4
call fcn.0049b40f
lea ecx, [ebp - 0x268]
call fcn.0049b38a
push 0x601f80
push edi
lea eax, [ebp - 0x268]
mov byte [ebp - 4], 8
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x694]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x694]
call fcn.0049b46b
test eax, eax
je 0x45ca47
push dword [ebp - 0x694]
lea ecx, [esi + 0x18]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], 4
call fcn.0049b40f
lea ecx, [ebp - 0x650]
call fcn.0049b38a
push 0x601f8c
push edi
lea eax, [ebp - 0x650]
mov byte [ebp - 4], 9
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x67c]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x67c]
call fcn.0049b46b
test eax, eax
je 0x45caa3
push dword [ebp - 0x67c]
lea ecx, [esi + 0x40]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x650]
mov byte [ebp - 4], 4
call fcn.0049b40f
lea ecx, [ebp - 0x588]
call fcn.0049b38a
push str.skin
push edi
lea eax, [ebp - 0x588]
mov byte [ebp - 4], 0xa
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x678]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x678]
call fcn.0049b46b
test eax, eax
je 0x45cb65
push 0x14
call fcn.00422e27
pop ecx
mov dword [ebp - 0x680], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x45cb36
mov ecx, eax
call fcn.0043bef6
mov dword [ebp - 0x67c], eax
jmp 0x45cb3c
mov esi, dword [ebp - 0x684]
push 0x601fd0
lea ecx, [esi + 0x58]
mov dword [esi + 0x54], 0xc00001
call fcn.00409260
jmp 0x45c8b4
mov dword [ebp - 0x67c], ebx
mov ecx, dword [esi + 8]
mov byte [ebp - 4], 0xa
test ecx, ecx
je 0x45cb4f
add ecx, 0xc
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x67c]
mov ecx, eax
push dword [ebp - 0x678]
mov dword [esi + 8], eax
call fcn.0043c606
lea ecx, [ebp - 0x588]
mov byte [ebp - 4], 4
call fcn.0049b40f
lea ecx, [ebp - 0x4c0]
call fcn.0049b38a
push str.style
push edi
lea eax, [ebp - 0x4c0]
mov byte [ebp - 4], 0xc
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x674]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x674]
call fcn.0049b46b
test eax, eax
je 0x45cc0b
push 0xdc
call fcn.00422e27
pop ecx
mov dword [ebp - 0x680], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x45cbdc
mov ecx, eax
call fcn.00455194
mov dword [ebp - 0x678], eax
jmp 0x45cbe2
mov dword [ebp - 0x678], ebx
mov ecx, dword [esi + 0xc]
mov byte [ebp - 4], 0xc
test ecx, ecx
je 0x45cbf5
add ecx, 0xc
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x678]
mov ecx, eax
push dword [ebp - 0x674]
mov dword [esi + 0xc], eax
call fcn.0045d712
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 4
call fcn.0049b40f
lea ecx, [ebp - 0x3f8]
call fcn.0049b38a
push str.template
push edi
lea eax, [ebp - 0x3f8]
mov byte [ebp - 4], 0xe
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x69c]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x69c]
call fcn.0049b46b
test eax, eax
je 0x45ccae
push 0x14
call fcn.00422e27
pop ecx
mov dword [ebp - 0x680], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x45cc7f
mov ecx, eax
call fcn.004551e6
mov dword [ebp - 0x674], eax
jmp 0x45cc85
mov dword [ebp - 0x674], ebx
mov ecx, dword [esi + 0x14]
mov byte [ebp - 4], 0xe
test ecx, ecx
je 0x45cc98
add ecx, 0xc
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x674]
mov ecx, eax
push dword [ebp - 0x69c]
mov dword [esi + 0x14], eax
call fcn.0045d817
lea ecx, [ebp - 0x3f8]
mov byte [ebp - 4], 4
call fcn.0049b40f
lea ecx, [ebp - 0x1a0]
call fcn.0049b38a
push 0x601fc0
push edi
lea eax, [ebp - 0x1a0]
mov byte [ebp - 4], 0x10
push eax
push dword [ebp - 0x660]
lea eax, [ebp - 0x698]
push eax
call fcn.0045bf5b
add esp, 0x14
lea ecx, [ebp - 0x698]
call fcn.0049b46b
test eax, eax
je 0x45cd42
push 0xdc
call fcn.00422e27
pop ecx
mov dword [ebp - 0x680], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x45cd1f
mov ecx, eax
call fcn.0045ba71
mov ebx, eax
mov ecx, dword [esi + 0x10]
mov byte [ebp - 4], 0x10
test ecx, ecx
je 0x45cd32
add ecx, 0xc
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x698]
mov ecx, ebx
mov dword [esi + 0x10], ebx
call fcn.0049381b
lea ecx, [ebp - 0x1a0]
call fcn.0049b40f
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x6a8]
call fcn.004a01f4
lea ecx, [ebp - 0xd8]
call fcn.0049b40f
lea ecx, [ebp - 0x6b8]
call fcn.00403ae0
mov eax, ebx
call fcn.00423112
ret 8