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

Disassembly:
sub esp, 0x48
mov eax, dword [esp + 0x4c]
push ebx
push ebp
push esi
mov ebp, dword [eax + 8]
lea ebx, [eax + 0x108]
mov esi, dword [eax + 0x10]
mov edx, dword [eax + 4]
mov ecx, dword [eax + 0x198]
mov dword [esp + 0x2c], esi
add esi, ebp
mov dword [esp + 0x4c], esi
mov esi, dword [eax + 0xc]
mov dword [esp + 0xc], ecx
mov ecx, dword [eax + 0x64]
mov dword [esp + 0x28], ebp
lea eax, [esi + edx]
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], eax
lea eax, [esi + ebp]
mov ebp, dword [esp + 0x60]
push edi
mov edi, dword [esp + 0x60]
add ebp, edi
mov dword [esp + 0x38], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0x1c], ecx
mov ecx, edi
lea edx, [ebp - 8]
mov dword [esp + 0x60], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x48], ebp
mov dword [esp + 0x64], eax
cmp edi, edx
jae 0x5600d1
push dword [esp + 0x68]
mov dword [esp + 0x58], edi
push dword [esp + 0x20]
push edi
call fcn.00565644
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x10]
mov edx, dword [ecx + eax*4]
cmp edx, esi
mov ecx, ebx
mov dword [esp + 0x20], edx
cmovb ecx, dword [esp + 0x2c]
add edx, ecx
mov ecx, edi
sub ecx, ebx
mov dword [esp + 0x18], edx
mov dword [esp + 0x24], ecx
sub ecx, dword [esp + 0x60]
inc ecx
cmp ecx, esi
mov dword [esp + 0x3c], ecx
cmovb ebx, dword [esp + 0x2c]
add ebx, ecx
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x24]
mov dword [ebp + eax*4], ebx
mov eax, esi
mov ebx, dword [esp + 0x44]
sub eax, ecx
mov ebp, dword [esp + 0x48]
dec eax
cmp eax, 3
mov eax, dword [esp + 0x30]
sbb ecx, ecx
inc ecx
cmp eax, dword [esp + 0x3c]
sbb eax, eax
neg eax
test eax, ecx
je 0x55fea3
lea eax, [edi + 1]
push eax
mov dword [esp + 0x50], eax
call fcn.0055d838
push dword [esp + 0x44]
mov esi, eax
call fcn.0055d838
pop ecx
pop ecx
cmp eax, esi
jne 0x55fe9f
mov ecx, dword [esp + 0x14]
mov eax, ebp
push dword [esp + 0x34]
cmp dword [esp + 0x40], ecx
cmovb eax, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x48]
add eax, 4
push ebp
push eax
lea eax, [edi + 5]
push eax
call fcn.0056476c
mov edi, dword [esp + 0x60]
add esp, 0x14
mov edx, dword [esp + 0x5c]
mov ecx, edi
sub ecx, edx
and dword [esp + 0x5c], 0
lea esi, [eax + 4]
jmp 0x55ff64
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
cmp dword [esp + 0x20], eax
jb 0x5600aa
push edx
call fcn.0055d838
push edi
mov esi, eax
call fcn.0055d838
pop ecx
pop ecx
cmp esi, eax
jne 0x5600aa
mov ecx, dword [esp + 0x14]
cmp dword [esp + 0x20], ecx
mov esi, dword [esp + 0x34]
mov eax, esi
cmovb eax, dword [esp + 0x50]
mov dword [esp + 0x64], eax
mov eax, ebp
cmovb eax, dword [esp + 0x38]
push esi
push eax
mov eax, dword [esp + 0x20]
add eax, 4
push ebp
push eax
lea eax, [edi + 4]
push eax
call fcn.0056476c
mov edx, dword [esp + 0x70]
add esp, 0x14
lea esi, [eax + 4]
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x18]
sbb ecx, ecx
neg ecx
cmp edx, edi
sbb eax, eax
neg eax
test eax, ecx
je 0x55ff45
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x64]
mov al, byte [edi - 1]
dec ebx
cmp al, byte [ebx]
jne 0x55ff3d
dec edi
inc esi
cmp ebp, ebx
sbb ecx, ecx
neg ecx
cmp edx, edi
sbb eax, eax
neg eax
test eax, ecx
jne 0x55ff23
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x48]
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x24]
sub eax, dword [esp + 0x20]
mov dword [esp + 0x64], ecx
mov ecx, edi
mov dword [esp + 0x60], eax
sub ecx, edx
add eax, 2
mov dword [esp + 0x5c], eax
lea eax, [esi - 3]
push eax
push dword [esp + 0x60]
push edx
push ecx
push ebx
call fcn.0056742c
add edi, esi
lea eax, [ebp - 8]
add esp, 0x14
mov ecx, edi
mov dword [esp + 0x5c], ecx
cmp edi, eax
ja 0x5600c3
push dword [esp + 0x68]
mov eax, dword [esp + 0x58]
push dword [esp + 0x20]
mov esi, dword [esp + 0x2c]
add eax, 2
push eax
add esi, 2
call fcn.00565644
mov ecx, dword [esp + 0x1c]
push dword [esp + 0x74]
push dword [esp + 0x2c]
mov dword [ecx + eax*4], esi
mov esi, edi
sub esi, dword [esp + 0x3c]
lea eax, [edi - 2]
push eax
sub esi, 2
call fcn.00565644
mov ecx, dword [esp + 0x28]
add esp, 0x18
mov dword [ecx + eax*4], esi
mov esi, dword [esp + 0x28]
mov eax, edi
sub eax, dword [esp + 0x28]
mov edx, eax
mov dword [esp + 0x40], eax
sub edx, dword [esp + 0x64]
mov eax, dword [esp + 0x14]
cmp edx, eax
mov dword [esp + 0x54], edx
cmovb esi, dword [esp + 0x2c]
sub eax, edx
add esi, edx
dec eax
cmp eax, 3
mov dword [esp + 0x4c], esi
sbb ecx, ecx
inc ecx
cmp dword [esp + 0x30], edx
sbb eax, eax
neg eax
test eax, ecx
je 0x5600ba
push esi
call fcn.0055d838
push edi
mov esi, eax
call fcn.0055d838
pop ecx
pop ecx
cmp esi, eax
jne 0x5600ba
mov ecx, dword [esp + 0x14]
mov eax, ebp
push dword [esp + 0x34]
cmp dword [esp + 0x58], ecx
cmovb eax, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x54]
add eax, 4
push ebp
push eax
lea eax, [edi + 4]
push eax
call fcn.0056476c
mov ecx, dword [esp + 0x78]
lea esi, [eax + 4]
mov eax, dword [esp + 0x74]
mov dword [esp + 0x74], ecx
lea ecx, [esi - 3]
push ecx
push 0
push edi
push 0
push ebx
mov dword [esp + 0x8c], eax
call fcn.0056742c
push dword [esp + 0x90]
push dword [esp + 0x48]
push edi
call fcn.00565644
mov edx, dword [esp + 0x44]
add edi, esi
mov ecx, dword [esp + 0x74]
add esp, 0x34
mov dword [esp + 0x5c], edi
mov dword [edx + eax*4], ecx
lea eax, [ebp - 8]
mov ecx, edi
cmp edi, eax
jbe 0x55ffd1
jmp 0x5600cd
mov ecx, dword [esp + 0x5c]
mov eax, edi
sub eax, ecx
sar eax, 8
inc eax
add edi, eax
jmp 0x5600be
mov ecx, dword [esp + 0x5c]
lea eax, [ebp - 8]
cmp edi, eax
mov esi, dword [esp + 0x14]
jb 0x55fdbf
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
sub ebp, ecx
push ebp
push ecx
push dword [ebx + 0xc]
mov dword [ebx + 0x30], edx
mov dword [ebx + 0x34], eax
call fcn.0056f420
add esp, 0xc
add dword [ebx + 0xc], ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x48
ret