Function at 0x5570b0
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [esp + 0x180]
xor ebx, ebx
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x184]
add eax, ecx
xor ecx, ecx
mov cl, byte [eax + 0xf]
mov bl, byte [eax + 1]
mov edi, ecx
xor ecx, ecx
mov cl, byte [eax]
mov dword [esp + 0x4c], edi
mov esi, ecx
xor ecx, ecx
mov cl, byte [eax + 0xe]
lea ebp, [esi + edi]
mov edi, ebx
mov dword [esp + 0x74], ecx
add ecx, edi
mov dword [esp + 0x38], ecx
xor ebx, ebx
mov bl, byte [eax + 2]
xor ecx, ecx
mov cl, byte [eax + 0xd]
mov dword [esp + 0x68], ebx
add ebx, ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x1c], ebx
xor ebx, ebx
mov bl, byte [eax + 3]
xor ecx, ecx
mov cl, byte [eax + 0xc]
mov dword [esp + 0x6c], ebx
add ebx, ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x20], ebx
xor ebx, ebx
mov bl, byte [eax + 4]
xor ecx, ecx
mov cl, byte [eax + 0xb]
mov dword [esp + 0x50], ebx
add ebx, ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x14], ebx
xor ebx, ebx
mov bl, byte [eax + 5]
xor ecx, ecx
mov cl, byte [eax + 0xa]
mov dword [esp + 0x54], ebx
add ebx, ecx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x10], ebx
xor ebx, ebx
mov bl, byte [eax + 9]
xor ecx, ecx
mov cl, byte [eax + 6]
mov dword [esp + 0x60], ebx
add ebx, ecx
mov dword [esp + 0x18], ebx
xor ebx, ebx
mov bl, byte [eax + 8]
mov dword [esp + 0x24], ebx
xor ebx, ebx
mov bl, byte [eax + 7]
mov eax, ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x48], eax
add eax, ebx
lea ebx, [eax + ebp]
sub ebp, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x34], ebp
mov ebp, dword [esp + 0x18]
add ebp, eax
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x18]
sub eax, ebp
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c]
add ebp, eax
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x10]
sub eax, ebp
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x20]
add ebp, eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x14]
sub eax, ebp
mov ebp, dword [esp + 0x4c]
insb byte es:[edi], dx
and al, 0x4c
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x74]
sub esi, ebp
mov ebp, dword [esp + 0x70]
sub edi, eax
mov eax, dword [esp + 0x68]
sub eax, ebp
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x6c]
sub eax, ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x50]
sub eax, ebp
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x54]
sub eax, ebp
mov ebp, dword [esp + 0x60]
sub ecx, ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x48]
sub ecx, ebp
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x10]
add ebp, ecx
mov ecx, dword [esp + 0x30]
add ebp, ecx
add ebp, ebx
lea ebp, [ebp*4 - 0x2000]
mov dword [edx], ebp
mov ebp, dword [esp + 0x10]
sub ebx, ebp
mov ebp, dword [esp + 0x2c]
sub ecx, ebp
imul ebx, ebx, 0x29cf
lea ebp, [ecx + ecx*2]
shl ebp, 3
sub ebp, ecx
lea ebp, [ebp + ebp*2]
lea ebp, [ecx + ebp*4]
shl ebp, 4
add ebp, ecx
lea ecx, [ebx + ebp + 0x400]
mov ebx, dword [esp + 0x40]
sar ecx, 0xb
mov dword [edx + 0x10], ecx
mov ecx, dword [esp + 0x34]
sub ecx, ebx
lea ebx, [ecx + ecx*8]
shl ebx, 3
sub ebx, ecx
lea ebx, [ebx + ebx*4]
shl ebx, 4
add ebx, ecx
lea ebp, [ecx + ebx*2]
mov ebx, dword [esp + 0x44]
sub ebx, dword [esp + 0x28]
lea ecx, [ebx*8]
sub ecx, ebx
shl ecx, 4
add ecx, ebx
mov ebx, dword [esp + 0x40]
lea ecx, [ecx + ecx*4]
lea ebp, [ebp + ecx*4]
mov dword [esp + 0x10], ebp
mov ecx, dword [esp + 0x28]
imul ebx, ebx, 0x4587
imul ecx, ecx, 0x2e75
add ebp, ebx
lea ecx, [ecx + ebp + 0x400]
sar ecx, 0xb
mov dword [edx + 8], ecx
mov ecx, dword [esp + 0x44]
mov ebx, ecx
shl ebx, 4
add ebx, ecx
shl ebx, 6
sub ebx, ecx
lea ecx, [ecx + ebx*8]
mov ebx, dword [esp + 0x34]
mov ebp, ecx
lea ecx, [ebx*4]
sub ecx, ebx
neg ecx
lea ecx, [ecx + ecx*8]
shl ecx, 5
sub ecx, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 1
sub ecx, ebp
mov ebp, dword [esp + 0x24]
lea ecx, [ecx + ebx + 0x400]
lea ebx, [edi + esi]
sar ecx, 0xb
imul ebx, ebx, 0x2b4e
mov dword [edx + 0x18], ecx
mov ecx, dword [esp + 0x18]
sub ecx, ebp
lea ebp, [ecx + ecx*4]
lea ebp, [ecx + ebp*4]
lea ebp, [ebp + ebp*4]
shl ebp, 4
add ebp, ecx
lea ecx, [ecx + ebp*2]
add ebx, ecx
mov ecx, dword [esp + 0x1c]
add ecx, esi
mov dword [esp + 0x30], ebx
lea ebx, [ecx + ecx*4]
shl ebx, 6
sub ebx, ecx
lea ebx, [ecx + ebx*4]
lea ebp, [ecx + ebx*8]
mov ecx, dword [esp + 0x24]
lea ebx, [ecx + eax]
mov ecx, ebx
shl ecx, 4
add ecx, ebx
shl ecx, 4
add ecx, ebx
lea ecx, [ecx + ecx*4]
lea ecx, [ebx + ecx*4]
mov ebx, dword [esp + 0x24]
add ebp, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2c], ebp
lea ebp, [ecx + esi]
mov ecx, dword [esp + 0x14]
sub ecx, ebx
imul ebp, ebp, 0x22fc
lea ebx, [ecx + ecx*2]
shl ebx, 4
add ebx, ecx
lea ebx, [ebx + ebx*2]
lea ecx, [ebx + ebx*4]
lea ecx, [ecx + ecx*4]
lea ecx, [ebp + ecx*2]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x18]
sub ecx, eax
lea ebx, [ecx + ecx*4]
shl ebx, 8
add ebx, ecx
mov ecx, dword [esp + 0x1c]
add ecx, edi
lea ebx, [ebx + ebx*8]
lea ebp, [ecx + ecx*8]
shl ebp, 3
sub ebp, ecx
mov ecx, dword [esp + 0x14]
shl ebp, 4
add ebx, ebp
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x18]
add ecx, ebx
lea ebx, [ecx + ecx*4]
shl ebx, 6
mov ecx, eax
jecxz 0x556fe7
sub ebx, ecx
lea ebx, [ecx + ebx*4]
lea ecx, [ecx + ebx*8]
or al, 0xd9
mov ebp, ecx
mov ecx, dword [esp + 0x20]
lea ebx, [ecx + edi]
mov ecx, ebx
neg ecx
shl ecx, 4
sub ecx, ebx
shl ecx, 4
sub ecx, ebx
lea ecx, [ecx + ecx*4]
shl ecx, 2
sub ecx, ebx
mov ebx, dword [esp + 0x1c]
sub ecx, ebp
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x20]
lea ebp, [ecx + ebx]
mov ebx, dword [esp + 0x14]
mov ecx, eax
imul ebp, ebp, 0x2b4e
sub ecx, ebx
lea ebx, [ecx + ecx*4]
lea ebx, [ecx + ebx*4]
lea ebx, [ebx + ebx*4]
shl ebx, 4
add ebx, ecx
lea ebx, [ecx + ebx*2]
lea ecx, [esi + esi*2]
sub ebx, ebp
lea ecx, [esi + ecx*4]
lea ecx, [ecx + ecx*8]
shl ecx, 4
add ecx, esi
mov esi, dword [esp + 0x24]
lea ecx, [ecx + ecx*4]
shl ecx, 1
mov ebp, ecx
mov ecx, esi
shl ecx, 5
add ecx, esi
lea ecx, [esi + ecx*4]
shl ecx, 4
add ecx, esi
mov esi, dword [esp + 0x10]
lea ecx, [ecx + ecx*2]
sub ecx, ebp
mov ebp, dword [esp + 0x2c]
add ecx, esi
add ecx, ebp
mov ebp, dword [esp + 0x30]
add ecx, ebp
mov ebp, dword [esp + 0x18]
add ecx, 0x400
imul ebp, ebp, 0x353f
sar ecx, 0xb
mov dword [edx + 4], ecx
lea ecx, [edi + edi*2]
shl ecx, 4
add ecx, edi
lea ecx, [ecx + ecx*2]
lea ecx, [edi + ecx*4]
mov edi, dword [esp + 0x30]
sub ecx, ebp
mov ebp, dword [esp + 0x28]
add ecx, ebp
add ecx, edi
mov edi, dword [esp + 0x34]
lea ecx, [ecx + edi + 0x400]
invalid
cmp dword [eax], eax
add al, 0
add cl, al
stc
or ecx, dword [ecx + 0xc8d0c4a]
inc eax
cmp dword [eax], eax
add al, 0
add cl, al
stc
or ecx, dword [ecx + 0xc8d0c4a]
inc eax
lea ecx, [eax + ecx*8]
lea ecx, [eax + ecx*8]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov ebp, eax
lea eax, [ecx + ecx*2]
shl eax, 9
add eax, ecx
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x2c]
shl ecx, 1
sub ebp, ecx
mov ecx, dword [esp + 0x14]
add ebp, ebx
imul ecx, ecx, 0x4560
add ebp, eax
add esi, ecx
lea eax, [edi + ebp + 0x400]
sar eax, 0xb
mov dword [edx + 0x14], eax
mov eax, dword [esp + 0x20]
mov edi, eax
shl edi, 4
add edi, eax
shl edi, 5
add edi, eax
lea eax, [eax + edi*2]
lea ecx, [esi + eax*8]
mov eax, dword [esp + 0x28]
add ecx, ebx
lea ecx, [ecx + eax + 0x400]
mov eax, dword [esp + 0x3c]
sar ecx, 0xb
inc eax
mov dword [edx + 0x1c], ecx
cmp eax, 8
mov dword [esp + 0x3c], eax
je 0x557148
cmp eax, 0x10
je 0x557151
add edx, 0x20
jmp 0x556cb7
lea edx, [esp + 0x78]
jmp 0x556cb7
mov esi, dword [esp + 0x17c]
lea edx, [esp + 0x138]
lea ecx, [esp + 0x138]
mov dword [esp + 0x4c], 8
lea eax, [esi + 0x40]
sub esi, edx
mov dword [esp + 0x3c], esi
jmp 0x55717d
mov edx, dword [ecx + 0x20]
mov edi, dword [esi + ecx]
mov ebx, dword [ecx]
mov ebp, dword [eax]
lea esi, [edi + edx]
mov edx, dword [eax - 0x20]
add ebx, edx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x38], ebx
mov ebx, dword [ecx - 0x20]
add ebx, ebp
mov ebp, dword [eax + 0x20]
mov dword [esp + 0x1c], ebx
mov ebx, dword [ecx - 0x40]
mov dword [esp + 0x60], ebp
add ebp, ebx
mov ebx, dword [ecx - 0x60]
mov dword [esp + 0x20], ebp
mov ebp, dword [eax + 0x40]
mov dword [esp + 0x58], ebp
add ebp, ebx
mov ebx, dword [ecx - 0x80]
mov dword [esp + 0x14], ebp
mov ebp, dword [eax + 0x60]
mov dword [esp + 0x54], ebp
add ebp, ebx
mov ebx, dword [ecx - 0xa0]
mov dword [esp + 0x10], ebp
mov ebp, dword [eax + 0x80]
mov dword [esp + 0x5c], ebp
add ebp, ebx
mov ebx, dword [eax + 0xa0]
mov dword [esp + 0x18], ebp
mov ebp, dword [ecx - 0xc0]
mov dword [esp + 0x50], ebx
add ebp, ebx
lea ebx, [esi + ebp]
sub esi, ebp
mov ebp, dword [esp - 0x18]
dec ebx
mov byte [eax], al
add bl, ch
jo 0x557193
add edi, dword [edx + 0xd3c210]
cmp eax, dword [edx]
jne 0x55721c
push edi
push ebp
push esi
call fcn.00560820
jmp 0x557277
mov edx, dword [ebx]
mov ecx, 0xd3c218
cmp edx, dword [ecx]
jne 0x557231
push edi
push ebp
push esi
call fcn.00560730
jmp 0x557277
mov ecx, dword [ebx]
mov eax, 0xd3c220
cmp ecx, dword [eax]
jne 0x557246
push edi
push ebp
push esi
call fcn.0055fc40
jmp 0x557277
mov eax, dword [ebx]
mov edx, 0xd3c228
cmp eax, dword [edx]
jne 0x55725b
push edi
push ebp
push esi
call fcn.005608f0
jmp 0x557277
mov edx, dword [ebx]
mov ecx, 0xd3c1d0
push edi
push ebp
mov eax, dword [ecx]
push esi
cmp edx, eax
jne 0x557272
call fcn.00560a00
jmp 0x557277
call fcn.00560b70
add esp, 0xc
test byte [esi + 0x70], 0x10
je 0x556fdd
pop edi
pop esi
pop ebp
pop ebx
ret