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

Disassembly:
push 0xffffffffffffffff
push 0x5720a6
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
mov eax, dword [0x5d7050]
xor eax, esp
mov dword [esp + 0xe0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5d7050]
xor eax, esp
push eax
lea eax, [esp + 0xf8]
mov dword fs:[0], eax
mov esi, ecx
mov ebp, dword [esp + 0x108]
mov eax, dword [0x5e736c]
mov edi, edx
mov edx, dword [eax + 0xc]
mov ecx, 0x5e736c
mov dword [esp + 0x20], edi
mov ebx, 0x3c0
mov dword [esp + 0x18], 0
call edx
add eax, 0x10
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x24]
push eax
mov dword [esp + 0x104], 0
call fcn.0041d240
mov dword [esp + 0x6c], 0
mov eax, dword [esp + 0x10c]
sub eax, 2
mov byte [esp + 0x100], 1
je 0x47ac5e
sub eax, 1
je 0x47ac45
sub eax, 1
je 0x47ac2c
xor ebx, ebx
jmp 0x47ac81
mov eax, dword [edi + 0xa24]
push eax
lea edi, [esp + 0x28]
call fcn.00418f60
push esi
push ebp
push 0x5992ac
jmp 0x47ac75
mov eax, dword [edi + 0xa20]
push eax
lea edi, [esp + 0x28]
call fcn.00418f60
push esi
push ebp
push 0x59919c
jmp 0x47ac75
mov eax, dword [edi + 0xa18]
push eax
lea edi, [esp + 0x28]
call fcn.00418f60
push esi
push ebp
push 0x59917c
lea edi, [esp + 0x28]
call fcn.00410c00
add esp, 0xc
xor ecx, ecx
mov eax, str.listitemdlg
lea edi, [esp + 0x24]
call fcn.00418fb0
mov ecx, 0x591ff0
call fcn.004197c0
mov ebp, dword [esp + 0x6c]
nop
test ebp, ebp
mov dword [esp + 0x18], 0
je 0x47acdb
lea edi, [ebp + 0x2c]
mov esi, 0x590e24
call fcn.0041e3f0
test eax, eax
je 0x47acdb
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x18]
push ecx
add eax, 8
push 0x58ded0
push eax
call dword [sym.imp.MSVCR80.dll_sscanf_s]
mov ebp, dword [esp + 0x78]
add esp, 0xc
cmp dword [esp + 0x18], ebx
jne 0x47acf3
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x24]
push edx
call fcn.004193a0
mov ebp, dword [esp + 0x6c]
mov esi, 0x591ff0
mov eax, ebp
call fcn.0041cac0
mov edi, eax
test edi, edi
je 0x47ad28
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
jne 0x47add6
mov esi, 0x591ff0
mov eax, edi
call fcn.0041cac0
mov edi, eax
test edi, edi
jne 0x47ad05
xor ecx, ecx
mov eax, str.listitemdlg
lea edi, [esp + 0x24]
call fcn.00418fb0
mov ecx, 0x592000
call fcn.004197c0
mov ebp, dword [esp + 0x6c]
jmp 0x47ad50
test ebp, ebp
mov dword [esp + 0x18], 0
je 0x47ae7d
lea edi, [ebp + 0x2c]
mov esi, 0x590e24
call fcn.0041e3f0
test eax, eax
je 0x47ae7d
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x18]
push ecx
add eax, 8
push 0x58ded0
push eax
call dword [sym.imp.MSVCR80.dll_sscanf_s]
mov eax, dword [esp + 0x24]
add esp, 0xc
cmp eax, 0x3b8
jne 0x47adf2
mov edx, dword [esp + 0x20]
mov ebp, dword [esp + 0x6c]
xor eax, eax
cmp dword [edx + 0x37c], eax
sete al
test ebp, ebp
je 0x47ae7d
push eax
lea eax, [esp + 0x78]
push 0x58ded0
push eax
mov eax, 0x40
call fcn.0041e830
lea ecx, [esp + 0x80]
jmp 0x47ae6b
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
je 0x47ad28
mov ebp, eax
mov dword [esp + 0x6c], ebp
jmp 0x47aca0
cmp eax, 0x3b9
jne 0x47ae2e
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp + 0x6c]
xor eax, eax
cmp dword [ecx + 0x380], eax
sete al
test ebp, ebp
je 0x47ae7d
push eax
lea edx, [esp + 0x78]
push 0x58ded0
push edx
mov eax, 0x40
call fcn.0041e830
lea ecx, [esp + 0x80]
jmp 0x47ae6b
cmp eax, 0x3ba
jne 0x47ae79
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp + 0x6c]
xor eax, eax
cmp dword [ecx + 0x384], eax
sete al
test ebp, ebp
je 0x47ae7d
push eax
lea edx, [esp + 0xb8]
push 0x58ded0
push edx
mov eax, 0x40
call fcn.0041e830
lea ecx, [esp + 0xc0]
add esp, 0xc
push ebp
mov edx, 0x59202c
call fcn.0041ce40
mov ebp, dword [esp + 0x6c]
mov esi, 0x592000
mov eax, ebp
call fcn.0041cac0
mov edi, eax
test edi, edi
je 0x47aeaf
nop
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
jne 0x47aedf
mov esi, 0x592000
mov eax, edi
call fcn.0041cac0
mov edi, eax
test edi, edi
jne 0x47ae90
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x47aecb
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
jne 0x47aef7
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x47aeb7
xor ebp, ebp
mov eax, dword [esp + 0x20]
add eax, 0x25
mov dword [esp + 0x6c], ebp
je 0x47af04
lea edi, [eax - 0x25]
jmp 0x47af06
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
je 0x47aeaf
mov ebp, eax
mov dword [esp + 0x6c], ebp
jmp 0x47ad50
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
mov ebp, eax
jmp 0x47aecd
xor edi, edi
mov esi, 0x348
call fcn.004507b0
mov esi, eax
test esi, esi
je 0x47af28
mov eax, dword [esi]
mov edx, dword [eax + 4]
push str.listwnd
mov ecx, esi
call edx
test eax, eax
jne 0x47af2d
or esi, 0xffffffff
jmp 0x47af37
push ebp
mov ebx, esi
call fcn.00470ce0
mov esi, eax
mov byte [esp + 0x100], 0
mov eax, dword [esp + 0x58]
cmp eax, 0x5e96c0
mov dword [esp + 0x24], vtable.TiXmlDocument.0
je 0x47af5b
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete___void__
add esp, 4
lea ecx, [esp + 0x24]
call fcn.0041c890
mov dword [esp + 0x100], 0xffffffff
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x47af8f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, esi
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xe0]
xor ecx, esp
call fcn.00569ed6
add esp, 0xf0
ret 8