Function at 0x4153a0
Capabilities:
Check if file exists
Delete file
Get file attributes
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x548ad6
mov eax, dword fs:[0]
push eax
sub esp, 0x110
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5c403c]
xor eax, esp
push eax
lea eax, [esp + 0x124]
mov dword fs:[0], eax
mov ecx, dword [0x5c6ed0]
lea eax, [esp + 0xb4]
push eax
push str.SELECT_COUNT___FROM_sqlite_master_WHERE_namegroupSettings_
call dword [sym.imp.libWTW.module_public:_long_int___thiscall_wtw::db::CConnection::executeAndRead_wchar_t_const___int__]
cmp dword [esp + 0xb4], 0
jne 0x415410
mov ecx, dword [0x5c6ed0]
mov esi, dword [sym.imp.libWTW.module_public:_long_int___thiscall_wtw::db::CConnection::executeNoRead_wchar_t_const__]
push str.CREATE_TABLE_groupSettings____name__VARCHAR_128_____type__INT____option__VARCHAR_16_____value__TEXT___
call esi
mov ecx, dword [0x5c6ed0]
push str.CREATE_UNIQUE_INDEX_groupSettingsUnique_ON_groupSettings___name____type____option___
call esi
mov eax, dword [0x5c7000]
add eax, 0x30
push eax
lea ecx, [esp + 0x20]
push ecx
mov edi, str..dbgroups.xml
call fcn.0040f2b0
add esp, 8
mov dword [esp + 0x12c], 0
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
setne bl
mov dword [esp + 0x12c], 0xffffffff
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test bl, bl
je 0x4161a8
lea ecx, [esp + 0xd8]
call dword [sym.imp.libUtils.module_public:_void___thiscall_xmlElement::constructor_void_]
mov dword [esp + 0x12c], 1
mov eax, dword [0x5c7000]
add eax, 0x30
push eax
lea edx, [esp + 0x20]
push edx
call fcn.0040f2b0
mov byte [esp + 0x134], 2
mov eax, dword [eax]
lea ecx, [esp + 0xe0]
push ecx
mov ecx, eax
call fcn.0051e420
add esp, 0xc
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
lea ecx, [esp + 0xd8]
call dword [sym.imp.libUtils.module_public:_unsigned_int___thiscall_xmlElement::GetChildCount_void_]
push eax
push str.Group_settings___d_items_
push 5
mov ecx, str.CCTL
call fcn.004151b0
mov ecx, dword [0x5c6ed0]
add esp, 0xc
call dword [sym.imp.libWTW.module_public:_long_int___thiscall_wtw::db::CConnection::transactionBegin_void_]
mov esi, dword [esp + 0xf0]
mov ebx, dword [esp + 0xf4]
cmp esi, ebx
jbe 0x415508
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov ebx, dword [esp + 0xf4]
mov edi, dword [esp + 0xe4]
mov ebp, dword [sym.imp.libUtils.module_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const____thiscall_xmlElement::GetAttribute_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const___class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const__]
mov dword [esp + 0xd0], edi
lea esp, [esp]
cmp dword [esp + 0xf0], ebx
jbe 0x41552f
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
test edi, edi
je 0x41553c
cmp edi, dword [esp + 0xe4]
je 0x415542
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
cmp esi, ebx
je 0x41610a
test edi, edi
jne 0x416050
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
mov ebx, dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
cmp esi, dword [eax + 0x10]
jb 0x415567
call ebx
lea ecx, [esi + 4]
push str.meta
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Compare]
test eax, eax
jne 0x4156ee
push 0x55ae9c
lea ecx, [esp + 0x34]
call dword [0x55a504]
mov byte [esp + 0x12c], 3
push str.expanded
lea ecx, [esp + 0xa0]
call dword [0x55a504]
mov byte [esp + 0x12c], 4
test edi, edi
jne 0x416057
call ebx
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x4155c1
call ebx
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0xa0]
push eax
mov ecx, esi
call ebp
mov eax, dword [eax]
push 0xa
push 0
push eax
call dword [sym.imp.MSVCR90.dll_wcstol]
add esp, 0xc
push str.expanded
lea ecx, [esp + 0xb4]
mov dword [esp + 0xc0], eax
call dword [0x55a504]
mov byte [esp + 0x12c], 5
push 0x55ae9c
lea ecx, [esp + 0x80]
call dword [0x55a504]
mov bl, 6
mov byte [esp + 0x12c], bl
push 0x55d634
lea ecx, [esp + 0x9c]
call dword [0x55a504]
mov byte [esp + 0x12c], 7
test edi, edi
jne 0x41605e
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415653
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea ecx, [esp + 0xbc]
push ecx
push 1
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0xa4]
push eax
mov ecx, esi
call ebp
mov ecx, dword [esp + 0x13c]
push eax
push ecx
lea ecx, [esp + 0xc0]
call fcn.00416970
mov byte [esp + 0x12c], bl
lea ecx, [esp + 0x98]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 5
lea ecx, [esp + 0x7c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 4
lea ecx, [esp + 0xb0]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 3
lea ecx, [esp + 0x9c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x30]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov ebx, dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
test edi, edi
jne 0x416065
call ebx
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415701
call ebx
push str.group
lea ecx, [esi + 4]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Compare]
test eax, eax
jne 0x4160e0
push 0x55ae9c
lea ecx, [esp + 0x90]
call dword [0x55a504]
mov byte [esp + 0x12c], 8
push str.expanded
lea ecx, [esp + 0x44]
call dword [0x55a504]
mov byte [esp + 0x12c], 9
test edi, edi
jne 0x41606c
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415763
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea edx, [esp + 0x8c]
push edx
lea eax, [esp + 0x44]
push eax
mov ecx, esi
call ebp
mov eax, dword [eax]
mov ebx, dword [sym.imp.MSVCR90.dll_wcstol]
push 0xa
push 0
push eax
call ebx
add esp, 0xc
push str.expanded
lea ecx, [esp + 0xac]
mov dword [esp + 0xc8], eax
call dword [0x55a504]
mov byte [esp + 0x12c], 0xa
push 0x55ae9c
lea ecx, [esp + 0x3c]
call dword [0x55a504]
mov byte [esp + 0x12c], 0xb
push 0x55d634
lea ecx, [esp + 0xa4]
call dword [0x55a504]
mov byte [esp + 0x12c], 0xc
test edi, edi
jne 0x416073
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x4157f3
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea ecx, [esp + 0xc4]
push ecx
push 0
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0xac]
push eax
mov ecx, esi
call ebp
mov ecx, dword [esp + 0x13c]
push eax
push ecx
lea ecx, [esp + 0xb8]
call fcn.00416970
mov byte [esp + 0x12c], 0xb
lea ecx, [esp + 0xa0]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0xa
lea ecx, [esp + 0x38]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 9
lea ecx, [esp + 0xa8]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 8
lea ecx, [esp + 0x40]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x8c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0x55ae9c
lea ecx, [esp + 0x5c]
call dword [0x55a504]
mov byte [esp + 0x12c], 0xd
push str.filter
lea ecx, [esp + 0x98]
call dword [0x55a504]
mov byte [esp + 0x12c], 0xe
test edi, edi
jne 0x41607a
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x4158d2
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea edx, [esp + 0x58]
push edx
lea eax, [esp + 0x98]
push eax
mov ecx, esi
call ebp
mov eax, dword [eax]
push 0xa
push 0
push eax
call ebx
add esp, 0xc
push str.filter
lea ecx, [esp + 0x54]
mov dword [esp + 0xcc], eax
call dword [0x55a504]
mov byte [esp + 0x12c], 0xf
push 0x55ae9c
lea ecx, [esp + 0xb0]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x10
push 0x55d634
lea ecx, [esp + 0x4c]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x11
test edi, edi
jne 0x416081
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415959
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea ecx, [esp + 0xc8]
push ecx
push 0
lea edx, [esp + 0xb4]
push edx
lea eax, [esp + 0x54]
push eax
mov ecx, esi
call ebp
mov ecx, dword [esp + 0x13c]
push eax
push ecx
lea ecx, [esp + 0x60]
call fcn.00416970
mov byte [esp + 0x12c], 0x10
lea ecx, [esp + 0x48]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0xf
lea ecx, [esp + 0xac]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0xe
lea ecx, [esp + 0x50]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0xd
lea ecx, [esp + 0x94]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x58]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0x55ae9c
lea ecx, [esp + 0x8c]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x12
push str.color
lea ecx, [esp + 0x6c]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x13
test edi, edi
jne 0x416088
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415a32
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea edx, [esp + 0x88]
push edx
lea eax, [esp + 0x6c]
push eax
mov ecx, esi
call ebp
mov eax, dword [eax]
push 0xa
push 0
push eax
call ebx
add esp, 0xc
push str.color
lea ecx, [esp + 0x88]
mov dword [esp + 0xc4], eax
call dword [0x55a504]
mov byte [esp + 0x12c], 0x14
push 0x55ae9c
lea ecx, [esp + 0x64]
call dword [0x55a504]
mov bl, 0x15
mov byte [esp + 0x12c], bl
push 0x55d634
lea ecx, [esp + 0xa8]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x16
test edi, edi
jne 0x41608f
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415abd
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea ecx, [esp + 0xc0]
push ecx
push 0
lea edx, [esp + 0x68]
push edx
lea eax, [esp + 0xb0]
push eax
mov ecx, esi
call ebp
mov ecx, dword [esp + 0x13c]
push eax
push ecx
lea ecx, [esp + 0x94]
call fcn.00416970
mov byte [esp + 0x12c], bl
lea ecx, [esp + 0xa4]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x14
lea ecx, [esp + 0x60]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x13
lea ecx, [esp + 0x84]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x12
lea ecx, [esp + 0x68]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x88]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0x55ae9c
lea ecx, [esp + 0x84]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x17
push str.overrides
lea ecx, [esp + 0x2c]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x18
test edi, edi
jne 0x416096
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415b9b
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x2c]
push eax
mov ecx, esi
call ebp
mov eax, dword [eax]
push 0xa
push 0
push eax
call dword [sym.imp.MSVCR90.dll_wcstol]
add esp, 0xc
push str.overrides
lea ecx, [esp + 0x7c]
mov dword [esp + 0xd0], eax
call dword [0x55a504]
mov byte [esp + 0x12c], 0x19
push 0x55ae9c
lea ecx, [esp + 0x94]
call dword [0x55a504]
mov bl, 0x1a
mov byte [esp + 0x12c], bl
push 0x55d634
lea ecx, [esp + 0x74]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x1b
test edi, edi
jne 0x41609d
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415c27
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea ecx, [esp + 0xcc]
push ecx
push 0
lea edx, [esp + 0x98]
push edx
lea eax, [esp + 0x7c]
push eax
mov ecx, esi
call ebp
mov ecx, dword [esp + 0x13c]
push eax
push ecx
lea ecx, [esp + 0x88]
call fcn.00416970
mov byte [esp + 0x12c], bl
lea ecx, [esp + 0x70]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x19
lea ecx, [esp + 0x90]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x18
lea ecx, [esp + 0x78]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x17
lea ecx, [esp + 0x28]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x80]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0x55ae9c
lea ecx, [esp + 0x50]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x1c
push str.position
lea ecx, [esp + 0x48]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x1d
test edi, edi
jne 0x4160a4
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415cff
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea edx, [esp + 0x4c]
push edx
lea eax, [esp + 0x48]
push eax
mov ecx, esi
call ebp
mov eax, dword [eax]
push 0xa
push 0
push eax
call dword [sym.imp.MSVCR90.dll_wcstol]
add esp, 0xc
push str.position
lea ecx, [esp + 0x40]
mov dword [esp + 0xbc], eax
call dword [0x55a504]
mov byte [esp + 0x12c], 0x1e
push 0x55ae9c
lea ecx, [esp + 0x38]
call dword [0x55a504]
mov bl, 0x1f
mov byte [esp + 0x12c], bl
push 0x55d634
lea ecx, [esp + 0x30]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x20
test edi, edi
jne 0x4160ab
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415d85
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
lea ecx, [esp + 0xb8]
push ecx
push 0
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x38]
push eax
mov ecx, esi
call ebp
mov ecx, dword [esp + 0x13c]
push eax
push ecx
lea ecx, [esp + 0x4c]
call fcn.00416970
mov byte [esp + 0x12c], bl
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x1e
lea ecx, [esp + 0x34]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x1d
lea ecx, [esp + 0x3c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x1c
lea ecx, [esp + 0x44]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x4c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test edi, edi
jne 0x4160b2
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415e23
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov eax, dword [esi + 0x18]
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x1c]
jbe 0x415e35
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov ebx, dword [esi + 0xc]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], edx
test edi, edi
jne 0x4160b9
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x415e5f
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x18], eax
cmp dword [esi + 0x18], eax
jbe 0x415e71
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov eax, dword [esi + 0xc]
test ebx, ebx
je 0x415e7c
cmp ebx, eax
je 0x415e82
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x24], eax
je 0x4160e0
push 0x55ae9c
lea ecx, [esp + 0x20]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x21
push str.value
lea ecx, [esp + 0x78]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x22
push 0x55ae9c
lea ecx, [esp + 0x70]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x23
push str.name
lea ecx, [esp + 0x68]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x24
push 0x55ae9c
lea ecx, [esp + 0x60]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x25
push 0x55d634
lea ecx, [esp + 0x58]
call dword [0x55a504]
mov byte [esp + 0x12c], 0x26
test ebx, ebx
jne 0x4160c0
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
mov ecx, dword [esp + 0x24]
cmp ecx, dword [eax + 0x10]
jb 0x415f39
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
test ebx, ebx
jne 0x4160c7
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov edx, dword [esp + 0x24]
cmp edx, dword [ebx + 0x10]
jb 0x415f56
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
test edi, edi
jne 0x4160ce
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
cmp esi, dword [edi + 0x10]
jb 0x415f6f
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x78]
push ecx
mov ecx, edi
call ebp
push eax
lea edx, [esp + 0x70]
push edx
lea eax, [esp + 0x6c]
push eax
mov ecx, edi
call ebp
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0x5c]
push edx
mov ecx, esi
mov edi, eax
call ebp
mov ebx, dword [esp + 0x138]
push eax
call fcn.00416640
mov byte [esp + 0x12c], 0x25
lea ecx, [esp + 0x54]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x24
lea ecx, [esp + 0x5c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x23
lea ecx, [esp + 0x64]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x22
lea ecx, [esp + 0x6c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 0x21
lea ecx, [esp + 0x74]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
cmp dword [esp + 0x20], 0
jne 0x4160d5
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
mov ecx, dword [esp + 0x24]
cmp ecx, dword [eax + 0x10]
jb 0x41603b
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
add dword [esp + 0x24], 0x44
mov ebx, dword [esp + 0x20]
mov edi, dword [esp + 0xd0]
jmp 0x415e44
mov eax, dword [edi]
jmp 0x41555a
mov eax, dword [edi]
jmp 0x4155ba
mov eax, dword [edi]
jmp 0x415648
mov eax, dword [edi]
jmp 0x4156fa
mov eax, dword [edi]
jmp 0x415758
mov eax, dword [edi]
jmp 0x4157e8
mov eax, dword [edi]
jmp 0x4158c7
mov eax, dword [edi]
jmp 0x41594e
mov eax, dword [edi]
jmp 0x415a27
mov eax, dword [edi]
jmp 0x415ab2
mov eax, dword [edi]
jmp 0x415b90
mov eax, dword [edi]
jmp 0x415c1c
mov eax, dword [edi]
jmp 0x415cf4
mov eax, dword [edi]
jmp 0x415d7a
mov eax, dword [edi]
jmp 0x415e18
mov eax, dword [edi]
jmp 0x415e54
mov eax, dword [ebx]
jmp 0x415f2a
mov ebx, dword [ebx]
jmp 0x415f47
mov edi, dword [edi]
jmp 0x415f64
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
jmp 0x41602c
test edi, edi
jne 0x416106
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x4160f7
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov ebx, dword [esp + 0xf4]
add esi, 0x44
jmp 0x415520
mov eax, dword [edi]
jmp 0x4160ec
mov ecx, dword [0x5c6ed0]
call dword [sym.imp.libWTW.module_public:_long_int___thiscall_wtw::db::CConnection::transactionCommit_void_]
mov eax, dword [0x5c7000]
add eax, 0x30
push eax
lea edx, [esp + 0x1c]
push edx
mov edi, str..dbgroups.xml
call fcn.0040f2b0
add esp, 8
mov byte [esp + 0x12c], 0x27
mov eax, dword [eax]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
push eax
call esi
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x18]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov eax, dword [0x5c7000]
add eax, 0x30
push eax
lea eax, [esp + 0x1c]
push eax
mov edi, str..dbgroups.xml.bak
call fcn.0040f2b0
add esp, 8
mov byte [esp + 0x12c], 0x28
mov eax, dword [eax]
push eax
call esi
mov byte [esp + 0x12c], 1
lea ecx, [esp + 0x18]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov dword [esp + 0x12c], 0xffffffff
lea ecx, [esp + 0xd8]
call dword [sym.imp.libUtils.module_public_virtual:_void___thiscall_xmlElement::destructor_void_]
mov ecx, dword [esp + 0x124]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x11c
ret 4