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

Disassembly:
push 0xffffffffffffffff
push 0x101e5920
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x58
push ebx
push ebp
push esi
push edi
xor esi, esi
push 0xffffffffffffffff
push 0xffffffffffffffff
push esi
mov ebp, ecx
push esi
push esi
push esi
lea ecx, [esp + 0x40]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], esi
call fcn.10047440
lea eax, [ebp + 0x70]
push 1
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x78], esi
call sub.MFC42u.DLL_CSingleLock::CSingleLock
mov ecx, dword [esp + 0x78]
mov eax, dword [ebp + 0x30]
mov byte [esp + 0x70], 1
mov edx, dword [ecx + 4]
mov ebx, dword [eax + edx*4]
mov edi, dword [ebx + 4]
cmp edi, esi
je 0x10048fe2
mov esi, dword [edi + 8]
mov ecx, dword [edi]
mov dword [esp + 0x18], ecx
mov edx, dword [esi + 0xc]
mov dword [esp + 0x2c], edx
mov eax, dword [esi + 0x10]
mov dword [esp + 0x30], eax
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x38], ecx
mov edx, dword [esi + 0x1c]
mov dword [esp + 0x3c], edx
mov eax, dword [esi + 0x20]
mov dword [esp + 0x40], eax
mov ecx, dword [esi + 0x24]
mov dword [esp + 0x44], ecx
mov edx, dword [esi + 0x28]
mov dword [esp + 0x48], edx
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x4c], eax
mov ecx, dword [esi + 0x30]
mov dword [esp + 0x50], ecx
mov edx, dword [esi + 0x34]
mov dword [esp + 0x54], edx
mov eax, dword [esi + 0x38]
mov dword [esp + 0x58], eax
mov ecx, dword [esi + 0x3c]
mov dword [esp + 0x5c], ecx
mov edx, dword [esi + 0x40]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x60], edx
mov eax, dword [esi + 0x44]
push ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x68], eax
call fcn.100474b0
test eax, eax
jne 0x10048f07
mov edi, dword [esp + 0x18]
test edi, edi
jne 0x10048e79
jmp 0x10048fe2
mov ecx, dword [ebp + 0x44]
lea eax, [ebp + 0x40]
cmp esi, ecx
jne 0x10048f18
mov edx, dword [esi]
mov dword [eax + 4], edx
jmp 0x10048f1f
mov ecx, dword [esi + 4]
mov edx, dword [esi]
mov dword [ecx], edx
cmp esi, dword [eax + 8]
jne 0x10048f2c
mov ecx, dword [esi + 4]
mov dword [eax + 8], ecx
jmp 0x10048f34
mov edx, dword [esi]
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
lea ebp, [esi + 8]
mov dword [esp + 0x10], 0
mov edx, dword [ebp]
push 0
mov ecx, ebp
call dword [edx]
mov eax, dword [esp + 0x10]
add ebp, 0x40
mov ecx, eax
dec eax
test ecx, ecx
mov dword [esp + 0x10], eax
jne 0x10048f3f
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x50]
lea ecx, [edx + 0x40]
mov dword [esi], eax
mov eax, dword [ecx + 0xc]
mov dword [ecx + 0x10], esi
dec eax
mov dword [ecx + 0xc], eax
jne 0x10048f77
call fcn.1004b810
cmp edi, dword [ebx + 4]
jne 0x10048f83
mov ecx, dword [edi]
mov dword [ebx + 4], ecx
jmp 0x10048f8a
mov edx, dword [edi + 4]
mov eax, dword [edi]
mov dword [edx], eax
cmp edi, dword [ebx + 8]
jne 0x10048f97
mov ecx, dword [edi + 4]
mov dword [ebx + 8], ecx
jmp 0x10048f9f
mov edx, dword [edi]
mov eax, dword [edi + 4]
mov dword [edx + 4], eax
mov ecx, dword [ebx + 0x10]
mov dword [edi], ecx
mov eax, dword [ebx + 0xc]
dec eax
mov dword [ebx + 0x10], edi
mov dword [ebx + 0xc], eax
jne 0x10048fd6
mov eax, dword [ebx + 4]
xor esi, esi
cmp eax, esi
je 0x10048fbf
mov eax, dword [eax]
cmp eax, esi
jne 0x10048fb9
mov ecx, dword [ebx + 0x14]
mov dword [ebx + 0xc], esi
mov dword [ebx + 0x10], esi
mov dword [ebx + 8], esi
mov dword [ebx + 4], esi
call sub.MFC42u.DLL_CPlex::FreeDataChain
mov dword [ebx + 0x14], esi
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x10], 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0x70], 0
call sub.MFC42u.DLL_CSingleLock::Unlock
mov eax, dword [esp + 0x10]
test eax, eax
je 0x1004900b
lea ecx, [esp + 0x28]
mov dword [esp + 0x58], 3
call fcn.10047680
jmp 0x1004901b
mov edx, dword [esp + 0x78]
lea ecx, [ebp + 0x1f0]
push edx
call fcn.1004b1a0
lea ecx, [esp + 0x28]
mov dword [esp + 0x70], 0xffffffff
call fcn.100474a0
mov ecx, dword [esp + 0x68]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x64
ret 4