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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x610
movzx eax, byte [edx + 4]
mov edi, edx
mov ebx, ecx
test eax, eax
mov dword [esp + 0x20], eax
je 0x4e0abf
cmp eax, 1
jne 0x4e0ad6
mov dword [esp + 0x10], 0
mov dword [esp + 4], 0
mov eax, dword [0x5a1188]
test eax, eax
jne 0x4e0b00
jmp 0x4e0aed
mov dword [esp + 4], 0x80000000
mov dword [esp + 0x10], eax
mov eax, dword [0x5a1188]
test eax, eax
jne 0x4e0b00
jmp 0x4e0aed
mov al, 1
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0
mov eax, dword [0x5a1188]
test eax, eax
jne 0x4e0b00
call dword [sym.imp.kernel32.dll_GetProcessHeap]
test eax, eax
je 0x4e1ca6
mov dword [0x5a1188], eax
push 0x100
push 8
push eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
test eax, eax
je 0x4e1ca6
movaps xmm0, xmmword [0x539290]
movaps xmm1, xmmword [0x5392a0]
movaps xmm2, xmmword [str._________._0123456789:_____ABCDEFGHIJKLMNOPQRSTUVWXYZ____abcdefghijklmnopqrstuvwxyz]
mov dword [esp + 0x4c], ebx
movzx ebx, byte [edi + 6]
mov esi, eax
lea eax, [esp + 0xf0]
lea ecx, [esp + 0x500]
movaps xmmword [esp + 0x500], xmm0
movaps xmmword [esp + 0x510], xmm1
movaps xmm1, xmmword [0x5392c0]
movaps xmmword [esp + 0x520], xmm2
movaps xmm2, xmmword [0x5392d0]
movaps xmmword [esp + 0x530], xmm1
movaps xmm1, xmmword [0x5392e0]
movaps xmmword [esp + 0x540], xmm2
movaps xmm2, xmmword [0x5392f0]
movaps xmmword [esp + 0x550], xmm1
movaps xmm1, xmmword [0x539300]
movaps xmmword [esp + 0x560], xmm2
movaps xmm2, xmmword [0x539310]
movaps xmmword [esp + 0x570], xmm1
movaps xmm1, xmmword [0x539320]
movaps xmmword [esp + 0x580], xmm2
movaps xmm2, xmmword [0x539330]
movaps xmmword [esp + 0x590], xmm1
movaps xmm1, xmmword [0x539340]
movaps xmmword [esp + 0x5a0], xmm2
movaps xmm2, xmmword [0x539350]
movaps xmmword [esp + 0x5b0], xmm1
movaps xmm1, xmmword [0x539360]
movaps xmmword [esp + 0x5c0], xmm2
movaps xmm2, xmmword [0x539370]
movaps xmmword [esp + 0x5d0], xmm1
movaps xmm1, xmmword [0x539380]
movaps xmmword [esp + 0x5e0], xmm2
movaps xmmword [esp + 0x5f0], xmm1
push 0x100
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x500]
mov ecx, dword [esp + 0x504]
mov dword [esp + 0x214], eax
mov dword [esp + 0x218], ecx
lea eax, [esp + 0x220]
push 0x120
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
movzx eax, word [esp + 0x44]
movaps xmm0, xmmword [0x539270]
movaps xmm2, xmmword [0x539670]
movaps xmm1, xmmword [0x539680]
lea ecx, [esp + 0xe8]
mov word [esp + 0x36d], ax
movzx eax, byte [esp + 0x46]
mov byte [esp + 0x36f], al
mov dword [esp + 0x398], 4
mov dword [esp + 0x39c], 0
movaps xmmword [esp + 0x3a0], xmm0
movaps xmmword [esp + 0x3b0], xmm2
movaps xmmword [esp + 0x3c0], xmm1
mov dword [esp + 0x3d0], 0
lea eax, [esp + 0x3d4]
push 0x108
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x20]
xorps xmm0, xmm0
mov dword [esp + 0x4dc], 0xffffffff
mov dword [esp + 0x4f0], 0
movaps xmmword [esp + 0x4e0], xmm0
mov byte [esp + 0x4f4], al
movzx eax, word [esp + 0x51]
mov word [esp + 0x4f5], ax
movzx eax, byte [esp + 0x53]
mov byte [esp + 0x4f7], al
mov eax, dword [esp + 4]
movaps xmmword [esp + 0x1f0], xmm0
movaps xmmword [esp + 0x200], xmm0
mov dword [esp + 0x210], 0x80000000
mov dword [esp + 0x21c], 0
mov dword [esp + 0x340], 0
mov word [esp + 0x344], 0
mov byte [esp + 0x346], bl
mov byte [esp + 0x347], 1
mov dword [esp + 0x348], 0
movdqa xmm0, xmmword [0x539670]
mov dword [esp + 0x34c], eax
mov eax, dword [esp + 0x10]
movdqa xmmword [esp + 0x350], xmm0
mov dword [esp + 0x360], 0
mov dword [esp + 0x364], 0xffffffff
mov dword [esp + 0x368], 0
mov byte [esp + 0x36c], 0
mov byte [esp + 0x370], al
mov dword [esp + 0x371], 0x2020201
mov byte [esp + 0x375], 0
mov dword [esp + 0x378], 0x100
mov dword [esp + 0x37c], esi
mov dword [esp + 0x380], 0x100
mov dword [esp + 0x384], 0
mov word [esp + 0x388], 0
mov byte [esp + 0x38a], bl
mov byte [esp + 0x38c], bl
mov byte [esp + 0x38d], 1
mov dword [esp + 0x390], edi
mov dword [esp + 0x394], 0
mov edx, dword [esp + 0x3a8]
cmp edx, dword [esp + 0x3a0]
jne 0x4e0e5e
lea ecx, [esp + 0x3a0]
call fcn.004b1d50
mov edx, dword [esp + 0x3a8]
mov eax, dword [esp + 0x3a4]
lea ecx, [edx + edx*8]
inc edx
mov byte [eax + ecx], 0
mov dword [eax + ecx + 1], 0
mov dword [eax + ecx + 5], 0
mov dword [esp + 0x3a8], edx
mov edx, dword [esp + 0x3c0]
cmp edx, dword [esp + 0x3b8]
jne 0x4e0ea7
lea ecx, [esp + 0x3b8]
call fcn.0040e570
mov edx, dword [esp + 0x3c0]
mov eax, dword [esp + 0x3bc]
mov dword [eax + edx*8], 0
mov dword [eax + edx*8 + 4], 0
inc edx
mov dword [esp + 0x3c0], edx
mov edx, dword [esp + 0x3b4]
cmp edx, dword [esp + 0x3ac]
jne 0x4e0ee8
lea ecx, [esp + 0x3ac]
call fcn.0040e610
mov edx, dword [esp + 0x3b4]
mov eax, dword [esp + 0x3b0]
lea ecx, [esp + 0x394]
mov dword [eax + edx*4], 0
inc edx
mov dword [esp + 0x3b4], edx
mov edx, dword [esp + 0x39c]
cmp edx, 0x7ffffffe
ja 0x4e0fd1
mov esi, dword [esp + 0x4ec]
cmp edx, dword [esp + 0x394]
jne 0x4e0f34
call fcn.0043f220
mov edx, dword [esp + 0x39c]
mov eax, dword [esp + 0x398]
lea ecx, [edx + edx*4]
inc edx
cmp edx, 0x7ffffffe
mov dword [eax + ecx*4], 0
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], esi
mov dword [eax + ecx*4 + 0x10], 0
mov dword [esp + 0x39c], edx
ja 0x4e0fd1
mov esi, dword [esp + 0x4ec]
cmp edx, dword [esp + 0x394]
jne 0x4e0f94
lea ecx, [esp + 0x394]
call fcn.0043f220
mov edx, dword [esp + 0x39c]
mov eax, dword [esp + 0x398]
lea ecx, [edx + edx*4]
inc edx
cmp edx, 0x7ffffffe
mov dword [eax + ecx*4], 0
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], esi
mov dword [eax + ecx*4 + 0x10], 0
mov dword [esp + 0x39c], edx
jbe 0x4e1035
movdqa xmm0, xmmword [0x539690]
mov ebx, edx
xor edi, edi
mov esi, edx
mov dword [esp + 0x20], 0
movdqa xmmword [esp + 0x10], xmm0
lea ecx, [esp + 0x210]
call fcn.004b1df0
lea eax, [esp + 0x394]
push eax
call fcn.00434ea0
add esp, 4
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x20]
movaps xmm0, xmmword [esp + 0x10]
mov dword [ecx + 0x1c], eax
mov eax, 1
mov dword [ecx + 0x18], ebx
mov dword [ecx + 8], edi
mov dword [ecx + 0xc], esi
movlps qword [ecx + 0x10], xmm0
mov dword [ecx], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [esp + 0x4ec]
cmp edx, dword [esp + 0x394]
mov ebx, edx
jne 0x4e105e
lea ecx, [esp + 0x394]
mov ebx, edx
call fcn.0043f220
mov edx, ebx
mov ebx, dword [esp + 0x39c]
mov eax, dword [esp + 0x398]
lea ecx, [ebx + ebx*4]
inc ebx
cmp ebx, 0x7ffffffe
mov dword [eax + ecx*4], 0
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], esi
mov dword [eax + ecx*4 + 0x10], 0
mov dword [esp + 0x39c], ebx
mov dword [esp + 0x4ec], edx
jbe 0x4e10bb
movdqa xmm0, xmmword [0x539690]
mov dword [esp + 0x20], 0
mov esi, ebx
xor edi, edi
jmp 0x4e0fe7
cmp ebx, dword [esp + 0x394]
mov esi, edx
mov eax, ebx
jne 0x4e10dd
lea ecx, [esp + 0x394]
mov edx, ebx
call fcn.0043f220
mov eax, dword [esp + 0x39c]
mov ecx, dword [esp + 0x398]
lea edx, [eax + eax*4]
inc eax
mov dword [ecx + edx*4], 0
mov dword [ecx + edx*4 + 4], 0
mov dword [ecx + edx*4 + 8], 0
mov dword [ecx + edx*4 + 0xc], esi
mov dword [ecx + edx*4 + 0x10], 0
mov dword [esp + 0x39c], eax
mov esi, ebx
lea ecx, [esp + 0xe8]
mov eax, dword [esp + 0x4ec]
mov dword [esp + 0x4f0], ebx
lea ebx, [esp + 0x394]
mov edx, ebx
push 1
push eax
call fcn.004412b0
add esp, 8
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e18e4
lea ecx, [esp + 0xe8]
mov edx, ebx
push 1
push esi
call fcn.004412b0
add esp, 8
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e18e4
lea ecx, [esp + 0xe8]
mov edx, ebx
push 0
push 0
call fcn.004412b0
add esp, 8
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e18e4
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
xor ebx, ebx
lea edi, [esp + 0x210]
shl eax, 4
add eax, edx
mov dword [esp + 0x54], eax
mov esi, dword [edx + 8]
mov dword [esp + 0x44], ebx
cmp esi, 0x7ffffffe
ja 0x4e1910
mov ecx, dword [esp + 0x4dc]
mov eax, dword [esp + 0x3cc]
mov dword [esp + 0x5c], edx
cmp ecx, esi
mov dword [esp + 0x500], eax
cmovae ecx, esi
mov dword [esp + 0x4dc], ecx
mov ecx, dword [esp + 0x4e0]
cmp ecx, esi
cmovbe ecx, esi
cmp ebx, eax
mov dword [esp + 0x4e0], ecx
mov ecx, dword [edx + 4]
mov dword [esp + 0x40], ecx
jne 0x4e1cec
cmp ebx, dword [esp + 0x3c4]
lea eax, [ebx + 1]
mov ecx, ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x58], eax
jne 0x4e1238
mov edx, dword [esp + 0x48]
lea ecx, [esp + 0x3c4]
call fcn.0040e610
mov ecx, dword [esp + 0x3cc]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x3c8]
mov dword [edx + ecx*4], esi
mov dword [esp + 0x3cc], eax
mov eax, dword [esp + 0x390]
cmp byte [eax + 5], 0
je 0x4e1265
mov edx, dword [esp + 0x40]
mov ecx, edi
push esi
call fcn.00446f90
add esp, 4
mov ebx, dword [esp + 0x4ec]
test esi, esi
je 0x4e1858
mov ecx, dword [esp + 0x40]
xor edx, edx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x3c], 0
add esi, ecx
mov dword [esp + 0x60], esi
jmp 0x4e12e6
or cl, 0x20
mov eax, ecx
movzx eax, al
lea ecx, [esp + 0xe8]
lea edx, [esp + 0x394]
push ebx
push eax
push dword [esp + 0x28]
call fcn.0043ec80
add esp, 0xc
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e18e4
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
inc dword [esp + 0x3c]
lea edi, [esp + 0x210]
mov dword [esp + 0x20], ebx
inc ecx
cmp ecx, esi
je 0x4e1858
movzx ebx, byte [ecx]
test dl, 1
mov al, 1
mov byte [esp + 0x10], bl
jne 0x4e1322
mov ebx, ecx
mov edx, dword [esp + 0x39c]
mov ecx, dword [esp + 0x20]
cmp ecx, edx
jae 0x4e1af5
mov eax, dword [esp + 0x398]
lea ecx, [ecx + ecx*4]
cmp dword [eax + ecx*4 + 8], 0
mov ecx, ebx
movzx ebx, byte [esp + 0x10]
setne al
mov edx, dword [esp + 0x390]
test al, al
je 0x4e1337
cmp byte [edx + 4], 1
je 0x4e1886
test bl, bl
mov dword [esp + 4], edx
mov dword [esp + 0x64], eax
mov dword [esp + 0x40], ecx
je 0x4e1424
mov eax, ebx
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xd8], 1
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd0], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc8], 0
dec al
mov ecx, eax
mov ah, al
and al, 7
and cl, 0x78
shr ah, 7
shr cl, 3
neg cl
movsx edx, cl
mov ecx, eax
mov edi, dword [esp + edx + 0xe0]
mov dword [esp + 0xc], edi
shl edi, cl
not cl
mov ebx, dword [esp + edx + 0xdc]
mov dword [esp + 8], ebx
shr ebx, 1
shr ebx, cl
mov esi, dword [esp + edx + 0xe4]
mov ecx, eax
mov edx, dword [esp + edx + 0xd8]
or ebx, edi
mov edi, dword [esp + 0xc]
shld esi, edi, cl
movzx edi, ah
mov eax, dword [esp + 8]
shl edi, 4
or dword [esp + edi + 0x1f8], ebx
movzx ebx, byte [esp + 0x10]
or dword [esp + edi + 0x1fc], esi
shld eax, edx, cl
shl edx, cl
or dword [esp + edi + 0x1f0], edx
or dword [esp + edi + 0x1f4], eax
mov ecx, ebx
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb8], 1
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xa8], 0
mov eax, ebx
mov ah, bl
and cl, 0x78
and al, 7
shr cl, 3
neg cl
movsx edi, cl
mov ecx, eax
mov edx, dword [esp + edi + 0xc0]
mov dword [esp + 8], edx
shl edx, cl
not cl
mov esi, dword [esp + edi + 0xbc]
mov ebx, esi
mov dword [esp + 0xc], esi
shr ebx, 1
mov esi, dword [esp + edi + 0xc4]
shr ebx, cl
mov ecx, eax
or ebx, edx
mov edx, dword [esp + edi + 0xb8]
mov edi, dword [esp + 8]
shld esi, edi, cl
movzx edi, ah
mov eax, dword [esp + 0xc]
mov dword [esp + 8], edi
shr edi, 3
and edi, 0xfffffff0
or dword [esp + edi + 0x1fc], esi
or dword [esp + edi + 0x1f8], ebx
shld eax, edx, cl
shl edx, cl
or dword [esp + edi + 0x1f4], eax
mov eax, dword [esp + 4]
or dword [esp + edi + 0x1f0], edx
cmp byte [eax + 6], 0
je 0x4e16cc
movzx ecx, byte [esp + 0x10]
mov eax, ecx
add al, 0xbf
cmp al, 0x19
ja 0x4e151d
mov eax, ecx
or al, 0x20
jmp 0x4e1536
mov eax, ecx
xor cl, 0x20
add al, 0x9f
cmp al, 0x1a
movzx eax, cl
cmovae eax, dword [esp + 8]
test al, al
je 0x4e1851
mov edx, eax
mov dword [esp + 4], eax
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 1
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 0
dec dl
mov ecx, edx
mov ch, dl
and dl, 7
and cl, 0x78
shr ch, 7
shr cl, 3
neg cl
movsx esi, cl
mov cl, dl
mov eax, dword [esp + esi + 0xa0]
mov ebx, dword [esp + esi + 0x9c]
mov edi, eax
mov dword [esp + 0xc], ebx
shr ebx, 1
shl edi, cl
not cl
shr ebx, cl
mov cl, dl
mov edx, dword [esp + 0xc]
or ebx, edi
mov edi, dword [esp + esi + 0xa4]
mov esi, dword [esp + esi + 0x98]
shld edi, eax, cl
movzx eax, ch
shld edx, esi, cl
shl esi, cl
mov ecx, dword [esp + 4]
shl eax, 4
or dword [esp + eax + 0x1fc], edi
or dword [esp + eax + 0x1f0], esi
or dword [esp + eax + 0x1f4], edx
or dword [esp + eax + 0x1f8], ebx
mov ebx, ecx
mov eax, ebx
mov byte [esp + 0xc], bl
and bl, 7
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 1
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
and al, 0x78
mov dword [esp + 4], ebx
mov ecx, ebx
shr al, 3
neg al
movsx edx, al
mov edi, dword [esp + edx + 0x80]
mov esi, dword [esp + edx + 0x7c]
mov eax, edi
mov ebx, esi
shl eax, cl
not cl
shr ebx, 1
shr ebx, cl
mov ecx, dword [esp + 4]
or ebx, eax
mov eax, dword [esp + edx + 0x84]
mov edx, dword [esp + edx + 0x78]
shld eax, edi, cl
movzx ecx, byte [esp + 0xc]
shr cl, 7
movzx edi, cl
mov ecx, dword [esp + 4]
shl edi, 4
or dword [esp + edi + 0x1fc], eax
or dword [esp + edi + 0x1f8], ebx
shld esi, edx, cl
shl edx, cl
or dword [esp + edi + 0x1f0], edx
or dword [esp + edi + 0x1f4], esi
mov eax, dword [esp + 0x39c]
mov ecx, dword [esp + 0x20]
cmp eax, ecx
mov dword [esp + 4], eax
jbe 0x4e1add
mov esi, dword [esp + 0x398]
lea eax, [ecx + ecx*4]
mov bh, byte [esp + 0x10]
mov ecx, dword [esi + eax*4 + 4]
test ecx, ecx
je 0x4e172d
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x3b4]
movzx eax, byte [esp + eax + 0x3dc]
add ecx, eax
cmp ecx, edx
jae 0x4e1aeb
shl ecx, 2
add ecx, dword [esp + 0x3b0]
mov ebx, dword [ecx]
cmp ebx, 1
jne 0x4e12c2
jmp 0x4e176c
mov ecx, dword [esp + 0x3a4]
mov edx, dword [esp + 0x3a8]
lea eax, [esi + eax*4]
nop
mov eax, dword [eax]
test eax, eax
je 0x4e176c
cmp eax, edx
jae 0x4e1920
lea edi, [eax + eax*8]
mov bl, byte [ecx + edi]
lea eax, [ecx + edi + 5]
cmp bl, bh
jb 0x4e1740
jne 0x4e176c
add ecx, edi
inc ecx
mov ebx, dword [ecx]
cmp ebx, 1
jne 0x4e12c2
cmp dword [esp + 0x3c], 0x7fffffff
jae 0x4e1cb5
mov ebx, dword [esp + 4]
cmp ebx, 0x7ffffffe
ja 0x4e10a2
mov edi, dword [esp + 0x4ec]
cmp ebx, dword [esp + 0x394]
mov eax, ebx
jne 0x4e17b8
lea ecx, [esp + 0x394]
mov edx, ebx
call fcn.0043f220
mov esi, dword [esp + 0x398]
mov eax, dword [esp + 0x39c]
mov edx, dword [esp + 0x3c]
lea ecx, [eax + eax*4]
inc eax
mov dword [esi + ecx*4], 0
mov dword [esi + ecx*4 + 4], 0
mov dword [esi + ecx*4 + 8], 0
mov dword [esi + ecx*4 + 0xc], edi
mov dword [esi + ecx*4 + 0x10], edx
mov dword [esp + 0x39c], eax
lea ecx, [esp + 0xe8]
lea edx, [esp + 0x394]
push ebx
push dword [esp + 0xc]
push dword [esp + 0x28]
call fcn.0043ec80
add esp, 0xc
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e18e4
mov eax, dword [esp + 0x390]
cmp byte [eax + 6], 0
je 0x4e12c2
movzx ecx, byte [esp + 0x10]
mov eax, ecx
add al, 0xbf
cmp al, 0x1a
jb 0x4e128e
mov edx, dword [esp + 8]
mov eax, ecx
xor cl, 0x20
add al, 0x9f
cmp al, 0x1a
movzx eax, cl
cmovb edx, eax
mov eax, edx
jmp 0x4e1293
xor ecx, ecx
jmp 0x4e160d
lea ecx, [esp + 0xe8]
lea edx, [esp + 0x394]
push dword [esp + 0x48]
push ebx
call fcn.0043ef90
add esp, 8
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e18e4
lea edi, [esp + 0x210]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
add edx, 0x10
cmp edx, dword [esp + 0x54]
jne 0x4e11ae
mov esi, dword [esp + 0x39c]
cmp dword [esp + 0x394], esi
jbe 0x4e194e
mov eax, dword [esp + 0x398]
test esi, esi
je 0x4e192c
lea ecx, [esi*4]
lea edi, [ecx + ecx*4]
push edi
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapReAlloc]
test eax, eax
jne 0x4e1940
mov ecx, 4
mov edx, edi
call fcn.00531970
movsd xmm0, qword [esp + 0xf0]
mov eax, dword [esp + 0xfc]
mov esi, dword [esp + 0xec]
mov ebx, dword [esp + 0xf8]
movaps xmmword [esp + 0x10], xmm0
mov dword [esp + 0x20], eax
jmp 0x4e0fed
movd xmm0, esi
mov esi, ebx
mov edi, 2
jmp 0x4e0fe7
mov ecx, eax
push 0x54b724
call fcn.00532ca0
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, 4
mov dword [esp + 0x398], eax
mov dword [esp + 0x394], esi
lea edi, [esp + 0x1f0]
lea esi, [esp + 0xe8]
mov ecx, esi
mov edx, edi
call fcn.00443b70
push 0x100
push esi
lea eax, [esp + 0x3e4]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [esp + 0xe8]
mov edx, edi
call fcn.00441750
mov edi, dword [esp + 0xe8]
cmp edi, 3
jne 0x4e1ab0
lea edi, [esp + 0x1f0]
mov ecx, edi
call fcn.00441910
lea ecx, [esp + 0xe8]
mov edx, edi
call fcn.00440f90
mov ecx, dword [esp + 0xe8]
cmp ecx, 3
jne 0x4e1aae
lea ecx, [esp + 0xe8]
lea edx, [esp + 0x1f0]
call fcn.0043f710
mov ecx, dword [esp + 0xe8]
cmp ecx, 3
jne 0x4e1aae
lea edi, [esp + 0x1f0]
mov ecx, edi
call fcn.00441990
mov ecx, edi
call fcn.00440860
lea ecx, [esp + 0xe8]
lea edx, [esp + 0x210]
call fcn.00443d50
mov eax, dword [esp + 0x3d0]
test eax, eax
je 0x4e1a33
lock dec dword [eax]
jne 0x4e1a33
mov ecx, dword [esp + 0x3d0]
mov edx, dword [esp + 0x3d4]
call fcn.00446480
mov eax, dword [esp + 0xf0]
movq xmm0, qword [esp + 0xe8]
mov dword [edi + 0x1e8], eax
movq qword [edi + 0x1e0], xmm0
xor eax, eax
cmp dword [esp + 0x3d0], 0
setne al
mov eax, dword [esp + eax*8 + 0x4e8]
mov dword [esp + 0x4e4], eax
mov esi, dword [esp + 0x3a8]
cmp dword [esp + 0x3a0], esi
jbe 0x4e1b21
mov eax, dword [esp + 0x3a4]
test esi, esi
je 0x4e1aff
lea edi, [esi + esi*8]
push edi
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapReAlloc]
test eax, eax
jne 0x4e1b13
mov ecx, 1
mov edx, edi
call fcn.00531970
mov edi, ecx
movq xmm0, qword [esp + 0xf0]
mov ecx, dword [esp + 0xfc]
mov esi, dword [esp + 0xec]
mov ebx, dword [esp + 0xf8]
movdqa xmmword [esp + 0x10], xmm0
mov dword [esp + 0x20], ecx
jmp 0x4e0fed
mov edx, dword [esp + 4]
push 0x54b744
call fcn.00532ca0
push 0x54b754
call fcn.00532ca0
push 0x54b7ac
call fcn.00532ca0
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, 1
mov dword [esp + 0x3a4], eax
mov dword [esp + 0x3a0], esi
mov esi, dword [esp + 0x3b4]
cmp dword [esp + 0x3ac], esi
jbe 0x4e1b7e
mov eax, dword [esp + 0x3b0]
test esi, esi
je 0x4e1b5c
lea edi, [esi*4]
push edi
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapReAlloc]
test eax, eax
jne 0x4e1b70
jmp 0x4e18d8
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, 4
mov dword [esp + 0x3b0], eax
mov dword [esp + 0x3ac], esi
mov esi, dword [esp + 0x3c0]
cmp dword [esp + 0x3b8], esi
jbe 0x4e1bdb
mov eax, dword [esp + 0x3bc]
test esi, esi
je 0x4e1bb9
lea edi, [esi*8]
push edi
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapReAlloc]
test eax, eax
jne 0x4e1bcd
jmp 0x4e18d8
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, 4
mov dword [esp + 0x3bc], eax
mov dword [esp + 0x3b8], esi
mov esi, dword [esp + 0x3cc]
cmp dword [esp + 0x3c4], esi
jbe 0x4e1c38
mov eax, dword [esp + 0x3c8]
test esi, esi
je 0x4e1c16
lea edi, [esi*4]
push edi
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapReAlloc]
test eax, eax
jne 0x4e1c2a
jmp 0x4e18d8
push eax
push 0
push dword [0x5a1188]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, 4
mov dword [esp + 0x3c8], eax
mov dword [esp + 0x3c4], esi
mov eax, dword [esp + 0x3ac]
mov esi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x3a4]
mov edi, dword [esp + 0x3a8]
mov dword [esp + 0x10], eax
lea eax, [esi + 0x20]
push 0x148
lea ecx, [esp + 0x3b4]
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
movups xmm0, xmmword [esp + 0x394]
lea ecx, [esp + 0x210]
movaps xmmword [esp + 0x20], xmm0
call fcn.004b1df0
mov eax, dword [esp + 0x10]
movaps xmm0, xmmword [esp + 0x20]
mov dword [esi + 0x14], ebx
mov ecx, esi
mov dword [esi + 0x18], edi
mov dword [esi + 0x1c], eax
movups xmmword [esi + 4], xmm0
xor eax, eax
jmp 0x4e102b
mov ecx, 1
mov edx, 0x100
call fcn.00531970
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xec], 0
mov ecx, str.patterns_longer_than_SmallIndex::MAX_are_not_allowed
mov edx, 0x34
mov dword [esp + 0xe8], eax
push 0x53c774
push 0x53bc30
lea eax, [esp + 0xf0]
push eax
call fcn.00533020
mov dword [esp + 0xe8], str.expected_number_of_patterns_to_match_pattern_ID
mov dword [esp + 0xec], 1
mov dword [esp + 0xf0], str.NoneSome_usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_wmi_0.11.5_src_connection.rs
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea ecx, [esp + 0x44]
lea edx, [esp + 0x500]
push 0x54b79c
lea eax, [esp + 0xec]
push eax
call fcn.005336b0