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

Disassembly:
push 0xffffffffffffffff
push 0x10251922
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf8
mov eax, dword [0x102fef40]
xor eax, esp
push ebx
mov dword [esp + 0xf8], eax
mov al, byte [esp + 0x10c]
xor ebx, ebx
cmp al, bl
push esi
mov esi, ecx
je 0x552677
mov eax, dword [esi + 0x68]
cmp dword [eax + 0x78], ebx
je 0x55228a
push ebx
lea ecx, [eax + 0x280]
call fcn.004fd559
mov edx, dword [eax + 4]
cmp edx, ebx
je 0x55228a
mov ecx, dword [eax + 8]
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jmp 0x55228c
xor eax, eax
push ebp
lea eax, [eax + eax*4]
lea ecx, [eax*4 + 1]
push edi
push ecx
call fcn.0049cb4a
mov ebp, eax
mov eax, dword [esi + 0x68]
add esp, 4
push ebp
lea ecx, [eax + 0x280]
mov dword [esp + 0x28], ebp
call fcn.004fd599
mov eax, dword [esi + 0x68]
mov ecx, dword [eax + 0x78]
lea edx, [esp + 0xf0]
push edx
call fcn.0054b3e3
lea ecx, [esp + 0x44]
call fcn.0049e9e9
mov eax, dword [esi + 0x40]
add eax, 0xb8
push eax
lea ecx, [esp + 0x48]
mov dword [esp + 0x114], ebx
call fcn.0049e979
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov eax, dword [esi + 0x68]
lea ecx, [esp + 0x14]
push ecx
lea ecx, [eax + 0x244]
mov byte [esp + 0x114], 1
call fcn.005607f9
lea edx, [esp + 0x28]
push edx
lea ecx, [esp + 0x48]
mov dword [esi + 0x78], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [esi + 0x94], ebx
mov dword [esi + 0x98], ebx
mov dword [esi + 0x9c], ebx
mov dword [esi + 0xa0], ebx
mov dword [esi + 0xa4], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xac], ebx
mov dword [esi + 0xb0], ebx
mov dword [esi + 0xb4], ebx
mov dword [esp + 0x14], ebx
call fcn.004a0b69
mov edi, dword [esp + 0x18]
cmp edi, dword [esp + 0x1c]
mov byte [esp + 0x110], 2
je 0x552533
add edi, 0x20
mov edi, edi
cmp dword [edi], ebx
jne 0x5523a2
cmp dword [edi + 4], ebx
je 0x5523b6
lea eax, [edi - 0x20]
push eax
lea ecx, [esi + 0xb8]
call dword [0x1027633c]
inc dword [esp + 0x10]
lea ebp, [edi - 0x20]
lea ecx, [esp + 0x28]
push ebp
push ecx
call dword [0x10276238]
add esp, 8
test al, al
je 0x5523e6
mov edx, dword [edi]
mov ebp, dword [esi + 0x78]
mov ecx, dword [esi + 0x7c]
add ebp, edx
mov dword [esi + 0x78], ebp
mov eax, dword [edi + 4]
adc ecx, eax
mov dword [esi + 0x7c], ecx
jmp 0x55251d
push ebp
call fcn.00566ba9
add esp, 4
cmp eax, 3
ja 0x55251d
jmp dword [eax*4 + 0x100db468]
mov ecx, dword [esp + 0x1c]
add edi, 0x28
lea eax, [edi - 0x20]
cmp eax, ecx
jne 0x552399
mov ebp, dword [esp + 0x24]
mov ecx, dword [esi + 0x88]
or ecx, dword [esi + 0x8c]
jne 0x55257d
mov edx, dword [esi + 0x90]
or edx, dword [esi + 0x94]
jne 0x55257d
mov eax, dword [esi + 0x98]
or eax, dword [esi + 0x9c]
jne 0x55257d
cmp dword [esp + 0x10], 1
jne 0x55256e
mov dword [esp + 0x10], 0x5a
jmp 0x552596
lea ecx, [esp + 0x28]
mov dword [esp + 0x10], 0xa
push ecx
jmp 0x55258a
lea edx, [esp + 0x28]
mov dword [esp + 0x10], 1
push edx
lea ecx, [esi + 0xb8]
call dword [0x1027633c]
mov eax, dword [esi + 0x68]
cmp dword [eax + 0x78], ebx
je 0x5525ad
lea ecx, [eax + 0x280]
call fcn.005c9059
mov edi, eax
jmp 0x5525af
xor edi, edi
mov eax, dword [esi + 0x68]
cmp dword [eax + 0x78], ebx
je 0x5525e2
push ebx
lea ecx, [eax + 0x280]
call fcn.004fd559
mov edx, dword [eax + 4]
cmp edx, ebx
je 0x5525e2
mov ecx, dword [eax + 8]
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jmp 0x5525e4
xor eax, eax
mov edx, dword [esi + 0x74]
push edi
push eax
mov eax, dword [esp + 0x18]
push ebp
push eax
lea ecx, [esp + 0x100]
push ecx
add edx, 6
push edx
lea ecx, [esi + 0x20]
call fcn.0054ed59
push ebp
call fcn.0049cc83
add esp, 4
lea ecx, [esp + 0x28]
mov byte [esp + 0x110], 1
call dword [0x102763d4]
mov edi, dword [esp + 0x18]
cmp edi, ebx
mov byte [esp + 0x110], bl
je 0x552655
mov ebp, dword [esp + 0x1c]
cmp edi, ebp
je 0x55264c
lea esp, [esp]
mov ecx, edi
call dword [0x102763d4]
add edi, 0x28
cmp edi, ebp
jne 0x552639
mov edi, dword [esp + 0x18]
push edi
call fcn.0049cb9b
add esp, 4
lea ecx, [esp + 0x44]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x110], 0xffffffff
call fcn.0049abcc
pop edi
pop ebp
mov eax, dword [esi + 0x74]
cmp eax, ebx
je 0x5526a8
cmp dword [eax + 0xf8], ebx
je 0x55268d
or dword [esi + 0x114], 1
cmp byte [eax + 0xfc], bl
je 0x55269c
or dword [esi + 0x114], 2
cmp byte [eax + 0x3c], bl
je 0x5526a8
or dword [esi + 0x114], 4
mov eax, dword [esi + 0x68]
cmp byte [eax + 0x3a8], bl
je 0x5526ba
or dword [esi + 0x114], 8
mov ecx, dword [esp + 0x100]
pop esi
mov dword fs:[0], ecx
mov ecx, dword [esp + 0xf8]
pop ebx
xor ecx, esp
call fcn.0049cbf9
add esp, 0x104
ret 4