Function at 0x5059a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x50
call fcn.00626ba0
mov eax, dword [0x70a514]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 0x10]
push ebx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x14]
push esi
mov esi, edx
mov dword [ebp - 0x38], eax
mov eax, dword [ecx + 0xc]
xor edx, edx
mov dword [ebp - 0x48], ecx
mov ecx, eax
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x2c], edx
call fcn.005050a0
mov ebx, eax
mov dword [ebp - 0x28], ebx
test esi, esi
jne 0x505a26
push 0x143
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcryptoevpevp_lib.c
push 0x9f
mov edx, 0xa2
lea ecx, [esi + 6]
call fcn.0047b5e0
add esp, 0xc
or eax, 0xffffffff
jmp 0x505a29
mov eax, dword [esi + 8]
xor esi, esi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x14], 0
test ebx, ebx
je 0x505e42
test eax, eax
jle 0x505e42
mov eax, dword [ebp - 0x38]
push dword [eax]
push 0xff
push dword [ebp - 0x10]
call fcn.00629cd0
push 0x6b12dc
push edi
lea edx, [ebp - 0xc]
xor ecx, ecx
call fcn.00489890
mov edx, eax
add esp, 0x14
mov dword [ebp - 0x44], edx
test edx, edx
jne 0x505a84
push 0x11d
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x64
jmp 0x505e32
mov ecx, dword [edx + 8]
mov eax, dword [ebp - 0x34]
cmp dword [ecx], eax
je 0x505a9f
push 0x122
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x68
jmp 0x505e32
mov eax, dword [edx + 0xc]
mov ecx, dword [ecx + 8]
mov dword [ebp - 8], ecx
mov edi, dword [eax]
mov ebx, dword [eax + 8]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x30], edi
cmp dword [eax], edi
jae 0x505ac8
push 0x12a
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x6b
jmp 0x505e32
call fcn.004943e0
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x505ade
push 0x130
jmp 0x505e2b
mov ecx, eax
call fcn.00494580
mov ecx, dword [ebp - 0x20]
call fcn.004946f0
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x3c], eax
call fcn.004946f0
mov dword [ebp - 0x40], eax
test eax, eax
jne 0x505b10
push 0x139
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 3
jmp 0x505e32
push ecx
mov ecx, edi
call fcn.0046abf0
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x28]
add eax, eax
mov ecx, eax
mov dword [ebp - 0x4c], eax
call fcn.0046abf0
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x18], eax
call fcn.0046abf0
add esp, 4
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x14], esi
je 0x505e26
cmp dword [ebp - 0x18], esi
je 0x505e26
test eax, eax
je 0x505e26
mov ecx, dword [ebp - 0x24]
call fcn.004a7d10
mov dword [ebp - 0x1c], eax
test eax, eax
jne 0x505b6e
push 0x148
jmp 0x505e2b
mov ecx, dword [ebp - 0x44]
mov edx, eax
push dword [ebp - 0x20]
push dword [ecx + 4]
push dword [ecx]
mov ecx, dword [ebp - 0x24]
call fcn.004a7e80
add esp, 0xc
test eax, eax
je 0x505e18
mov eax, dword [ebp - 0x48]
push dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
push dword [eax + 0x14]
mov eax, dword [ebp - 0x1c]
mov edx, eax
push eax
push 0
call fcn.004a83a0
add esp, 0x10
test eax, eax
je 0x505e18
push dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
push dword [ebp - 0x40]
mov ecx, dword [ebp - 0x24]
push dword [ebp - 0x3c]
call fcn.004a7f20
add esp, 0xc
test eax, eax
je 0x505e18
push dword [ebp - 0x28]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x3c]
call fcn.0046e6f0
add esp, 4
test eax, eax
js 0x505e0a
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
add eax, ecx
push ecx
mov ecx, dword [ebp - 0x40]
mov edx, eax
mov dword [ebp - 0x24], eax
call fcn.0046e6f0
add esp, 4
test eax, eax
js 0x505e0a
push dword [ebp - 0x50]
mov ecx, dword [ebp - 0x14]
mov edx, edi
push 0
push 0
push dword [ebp - 0x4c]
push dword [ebp - 0x18]
call fcn.00506b00
add esp, 0x14
test eax, eax
je 0x505e0a
xor esi, esi
test edi, edi
je 0x505d32
mov edx, dword [ebp - 0x14]
cmp edi, 0x40
jb 0x505d0a
mov ecx, dword [ebp - 0x10]
lea eax, [edx - 1]
dec ecx
add eax, edi
add ecx, edi
cmp dword [ebp - 0x10], eax
ja 0x505c5b
cmp ecx, edx
jae 0x505d0a
lea eax, [ebx - 1]
add eax, edi
cmp dword [ebp - 0x10], eax
ja 0x505c6d
cmp ecx, ebx
jae 0x505d0a
mov eax, edi
and eax, 0x8000003f
jns 0x505c7b
dec eax
or eax, 0xffffffc0
inc eax
mov ecx, edi
mov edi, ebx
sub edi, edx
sub ecx, eax
mov dword [ebp - 0x4c], edi
lea eax, [edx + 0x10]
mov edi, dword [ebp - 0x10]
sub edi, edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x10]
mov edx, ebx
add ecx, 0x20
mov dword [ebp - 0x48], edi
sub edx, dword [ebp - 0x10]
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x4c]
movups xmm0, xmmword [eax - 0x10]
mov edi, dword [ebp - 0x48]
lea eax, [eax + 0x40]
movups xmm1, xmmword [esi + ebx]
lea ecx, [ecx + 0x40]
pxor xmm1, xmm0
movups xmm0, xmmword [eax - 0x40]
movups xmmword [ecx - 0x60], xmm1
movups xmm1, xmmword [edx + eax - 0x40]
pxor xmm1, xmm0
movups xmm0, xmmword [eax - 0x30]
movups xmmword [edi + eax - 0x40], xmm1
mov edi, dword [ebp - 0x40]
movups xmm1, xmmword [edi + ecx - 0x40]
mov edi, dword [ebp - 0x30]
pxor xmm1, xmm0
movups xmm0, xmmword [eax - 0x20]
movups xmmword [ecx - 0x40], xmm1
movups xmm1, xmmword [esi + ebx + 0x30]
add esi, 0x40
pxor xmm1, xmm0
movups xmmword [ecx - 0x30], xmm1
cmp esi, dword [ebp - 0x3c]
jne 0x505ca5
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], esi
cmp esi, edi
je 0x505d32
mov eax, dword [ebp - 0x10]
lea ecx, [esi + edx]
sub eax, edx
sub ebx, edx
mov edx, edi
mov dword [ebp - 0x30], eax
sub edx, esi
mov esi, eax
nop dword [eax]
mov al, byte [ebx + ecx]
lea ecx, [ecx + 1]
xor al, byte [ecx - 1]
mov byte [esi + ecx - 1], al
sub edx, 1
jne 0x505d20
call fcn.00471b30
mov esi, eax
test esi, esi
jne 0x505d47
push 0x162
jmp 0x505e2b
push dword [ebp - 0x50]
push esi
call fcn.00471b80
add esp, 8
test eax, eax
je 0x505dfc
push dword [ebp - 0x28]
mov ebx, dword [ebp - 0x18]
mov eax, dword [esi + 0x14]
push ebx
push esi
call eax
add esp, 0xc
test eax, eax
je 0x505dfc
test edi, edi
je 0x505d88
mov eax, dword [esi + 0x14]
push edi
push dword [ebp - 0x10]
push esi
call eax
add esp, 0xc
test eax, eax
je 0x505dfc
push dword [ebp - 0x28]
mov eax, dword [esi + 0x14]
push dword [ebp - 0x24]
push esi
call eax
add esp, 0xc
test eax, eax
je 0x505dfc
mov edx, dword [ebp - 0x2c]
mov ecx, esi
push 0
call fcn.00471e30
add esp, 4
test eax, eax
je 0x505dfc
push dword [ebp - 0x34]
push dword [ebp - 8]
push dword [ebp - 0x2c]
call fcn.00401390
add esp, 0xc
test eax, eax
je 0x505dd1
push 0x170
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x66
jmp 0x505e32
mov eax, dword [ebp - 0x38]
push dword [ebp - 0x14]
mov dword [eax], edi
call fcn.0062d677
push ebx
call fcn.0062d677
push dword [ebp - 0x2c]
call fcn.0062d677
mov ebx, dword [ebp - 0x1c]
add esp, 0xc
mov edi, 1
jmp 0x505e7b
push 0x16b
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 6
jmp 0x505e32
push 0x159
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x44
jmp 0x505e32
push 0x151
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x10
jmp 0x505e32
push 0x142
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_sm2_sm2_crypt.c
push 0x41
mov edx, 0x66
lea ecx, [edx - 0x31]
call fcn.0047b5e0
add esp, 0xc
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x38]
push dword [eax]
push 0
push dword [ebp - 0x10]
call fcn.00629cd0
push dword [ebp - 0x14]
call fcn.0062d677
push dword [ebp - 0x18]
call fcn.0062d677
push dword [ebp - 0x2c]
call fcn.0062d677
mov ebx, dword [ebp - 0x1c]
add esp, 0x18
xor edi, edi
test ebx, ebx
je 0x505e93
mov eax, dword [ebx]
mov eax, dword [eax + 0x30]
test eax, eax
je 0x505e8a
push ebx
call eax
add esp, 4
push ebx
call fcn.0062d677
add esp, 4
mov ecx, dword [ebp - 0x20]
call fcn.00494480
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 8]
push 0
mov edx, 0x6b12dc
mov dword [ebp - 8], eax
call fcn.0048c120
mov ecx, esi
call fcn.00471a70
push esi
call fcn.0062d677
mov ecx, dword [ebp - 4]
add esp, 8
mov eax, edi
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.00626a7a
mov esp, ebp
pop ebp
ret