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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5ea215
mov eax, dword fs:[0]
push eax
sub esp, 0x4e0
mov eax, dword [0x70b744]
xor eax, esp
mov dword [esp + 0x4d8], eax
push ebx
push esi
push edi
mov eax, dword [0x70b744]
xor eax, esp
push eax
lea eax, [esp + 0x4f0]
mov dword fs:[0], eax
xor ebx, ebx
mov esi, ecx
mov edi, edx
push ebx
lea ecx, [esp + 0x34]
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], ebx
call fcn.0056f74d
pop ecx
push ebx
push ebx
push 0x14b
mov dword [esp + 0x504], ebx
push dword [edi]
call dword [0x71f7ac]
mov eax, dword [edi]
mov ecx, dword [esi + 0x464]
cmp eax, ecx
jne 0x551e8c
add esi, 0xc0
mov byte [esp + 0x1c], bl
jmp 0x551e97
add esi, 0xc4
mov byte [esp + 0x1c], 1
push 0xffffffffffffffff
mov eax, esi
push dword [eax]
mov dword [esp + 0x20], esi
call dword [sym.imp.COMCTL32.dll_ImageList_Remove]
lea eax, [esp + 0x30]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x28], ebx
mov eax, dword [esp + 0x34]
mov esi, dword [eax]
je 0x551ed1
lea eax, [esp + 0x30]
cmp dword [esp + 0x28], eax
je 0x551ed6
call fcn.0051e314
cmp dword [esp + 0x2c], esi
je 0x552074
lea eax, [esp + 0x24]
call fcn.004500c8
mov esi, eax
mov ecx, 0x94
lea edi, [esp + 0x94]
rep movsd dword es:[edi], dword [esi]
mov esi, 0x1fe
push esi
lea eax, [esp + 0x2e8]
push ebx
push eax
call fcn.00522720
add esp, 0xc
lea eax, [esp + 0xc0]
push eax
call dword [0x71f650]
cmp eax, 2
je 0x551f3f
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
lea eax, [esp + 0x2fc]
push eax
lea eax, [esp + 0xdc]
push eax
call dword [0x71f690]
push 0x2d8
call fcn.0051d97d
pop ecx
mov dword [esp + 0x3c], eax
cmp eax, ebx
mov byte [esp + 0x4f8], 1
je 0x551fd9
lea eax, [esp + 0x2e4]
push eax
lea ecx, [esp + 0x44]
call fcn.004120e9
push 0x69dd8c
lea eax, [esp + 0x60]
mov byte [esp + 0x4fc], 2
or dword [esp + 0x18], 1
push eax
call fcn.004144c7
sub esp, 0x250
mov edi, esp
push dword [esp + 0x26c]
lea eax, [esp + 0x294]
push eax
lea eax, [esp + 0x2b4]
push eax
mov dword [esp + 0x754], 3
or dword [esp + 0x270], 2
push 2
push dword [esp + 0x29c]
mov ecx, 0x94
lea esi, [esp + 0x2f8]
rep movsd dword es:[edi], dword [esi]
call fcn.0055099a
mov esi, eax
jmp 0x551fdb
xor esi, esi
test byte [esp + 0x14], 2
je 0x551ff3
and dword [esp + 0x14], 0xfffffffd
push ebx
push 1
lea ecx, [esp + 0x64]
call fcn.00410779
mov dword [esp + 0x4f8], ebx
test byte [esp + 0x14], 1
je 0x552012
and dword [esp + 0x14], 0xfffffffe
push ebx
push 1
lea ecx, [esp + 0x48]
call fcn.00410779
cmp esi, ebx
je 0x552062
push dword [esi + 0x2d0]
mov eax, dword [esp + 0x1c]
push 0xffffffffffffffff
push dword [eax]
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov edi, eax
lea eax, [esp + 0x78]
push eax
mov ecx, esi
call fcn.0054e439
cmp dword [eax + 0x18], 8
jb 0x552043
mov eax, dword [eax + 4]
jmp 0x552046
add eax, 4
push esi
push edi
push edi
push eax
push dword [esp + 0x30]
call fcn.0044fc21
push ebx
push 1
lea ecx, [esp + 0x80]
call fcn.00410779
lea esi, [esp + 0x28]
call fcn.004490b9
mov edi, dword [esp + 0x20]
jmp 0x551ebb
mov eax, dword [esp + 0x18]
push dword [eax]
push ebx
push 0x402
push dword [edi]
call dword [0x71f7ac]
lea esi, [esp + 0x30]
call fcn.004488c3
push dword [esp + 0x34]
call fcn.0051d492
pop ecx
mov ecx, dword [esp + 0x4f0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x4d8]
xor ecx, esp
call fcn.0051d721
mov esp, ebp
pop ebp
ret