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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov esi, esp
mov dword [esi + 0x70], ebp
mov dword [esi + 0x74], esp
mov dword [esi + 0x80], 0xffffffff
mov dword [esi + 0x7c], 0x57a270
mov ebx, ecx
mov ecx, dword [ebp + 0x14]
lea edi, [esi + 0x78]
mov eax, dword fs:[0]
cmp ecx, 2
mov dword [esi + 0x78], eax
mov dword fs:[0], edi
mov edi, dword [ebp + 0x10]
jae 0x5734d7
test ecx, ecx
mov dword [esi + 4], edx
mov dword [esi], ebx
je 0x57343d
mov ecx, dword [ebp + 0x14]
mov eax, edi
nop word [eax + eax]
cmp byte [eax], 0x65
je 0x5738ae
inc eax
dec ecx
jne 0x573410
mov ecx, dword [ebp + 0x14]
mov eax, edi
nop word cs:[eax + eax]
nop dword [eax]
cmp byte [eax], 0x45
je 0x5738ae
inc eax
dec ecx
jne 0x573430
mov eax, dword [esi + 4]
mov dword [esi + 0x58], 0x80000005
mov dword [esi + 0x80], 0xffffffff
lea ecx, [esi + 0x10]
lea edx, [eax + 8]
lea eax, [esi + 0x58]
mov dword [esi + 8], edx
push eax
call fcn.00570560
add esp, 4
cmp dword [esi + 0x10], 0xa
jne 0x573595
cmp dword [esi + 0x14], 0
mov edx, dword [esi + 4]
mov ecx, dword [ebp + 0x14]
setne al
test al, al
je 0x5735cf
movq xmm0, qword [edx + 0x10]
mov eax, dword [edx + 0x18]
lea ecx, [esi + 0x10]
mov dword [esi + 4], edx
movq qword [esi + 0x10], xmm0
mov dword [esi + 0x18], eax
call fcn.0056eda0
mov ebx, eax
cmp edx, 0x110000
jne 0x5734b0
mov eax, dword [esi + 4]
mov ebx, dword [eax + 0xc]
mov edx, dword [esi + 8]
lea ecx, [esi + 0x10]
call fcn.005707a0
cmp dword [esi + 0x10], 0
je 0x573696
mov ecx, dword [esi + 4]
lea edx, [esi + 0x14]
call fcn.00570440
mov edx, eax
jmp 0x5736a8
movzx eax, word [edi]
rol ax, 8
movzx eax, ax
cmp eax, 0x3078
je 0x573583
lea eax, [ecx - 2]
movzx ecx, word [edi]
rol cx, 8
movzx ecx, cx
cmp ecx, 0x306f
je 0x573625
movzx ecx, word [edi]
rol cx, 8
movzx ecx, cx
cmp ecx, 0x3062
je 0x573648
cmp dword [ebp + 0x14], 8
mov dword [esi + 4], edx
mov dword [esi], ebx
jb 0x573405
mov ecx, dword [ebp + 0x14]
lea eax, [edi + 3]
and eax, 0xfffffffc
mov dword [esi + 0xc], eax
sub eax, edi
je 0x5736b8
cmp eax, ecx
mov edx, ecx
cmovb edx, eax
test edx, edx
je 0x5736b8
mov ecx, edi
mov ebx, edx
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp byte [ecx], 0x65
je 0x5738ae
inc ecx
dec ebx
jne 0x573560
mov ecx, dword [ebp + 0x14]
add ecx, 0xfffffff8
cmp edx, ecx
mov dword [esi + 8], ecx
jbe 0x5736c0
jmp 0x573712
add ecx, 0xfffffffe
add edi, 2
mov eax, ecx
lea ecx, [esi + 0x10]
push 0x10
jmp 0x573650
movq xmm0, qword [esi + 0x10]
movq xmm1, qword [esi + 0x18]
movq xmm2, qword [esi + 0x20]
mov ebx, dword [esi]
mov ecx, dword [ebp + 0x14]
movq qword [esi + 0x40], xmm0
movq qword [esi + 0x50], xmm2
movq qword [esi + 0x48], xmm1
cmp dword [esi + 0x40], 0xa
jne 0x57362f
movzx eax, byte [esi + 0x44]
mov edx, dword [esi + 4]
mov dword [esi], ebx
test al, al
jne 0x573485
cmp ecx, 4
je 0x57376a
cmp ecx, 3
jne 0x573782
movzx eax, word [edi]
movzx ecx, byte [edi + 2]
xor eax, 0x6e69
xor ecx, 0x66
or cx, ax
je 0x573946
movzx eax, word [edi]
movzx ecx, byte [edi + 2]
xor eax, 0x616e
xor ecx, 0x6e
or cx, ax
jne 0x573782
mov ecx, dword [esi]
mov dword [ecx], 0x80000001
mov dword [ecx + 0xc], 0x7ff80000
jmp 0x573977
add edi, 2
lea ecx, [esi + 0x10]
push 8
jmp 0x573650
mov ecx, dword [esi + 4]
lea edx, [esi + 0x40]
call fcn.00570440
mov dword [ebx + 4], eax
mov dword [ebx], 0x80000007
jmp 0x5739c9
add edi, 2
lea ecx, [esi + 0x10]
push 2
push eax
push edi
call fcn.00575010
add esp, 0xc
cmp dword [esi + 0x10], 0
je 0x573672
mov eax, dword [esi + 0x14]
mov ecx, 0x80000007
mov dword [ebx + 4], eax
mov dword [ebx], ecx
jmp 0x5739c9
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [ebp + 8]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
mov edx, dword [ebp + 0xc]
mov dword [ebx + 0x10], ecx
mov ecx, 0x80000000
mov dword [ebx + 0x14], edx
mov dword [ebx], ecx
jmp 0x5739c9
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x14]
cmp ecx, 0x8000000f
jne 0x5737c3
mov eax, dword [esi]
mov dword [eax + 4], edx
mov dword [eax], 0x80000007
jmp 0x5739c9
add ecx, 0xfffffff8
xor edx, edx
mov dword [esi + 8], ecx
movdqa xmm0, xmmword [0x589b40]
movdqa xmm1, xmmword [0x589370]
movdqa xmm2, xmmword [0x589380]
nop dword [eax + eax]
movq xmm3, qword [edi + edx]
movdqa xmm4, xmm3
pxor xmm4, xmm0
paddd xmm4, xmm1
pandn xmm3, xmm4
pand xmm3, xmm2
movd ebx, xmm3
pshufd xmm3, xmm3, 0x55
movd ecx, xmm3
or ecx, ebx
jne 0x573712
add edx, 8
cmp edx, dword [esi + 8]
jbe 0x5736e0
mov ecx, dword [ebp + 0x14]
sub ecx, edx
je 0x57372d
add edx, edi
nop dword [eax + eax]
cmp byte [edx], 0x65
je 0x5738ae
inc edx
dec ecx
jne 0x573720
cmp dword [esi + 0xc], edi
mov ecx, dword [ebp + 0x14]
je 0x573843
cmp eax, ecx
cmovae eax, ecx
test eax, eax
je 0x573843
mov ecx, edi
mov edx, eax
cmp byte [ecx], 0x45
je 0x5738ae
inc ecx
dec edx
jne 0x57374a
mov ecx, dword [ebp + 0x14]
add ecx, 0xfffffff8
cmp eax, ecx
jbe 0x573848
jmp 0x573891
cmp dword [edi], 0x666e692d
je 0x573957
cmp dword [edi], 0x6e616e2d
je 0x573968
lea ecx, [esi + 0x10]
push 0xa
push dword [ebp + 0x14]
push edi
call fcn.00575010
add esp, 0xc
cmp dword [esi + 0x10], 0
jne 0x5738d5
mov ecx, dword [esi]
mov edi, dword [esi + 0x1c]
mov eax, dword [esi + 0x18]
mov edx, dword [ebp + 8]
mov dword [ecx + 0xc], edi
mov edi, dword [ebp + 0xc]
mov dword [ecx + 8], eax
mov dword [ecx + 0x10], edx
mov edx, 0x80000000
mov dword [ecx + 0x14], edi
mov dword [ecx], edx
jmp 0x5739c9
mov eax, dword [esi + 0x20]
cmp ecx, 0x8000000e
mov dword [esi + 0xc], ebx
mov dword [esi + 8], ecx
mov dword [esi + 0x34], eax
je 0x57390d
lea ebx, [ecx + 0x7fffffff]
mov eax, 0xd
cmp ebx, 0xd
cmovb eax, ebx
cmp eax, 0xc
jne 0x57390d
mov dword [esi + 0x38], ebx
mov eax, dword [esi + 0x18]
mov ebx, dword [esi + 0x24]
mov dword [esi + 0xc], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x80], 0
lea ecx, [esi + 0x10]
mov dword [esi + 0x3c], eax
push ebx
push dword [esi + 0x34]
push dword [ebp + 0x14]
push edi
call fcn.005756d0
add esp, 0x10
cmp dword [esi + 0x10], 0
mov ecx, dword [esi]
mov eax, dword [esi + 0xc]
je 0x57398c
mov eax, dword [esi + 0x14]
mov dword [ecx + 4], eax
mov eax, 0x80000007
jmp 0x5739a4
add ecx, 0xfffffff8
xor eax, eax
movdqa xmm0, xmmword [str.EEEEEEEE]
movdqa xmm1, xmmword [0x589370]
movdqa xmm2, xmmword [0x589380]
movq xmm3, qword [edi + eax]
movdqa xmm4, xmm3
pxor xmm4, xmm0
paddd xmm4, xmm1
pandn xmm3, xmm4
pand xmm3, xmm2
movd edx, xmm3
pshufd xmm3, xmm3, 0x55
movd ebx, xmm3
or ebx, edx
jne 0x573891
add eax, 8
cmp eax, ecx
jbe 0x573860
mov ecx, dword [ebp + 0x14]
sub ecx, eax
je 0x57343d
add eax, edi
nop
cmp byte [eax], 0x45
je 0x5738ae
inc eax
dec ecx
jne 0x5738a0
jmp 0x57343d
mov dword [esi + 0x80], 0xffffffff
sub esp, 4
mov edx, dword [esi + 4]
lea ecx, [esi + 0x10]
push 0
push dword [ebp + 0x14]
push edi
call fcn.005756d0
add esp, 0x10
cmp dword [esi + 0x10], 0
je 0x5738e9
mov eax, dword [esi + 0x14]
mov ecx, dword [esi]
mov edx, 0x80000007
mov dword [ecx + 4], eax
mov dword [ecx], edx
jmp 0x5739c9
movq xmm0, qword [esi + 0x18]
mov ecx, dword [esi]
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov edx, 0x80000001
movq qword [ecx + 8], xmm0
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edi
mov dword [ecx], edx
jmp 0x5739c9
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0xc]
lea eax, [esi + 0x10]
mov dword [esi + 0x10], 0x80000009
mov dword [esi + 0x80], 0
push eax
call fcn.0056f950
add esp, 4
mov ecx, dword [esi]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
mov dword [ecx], 0x80000007
lea edx, [eax + 0x7fffffff]
jmp 0x5739ac
mov ecx, dword [esi]
mov dword [ecx], 0x80000001
mov dword [ecx + 0xc], 0x7ff00000
jmp 0x573977
mov ecx, dword [esi]
mov dword [ecx], 0x80000001
mov dword [ecx + 0xc], 0xfff00000
jmp 0x573977
mov ecx, dword [esi]
mov dword [ecx], 0x80000001
mov dword [ecx + 0xc], 0xfff80000
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov dword [ecx + 8], 0
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
jmp 0x5739c9
movq xmm0, qword [esi + 0x18]
movq qword [ecx + 8], xmm0
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x3c]
mov dword [ecx + 0x14], eax
mov eax, 0x80000001
mov dword [ecx], eax
mov edx, dword [esi + 0x38]
mov eax, dword [esi + 8]
cmp edx, 0xe
jb 0x5739c9
test eax, 0x7fffffff
je 0x5739c9
push dword [esi + 0x34]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esi + 0x78]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret