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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xf0
mov esi, esp
mov dword [esi + 0xd8], ebp
mov dword [esi + 0xdc], esp
mov dword [esi + 0xe8], 0xffffffff
mov dword [esi + 0xe4], 0x705410
mov dword [esi + 0x2c], edx
mov edi, ecx
call 0x5d376b
pop ecx
mov eax, dword fs:[0]
mov dword [esi + 0xe0], eax
lea eax, [esi + 0xe0]
mov dword fs:[0], eax
mov eax, dword [0x919014]
mov dword [esi + 0x28], ecx
cmp eax, 2
jne 0x5d3e91
xor eax, eax
cmp byte [0x9191f0], 2
lea ebx, [0x919018]
cmove ebx, eax
jne 0x5d37c9
mov dword [edi + 4], 0
mov dword [edi], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], 0
jmp 0x5d4815
mov dword [esi + 0x78], edi
mov eax, dword [0x919748]
cmp eax, 2
jne 0x5d3fb1
mov eax, dword [esi + 0x2c]
cmp byte [0x919118], 0
mov dword [esi + 0xbc], ebx
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0x4c], eax
mov dword [esi + 0x18], ecx
je 0x5d3b20
mov eax, dword [0x919748]
cmp eax, 2
jne 0x5d493a
cmp ecx, 0xa
mov dword [esi + 0x50], 4
mov dword [esi + 0x54], 0
mov dword [esi + 0x58], 0
je 0x5d3942
cmp ecx, 7
jne 0x5d3b20
cmp dword [0x919734], 0
je 0x5d3b20
mov edx, dword [0x91973c]
mov ecx, dword [0x919738]
push 0x14
push 0x8a6df4
push dword [0x919744]
push dword [0x919740]
call fcn.005d71b0
add esp, 0x10
mov edi, eax
mov ecx, dword [0x919728]
mov edx, dword [0x91972c]
movdqa xmm2, xmmword [0x726f60]
movdqa xmm3, xmmword [0x726f50]
pcmpeqd xmm1, xmm1
mov dword [esi + 0x14], 0
shr edi, 0x19
movd xmm0, edi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0xc], ecx
mov dword [esi + 0x30], edx
pshufd xmm0, xmm0, 0
and eax, edx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [ecx + eax]
mov dword [esi + 0x10], eax
pcmpeqb xmm5, xmm4
pmovmskb ebx, xmm5
jmp 0x5d38cd
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
lea ecx, [ebx - 1]
and ecx, ebx
mov ebx, ecx
test bx, bx
je 0x5d391a
tzcnt edi, ebx
add edi, eax
mov eax, dword [esi + 0xc]
and edi, edx
lea edx, [edi*8]
mov ecx, eax
sub ecx, edx
cmp dword [ecx - 4], 0x14
jne 0x5d38c0
neg edi
mov ecx, dword [eax + edi*8 - 8]
movdqu xmm5, xmmword [ecx]
movd xmm6, dword [ecx + 0x10]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d38c0
jmp 0x5d3a5f
mov ecx, dword [esi + 0x18]
pcmpeqb xmm4, xmm1
pmovmskb edi, xmm4
test edi, edi
jne 0x5d3b20
mov ecx, dword [esi + 0x14]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0xc]
jmp 0x5d38a8
cmp dword [0x919734], 0
je 0x5d3b20
mov edx, dword [0x91973c]
mov ecx, dword [0x919738]
push 0x18
push 0x8a6e08
push dword [0x919744]
push dword [0x919740]
call fcn.005d71b0
add esp, 0x10
mov edi, eax
mov ecx, dword [0x919728]
mov edx, dword [0x91972c]
movdqa xmm2, xmmword [str.platform_androidEGL_KHR_platform_gbm]
movdqa xmm3, xmmword [0x726f50]
pcmpeqd xmm1, xmm1
mov dword [esi + 0x14], 0
shr edi, 0x19
movd xmm0, edi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0xc], ecx
mov dword [esi + 0x30], edx
pshufd xmm0, xmm0, 0
and eax, edx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [ecx + eax]
mov dword [esi + 0x10], eax
pcmpeqb xmm5, xmm4
pmovmskb ebx, xmm5
jmp 0x5d39ed
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
lea ecx, [ebx - 1]
and ecx, ebx
mov ebx, ecx
test bx, bx
je 0x5d3a37
tzcnt edi, ebx
add edi, eax
mov eax, dword [esi + 0xc]
and edi, edx
lea edx, [edi*8]
mov ecx, eax
sub ecx, edx
cmp dword [ecx - 4], 0x18
jne 0x5d39e0
neg edi
mov ecx, dword [eax + edi*8 - 8]
movdqu xmm5, xmmword [ecx]
movdqu xmm6, xmmword [ecx + 8]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d39e0
jmp 0x5d3a6e
mov ecx, dword [esi + 0x18]
pcmpeqb xmm4, xmm1
pmovmskb edi, xmm4
test edi, edi
jne 0x5d3b20
mov ecx, dword [esi + 0x14]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0xc]
jmp 0x5d39ba
mov eax, dword [esi + 0x4c]
mov dword [esi + 0xc], 0x31d7
mov dword [esi + 0x10], eax
jmp 0x5d3a7c
mov dword [esi + 0x10], 0
mov dword [esi + 0xc], 0x3141
lea ecx, [esi + 0x50]
xor edx, edx
mov dword [esi + 0xe8], 0
call fcn.005a6860
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x58]
mov dword [eax + ecx*4], 0x3038
inc ecx
mov dword [esi + 0x58], ecx
push eax
push dword [esi + 0x10]
push dword [esi + 0xc]
call dword [0x919114]
mov edx, eax
test eax, eax
je 0x5d3f1e
mov dword [esi + 0x14], 0
mov ebx, 2
mov ecx, dword [esi + 0x18]
mov dword [esi + 0xc], 0
cmp dword [esi + 0x54], 0
je 0x5d3af0
push dword [esi + 0x50]
push 0
push dword [0x919820]
mov edi, ebx
mov ebx, edx
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x18]
mov edx, ebx
mov ebx, edi
mov eax, ebx
xor eax, 2
or eax, dword [esi + 0xc]
je 0x5d412c
cmp dword [esi + 0x10], 4
jne 0x5d3b20
xor edi, edi
mov dword [esi + 0x10], 4
mov dword [esi + 0x30], 0x8a6ef4
mov dword [esi + 0x24], 0x2c
jmp 0x5d42d2
cmp byte [0x919120], 0
je 0x5d3d9e
mov eax, dword [0x919748]
cmp eax, 2
jne 0x5d4953
cmp ecx, 8
mov dword [esi + 0x88], 4
mov dword [esi + 0x8c], 0
mov dword [esi + 0x90], 0
je 0x5d3c82
cmp ecx, 7
jne 0x5d3d9e
cmp dword [0x919734], 0
je 0x5d3d9e
mov edx, dword [0x91973c]
mov ecx, dword [0x919738]
push 0x15
push 0x8a6e58
push dword [0x919744]
push dword [0x919740]
call fcn.005d71b0
add esp, 0x10
mov edi, eax
mov ecx, dword [0x919728]
mov edx, dword [0x91972c]
movdqa xmm2, xmmword [0x726f90]
movdqa xmm3, xmmword [0x726fa0]
pcmpeqd xmm1, xmm1
mov dword [esi + 0x14], 0
shr edi, 0x19
movd xmm0, edi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0xc], ecx
mov dword [esi + 0x30], edx
pshufd xmm0, xmm0, 0
and eax, edx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [ecx + eax]
mov dword [esi + 0x10], eax
pcmpeqb xmm5, xmm4
pmovmskb ebx, xmm5
jmp 0x5d3c0d
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
lea ecx, [ebx - 1]
and ecx, ebx
mov ebx, ecx
test bx, bx
je 0x5d3c5a
tzcnt edi, ebx
add edi, eax
mov eax, dword [esi + 0xc]
and edi, edx
lea edx, [edi*8]
mov ecx, eax
sub ecx, edx
cmp dword [ecx - 4], 0x15
jne 0x5d3c00
neg edi
mov ecx, dword [eax + edi*8 - 8]
movdqu xmm5, xmmword [ecx]
movdqu xmm6, xmmword [ecx + 5]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d3c00
jmp 0x5d3e9b
mov ecx, dword [esi + 0x18]
pcmpeqb xmm4, xmm1
pmovmskb edi, xmm4
test edi, edi
jne 0x5d3d9e
mov ecx, dword [esi + 0x14]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0xc]
jmp 0x5d3be3
cmp dword [0x919734], 0
je 0x5d3d9e
mov edx, dword [0x91973c]
mov ecx, dword [0x919738]
push 0x18
push 0x8a6e6d
push dword [0x919744]
push dword [0x919740]
call fcn.005d71b0
add esp, 0x10
mov edi, eax
mov ecx, dword [0x919728]
mov edx, dword [0x91972c]
movdqa xmm2, xmmword [str.E_platform_angleEGL_ANGLE_platfoESA_platform_gbmEGL_MESA_platforxel_format_floatEGL_EXT_pixel_foHR_gl_colorspaceEGL_KHR_gl_colorcontext_no_errorEGL_KHR_create_c_ARB_multisampleWGL_ARB_multisamWGL_ARB_pixel_foframebuffer_sRGBWGL_ARB_framebufWGL_EXT_framebufWGL_EXT_colorspace]
movdqa xmm3, xmmword [0x726f80]
pcmpeqd xmm1, xmm1
mov dword [esi + 0x14], 0
shr edi, 0x19
movd xmm0, edi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0xc], ecx
mov dword [esi + 0x30], edx
pshufd xmm0, xmm0, 0
and eax, edx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [ecx + eax]
mov dword [esi + 0x10], eax
pcmpeqb xmm5, xmm4
pmovmskb ebx, xmm5
jmp 0x5d3d2d
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
lea ecx, [ebx - 1]
and ecx, ebx
mov ebx, ecx
test bx, bx
je 0x5d3d7a
tzcnt edi, ebx
add edi, eax
mov eax, dword [esi + 0xc]
and edi, edx
lea edx, [edi*8]
mov ecx, eax
sub ecx, edx
cmp dword [ecx - 4], 0x18
jne 0x5d3d20
neg edi
mov ecx, dword [eax + edi*8 - 8]
movdqu xmm5, xmmword [ecx]
movdqu xmm6, xmmword [ecx + 8]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d3d20
jmp 0x5d3eb1
mov ecx, dword [esi + 0x18]
pcmpeqb xmm4, xmm1
pmovmskb edi, xmm4
test edi, edi
jne 0x5d3d9e
mov ecx, dword [esi + 0x14]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0xc]
jmp 0x5d3cfa
xor edi, edi
cmp ecx, 0xa
je 0x5d3dc3
cmp ecx, 7
mov dword [esi + 0x10], 0x12
jne 0x5d3e19
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x1c], edi
mov dword [esi + 0xe8], 3
jmp 0x5d3dcf
mov dword [esi + 0x10], 0x12
mov dword [esi + 0x1c], edi
xor eax, eax
mov dword [esi + 0xe8], 3
push eax
call dword [0x919104]
mov edx, eax
test eax, eax
mov dword [esi + 0x30], 0x8a6ef4
mov dword [esi + 0x24], 0x2c
je 0x5d3e3f
mov edi, dword [esi + 0x1c]
mov dword [esi + 0xc], 0
mov dword [esi + 0x14], 2
mov cl, 1
mov ebx, 2
test edi, edi
jne 0x5d40f5
jmp 0x5d4122
mov dword [esi + 0x30], 0x8a6e20
mov dword [esi + 0x24], 0x28
xor ebx, ebx
mov dword [esi + 0xc], 0
xor ecx, ecx
test edi, edi
jne 0x5d40f5
jmp 0x5d4122
mov eax, dword [0x919014]
cmp eax, 2
je 0x5d3e4e
call fcn.00718330
cmp byte [0x9191f0], 2
je 0x5d4991
call dword [0x91910c]
mov dword [esi + 0x14], eax
add eax, 0xffffd000
mov ebx, 1
cmp eax, 0xe
ja 0x5d4084
mov eax, dword [eax*4 + 0x5d4ae8]
mov edi, dword [esi + 0x1c]
add eax, dword [esi + 0x28]
jmp eax
call fcn.00718330
jmp 0x5d3795
mov eax, dword [esi + 0x4c]
mov dword [esi + 0xc], 0x31d7
mov dword [esi + 0x14], 1
mov dword [esi + 0x10], eax
jmp 0x5d3ec6
mov dword [esi + 0x10], 0
mov dword [esi + 0xc], 0x3202
mov dword [esi + 0x14], 2
lea ecx, [esi + 0x88]
xor edx, edx
mov dword [esi + 0xe8], 2
call fcn.005a6860
mov ecx, dword [esi + 0x88]
mov eax, dword [esi + 0x90]
mov dword [ecx + eax*4], 0x3038
inc eax
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x90], eax
push ecx
push dword [esi + 0x10]
push dword [esi + 0xc]
call dword [0x91911c]
mov edx, eax
test eax, eax
je 0x5d3f75
mov dword [esi + 0xc], 0
mov ebx, 2
jmp 0x5d3fe7
mov eax, dword [0x919014]
cmp eax, 2
je 0x5d3f2d
call fcn.00718330
cmp byte [0x9191f0], 2
je 0x5d49aa
call dword [0x91910c]
mov dword [esi + 0x14], eax
add eax, 0xffffd000
mov ebx, 1
cmp eax, 0xe
ja 0x5d48ac
mov eax, dword [eax*4 + 0x5d4aac]
mov ecx, dword [esi + 0x18]
add eax, dword [esi + 0x28]
jmp eax
lea ecx, [esi + 0x50]
call fcn.005da450
mov ebx, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
mov eax, ebx
mov dword [esi + 0xc], ecx
xor eax, 2
or eax, ecx
jne 0x5d3fbd
xor edi, edi
xor ebx, ebx
mov dword [esi + 0x24], 0x2c
mov dword [esi + 0x30], 0x8a6ef4
mov dword [esi + 0x20], 0x12
mov dword [esi + 0xc], 0
jmp 0x5d3fe7
mov ecx, ebx
call fcn.007182b0
jmp 0x5d37da
mov ecx, dword [esi + 0x60]
mov edi, dword [esi + 0x64]
mov eax, dword [esi + 0x58]
movsd xmm0, qword [esi + 0x70]
mov edx, dword [esi + 0x5c]
mov dword [esi + 0x20], ecx
mov ecx, dword [esi + 0x68]
mov dword [esi + 0x30], edi
mov edi, dword [esi + 0x6c]
mov dword [esi + 0x14], eax
movaps xmmword [esi + 0xa0], xmm0
mov dword [esi + 0x24], ecx
mov ecx, dword [esi + 0x18]
cmp dword [esi + 0x8c], 0
je 0x5d4015
push dword [esi + 0x1c]
push 0
push dword [0x919820]
mov dword [esi + 0x1c], edi
mov edi, ebx
mov ebx, edx
call dword [sym.imp.kernel32.dll_HeapFree]
mov edx, ebx
mov ebx, edi
mov edi, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov eax, ebx
xor eax, 2
or eax, dword [esi + 0xc]
je 0x5d412c
cmp dword [esi + 0x20], 4
mov dword [esi + 0x10], 4
jne 0x5d3da0
jmp 0x5d42d2
mov edi, dword [esi + 0x1c]
xor edx, edx
mov dword [esi + 0x10], 0x13
jmp 0x5d40e8
xor ecx, ecx
mov dword [esi + 0xc], 0
test edi, edi
je 0x5d4122
movdqa xmm0, xmmword [esi + 0xa0]
movd eax, xmm0
test eax, eax
je 0x5d4122
push edi
push 0
push dword [0x919820]
mov dword [esi + 0x18], ebx
mov ebx, edx
mov edi, ecx
call dword [sym.imp.kernel32.dll_HeapFree]
mov edx, ebx
mov ebx, dword [esi + 0x18]
mov ecx, edi
xor edi, edi
test cl, cl
je 0x5d42d2
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x80], 0
mov dword [esi + 0x84], 0
mov dword [esi + 0xe8], 0xffffffff
mov ecx, dword [eax]
mov dword [esi + 0x24], ecx
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esi + 0x1c], eax
lea eax, [esi + 0x84]
mov dword [esi + 0x4c], ecx
lea ecx, [esi + 0x80]
push eax
push ecx
push edx
mov edi, edx
call dword [0x91913c]
test eax, eax
je 0x5d430b
movzx eax, byte [esi + 0x80]
mov byte [esi + 0x2c], al
movzx eax, byte [esi + 0x84]
mov byte [esi + 0x28], al
push 0x3055
mov dword [esi + 0xb8], edi
push edi
call dword [0x91917c]
lea ecx, [esi + 0x50]
mov edx, eax
call fcn.005d4b60
mov eax, dword [esi + 0x5c]
test eax, eax
mov dword [esi + 0xa0], eax
je 0x5d445d
mov ecx, dword [esi + 0x60]
mov edx, dword [esi + 0x64]
mov edi, dword [esi + 0x6c]
mov eax, dword [esi + 0x68]
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], edx
push 0x1a
push 0x8a6e85
mov dword [esi + 0xc0], edi
push edi
mov dword [esi + 0x20], eax
push eax
call fcn.005d71b0
add esp, 0x10
mov ecx, eax
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x54]
movdqa xmm2, xmmword [0x726fb0]
movdqa xmm3, xmmword [0x726fc0]
pcmpeqd xmm1, xmm1
mov dword [esi + 0x30], 0
shr ecx, 0x19
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], ebx
pshufd xmm0, xmm0, 0
and eax, ebx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [edi + eax]
pcmpeqb xmm5, xmm4
pmovmskb edx, xmm5
jmp 0x5d425a
mov ebx, dword [esi + 0x10]
lea ecx, [edx - 1]
and ecx, edx
mov edx, ecx
test dx, dx
je 0x5d42b0
tzcnt ecx, edx
mov edi, dword [esi + 0xc]
add ecx, eax
and ecx, ebx
lea ebx, [ecx*8]
sub edi, ebx
cmp dword [edi - 4], 0x1a
mov edi, dword [esi + 0xc]
jne 0x5d4250
neg ecx
mov ecx, dword [edi + ecx*8 - 8]
movdqu xmm5, xmmword [ecx]
movdqu xmm6, xmmword [ecx + 0xa]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d4250
jmp 0x5d4354
pcmpeqb xmm4, xmm1
pmovmskb ecx, xmm4
test ecx, ecx
jne 0x5d4829
mov ecx, dword [esi + 0x30]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x30], ecx
jmp 0x5d422e
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x10]
movaps xmm0, xmmword [esi + 0xa0]
mov dword [eax + 0x10], ecx
mov ecx, dword [esi + 0x30]
mov dword [eax + 0x14], ecx
mov ecx, dword [esi + 0x24]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edi
movlps qword [eax + 0x20], xmm0
mov dword [eax], ebx
mov ebx, dword [esi + 0xc]
mov edi, dword [esi + 0x14]
mov dword [eax + 4], ebx
mov dword [eax + 8], edi
mov dword [eax + 0xc], edx
jmp 0x5d4815
mov eax, dword [0x919014]
mov edi, dword [esi + 0x78]
cmp eax, 2
jne 0x5d4835
cmp byte [0x9191f0], 2
je 0x5d4847
call dword [0x91910c]
lea ecx, [eax - 0x3000]
cmp ecx, 0xe
ja 0x5d47d6
mov edx, dword [esi + 0x28]
add edx, dword [ecx*4 + 0x5d4b24]
jmp edx
mov ebx, dword [esi + 0x10]
mov dword [esi + 0x18], 0x6c
mov ecx, dword [esi + 0xb4]
mov edx, dword [esi + 0xb0]
push 0x15
push 0x8a6e9f
push dword [esi + 0xc0]
push dword [esi + 0x20]
call fcn.005d71b0
add esp, 0x10
mov ecx, eax
movdqa xmm2, xmmword [0x726fd0]
movdqa xmm3, xmmword [0x726fe0]
pcmpeqd xmm1, xmm1
mov dword [esi + 0x30], 0
shr ecx, 0x19
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
and eax, ebx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [edi + eax]
pcmpeqb xmm5, xmm4
pmovmskb edx, xmm5
jmp 0x5d43da
mov ebx, dword [esi + 0x10]
lea ecx, [edx - 1]
and ecx, edx
mov edx, ecx
test dx, dx
je 0x5d4430
tzcnt ecx, edx
add ecx, eax
and ecx, ebx
mov ebx, dword [esi + 0xc]
lea edi, [ecx*8]
sub ebx, edi
mov edi, dword [esi + 0xc]
cmp dword [ebx - 4], 0x15
jne 0x5d43d0
neg ecx
mov ecx, dword [edi + ecx*8 - 8]
movdqu xmm5, xmmword [ecx]
movdqu xmm6, xmmword [ecx + 5]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d43d0
jmp 0x5d444e
pcmpeqb xmm4, xmm1
pmovmskb ecx, xmm4
test ecx, ecx
jne 0x5d4455
mov ecx, dword [esi + 0x30]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x30], ecx
jmp 0x5d43b4
add dword [esi + 0x18], 0x80
cmp byte [esi + 0x2c], 0
jne 0x5d446a
jmp 0x5d447e
mov dword [esi + 0x18], 0x68
cmp byte [esi + 0x2c], 0
je 0x5d447e
cmp byte [esi + 0x2c], 1
jne 0x5d4567
cmp byte [esi + 0x28], 5
ja 0x5d4567
cmp dword [esi + 0xa0], 0
je 0x5d466e
mov edx, dword [esi + 0x64]
mov ecx, dword [esi + 0x60]
push 0x21
push 0x8a6eb4
push dword [esi + 0x6c]
push dword [esi + 0x68]
call fcn.005d71b0
add esp, 0x10
mov ecx, eax
mov ebx, dword [esi + 0x54]
mov edx, dword [esi + 0x50]
mov dword [esi + 0x20], 0
shr ecx, 0x19
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0x10], ebx
pshufd xmm0, xmm0, 0
movdqa xmmword [esi + 0xc0], xmm0
and eax, ebx
movdqu xmm1, xmmword [edx + eax]
mov dword [esi + 0xc], eax
pcmpeqb xmm0, xmm1
movdqa xmmword [esi + 0x30], xmm1
pmovmskb edi, xmm0
jmp 0x5d44ff
lea eax, [edi - 1]
mov edx, ebx
mov ebx, dword [esi + 0x10]
and eax, edi
mov edi, eax
mov eax, dword [esi + 0xc]
test di, di
je 0x5d4538
tzcnt ecx, edi
add ecx, eax
and ecx, ebx
mov ebx, edx
lea eax, [ecx*8]
sub edx, eax
cmp dword [edx - 4], 0x21
jne 0x5d44f0
neg ecx
push 0x21
push dword [ebx + ecx*8 - 8]
push 0x8a6eb4
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x5d44f0
jmp 0x5d4567
movdqa xmm1, xmmword [esi + 0x30]
pcmpeqd xmm0, xmm0
pcmpeqb xmm1, xmm0
movdqa xmm0, xmmword [esi + 0xc0]
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x5d456b
mov ecx, dword [esi + 0x20]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0x20], ecx
jmp 0x5d44d5
or dword [esi + 0x18], 1
cmp dword [esi + 0xa0], 0
je 0x5d466e
mov ecx, dword [esi + 0x60]
mov edx, dword [esi + 0x64]
push 0x1f
push 0x8a6ed5
push dword [esi + 0x6c]
push dword [esi + 0x68]
call fcn.005d71b0
add esp, 0x10
mov edi, eax
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
movdqa xmm2, xmmword [0x726ff0]
movdqa xmm3, xmmword [0x727000]
pcmpeqd xmm1, xmm1
mov dword [esi + 0xa0], 0
shr edi, 0x19
movd xmm0, edi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esi + 0xc], ecx
mov dword [esi + 0x30], edx
pshufd xmm0, xmm0, 0
and eax, edx
movdqa xmm5, xmm0
movdqu xmm4, xmmword [ecx + eax]
mov dword [esi + 0x10], eax
pcmpeqb xmm5, xmm4
pmovmskb ebx, xmm5
jmp 0x5d45fd
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
lea ecx, [ebx - 1]
and ecx, ebx
mov ebx, ecx
test bx, bx
je 0x5d4647
tzcnt edi, ebx
add edi, eax
mov eax, dword [esi + 0xc]
and edi, edx
lea edx, [edi*8]
mov ecx, eax
sub ecx, edx
cmp dword [ecx - 4], 0x1f
jne 0x5d45f0
neg edi
mov ecx, dword [eax + edi*8 - 8]
movdqu xmm5, xmmword [ecx]
movdqu xmm6, xmmword [ecx + 0xf]
pcmpeqb xmm5, xmm3
pcmpeqb xmm6, xmm2
pand xmm6, xmm5
pmovmskb ecx, xmm6
cmp ecx, 0xffff
jne 0x5d45f0
jmp 0x5d4672
pcmpeqb xmm4, xmm1
pmovmskb edi, xmm4
test edi, edi
jne 0x5d466e
mov ecx, dword [esi + 0xa0]
lea eax, [eax + ecx + 0x10]
add ecx, 0x10
mov dword [esi + 0xa0], ecx
mov ecx, dword [esi + 0xc]
jmp 0x5d45d4
xor edi, edi
jmp 0x5d4677
mov edi, 2
mov eax, dword [esi + 0x50]
movq xmm0, qword [esi + 0x58]
movq xmm2, qword [esi + 0x60]
movq xmm1, qword [esi + 0x68]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x54]
movq qword [esi + 0x88], xmm0
movq qword [esi + 0x90], xmm2
movq qword [esi + 0x98], xmm1
mov dword [esi + 0xc], eax
movzx eax, byte [0x919aa5]
mov eax, dword [0x919820]
mov ebx, dword [esi + 0xbc]
test eax, eax
jne 0x5d46d3
call dword [sym.imp.kernel32.dll_GetProcessHeap]
test eax, eax
je 0x5d4976
mov dword [0x919820], eax
push 0x48
push 0
push eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
test eax, eax
je 0x5d4976
mov ecx, dword [esi + 0x14]
mov dword [eax], 1
mov dword [eax + 4], 1
mov edx, dword [esi + 0x18]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xb8]
and edx, 0xfffffffd
or edx, edi
mov edi, dword [esi + 0x4c]
mov dword [eax + 0xc], ecx
mov ecx, dword [esi + 0x10]
mov dword [eax + 0x10], ecx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0x14], ecx
mov ecx, dword [esi + 0x24]
movsd xmm0, qword [esi + 0x88]
movq xmm1, qword [esi + 0x90]
movsd qword [eax + 0x18], xmm0
movq qword [eax + 0x20], xmm1
movsd xmm0, qword [esi + 0x98]
movsd qword [eax + 0x28], xmm0
mov dword [eax + 0x30], ecx
mov ecx, dword [esi + 0x1c]
mov dword [eax + 0x34], edi
mov dword [eax + 0x38], ecx
mov dword [eax + 0x3c], ebx
mov dword [eax + 0x40], edx
movzx edx, byte [esi + 0x2c]
movzx ebx, byte [esi + 0x28]
mov byte [eax + 0x44], dl
mov edx, dword [esi + 0x78]
mov byte [eax + 0x45], bl
mov dword [edx + 8], eax
mov dword [edx + 4], 0
mov dword [edx], 2
jmp 0x5d4815
mov ecx, 0x13
mov dword [edi + 4], 0
mov dword [edi], 1
mov dword [edi + 8], eax
mov eax, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
movsd xmm0, qword [esi + 0x88]
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], eax
mov dword [edi + 0x1c], 0
movsd qword [edi + 0x20], xmm0
mov eax, dword [esi + 0xe0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esi + 0x18], 0x68
jmp 0x5d435e
call fcn.00718330
cmp byte [0x9191f0], 2
jne 0x5d4329
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_std_src_synconce.rs
mov edx, 0x2b
push 0x8a7844
jmp 0x5d4949
xor edx, edx
mov dword [esi + 0x10], 0x13
mov ecx, dword [esi + 0x18]
mov dword [esi + 0xc], 0
cmp dword [esi + 0x54], 0
jne 0x5d3ad4
jmp 0x5d3af0
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_std_src_synconce.rs
mov edx, 0x2b
push 0x8a6de4
call fcn.0070a0f0
add esp, 4
ud2
mov dword [esi + 0xe8], 1
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_std_src_synconce.rs
mov edx, 0x2b
push 0x8a6e48
call fcn.0070a0f0
add esp, 4
jmp 0x5d49c1
mov ecx, 8
mov edx, 0x48
mov dword [esi + 0xe8], 4
call fcn.00709d20
jmp 0x5d49c1
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_std_src_synconce.rs
mov edx, 0x2b
push 0x8a7844
call fcn.0070a0f0
add esp, 4
jmp 0x5d49c1
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_std_src_synconce.rs
mov edx, 0x2b
push 0x8a7844
call fcn.0070a0f0
add esp, 4
ud2