Function at 0x4019ef
Capabilities:
Encode data using xor

Disassembly:
mov ecx, 0xc000008e
cmp eax, ecx
ja 0x401a89
je 0x401a84
add ecx, 0xffffff8f
cmp eax, ecx
ja 0x401a50
je 0x401a4b
cmp eax, reloc.OLEAUT32.dll_SysReAllocString
je 0x401a46
cmp eax, 0x80000003
je 0x401a41
cmp eax, 0x80000004
je 0x401a3c
cmp eax, 0xc0000005
je 0x401a37
cmp eax, 0xc0000006
jne 0x401af1
jmp 0x40209d
jmp 0x401b0a
jmp 0x402371
jmp 0x401c00
jmp 0x401c66
jmp 0x402021
cmp eax, 0xc0000025
je 0x401a7f
cmp eax, 0xc0000026
je 0x401a7a
cmp eax, 0xc000008c
je 0x401a75
cmp eax, 0xc000008d
jne 0x401af1
jmp 0x401ce3
jmp 0x401b83
jmp 0x4021ef
jmp 0x40226b
jmp 0x401d66
mov ecx, 0xc0000094
cmp eax, ecx
ja 0x401ad5
je 0x401ad0
cmp eax, 0xc000008f
je 0x401acb
cmp eax, 0xc0000090
je 0x401ac6
cmp eax, 0xc0000091
je 0x401ac1
cmp eax, 0xc0000092
je 0x401abc
cmp eax, 0xc0000093
jne 0x401af1
jmp 0x401fb8
jmp 0x401f46
jmp 0x401ed7
jmp 0x401e5a
jmp 0x401de0
jmp 0x402106
cmp eax, 0xc0000095
je 0x401b05
cmp eax, 0xc0000096
je 0x401b00
cmp eax, 0xc00000fd
je 0x401afb
cmp eax, 0xe06d7363
je 0x401af6
jmp 0x40249d
jmp 0x402449
jmp 0x4023d9
jmp 0x4022f8
jmp 0x402180
test byte [0x4a4bd8], 1
jne 0x401b66
or dword [0x4a4bd8], 1
mov dword [0x49ea78], 0x6d6b706d
mov dword [0x49ea7c], 0x67617c78
mov dword [0x49ea80], 0x6b697766
mov dword [0x49ea84], 0x7b7b6d6b
mov dword [0x49ea88], 0x67617e77
mov dword [0x49ea8c], 0x617c6964
mov word [0x49ea90], 0x6667
mov byte [0x49ea92], 0x28
xor eax, eax
mov cl, byte [eax + 0x49ea78]
xor cl, 0x28
mov byte [eax + 0x49f104], cl
inc eax
cmp eax, 0x1b
jb 0x401b68
mov eax, 0x49f104
ret
test byte [0x4a4bd4], 1
jne 0x401be3
or dword [0x4a4bd4], 1
mov dword [0x49ea94], 0x6d6b706d
mov dword [0x49ea98], 0x67617c78
mov dword [0x49ea9c], 0x7a697766
mov dword [0x49eaa0], 0x7771697a
mov dword [0x49eaa4], 0x667d676a
mov dword [0x49eaa8], 0x6d777b6c
mov dword [0x49eaac], 0x6d6d6b70
mov dword [0x49eab0], 0x286c6d6c
xor eax, eax
mov cl, byte [eax + 0x49ea94]
xor cl, 0x28
mov byte [eax + 0x49f120], cl
inc eax
cmp eax, 0x20
jb 0x401be5
mov eax, 0x49f120
ret
test byte [0x4a4bd0], 1
jne 0x401c49
or dword [0x4a4bd0], 1
mov dword [0x49eab4], 0x6d6b706d
mov dword [0x49eab8], 0x67617c78
mov dword [0x49eabc], 0x7a6a7766
mov dword [0x49eac0], 0x7863696d
mov dword [0x49eac4], 0x7c666167
mov byte [0x49eac8], 0x28
xor eax, eax
mov cl, byte [eax + 0x49eab4]
xor cl, 0x28
mov byte [eax + 0x49f140], cl
inc eax
cmp eax, 0x15
jb 0x401c4b
mov eax, 0x49f140
ret
test byte [0x4a4bcc], 1
jne 0x401cc6
or dword [0x4a4bcc], 1
mov dword [0x49eacc], 0x6d6b706d
mov dword [0x49ead0], 0x67617c78
mov dword [0x49ead4], 0x696c7766
mov dword [0x49ead8], 0x717c697c
mov dword [0x49eadc], 0x65776d78
mov dword [0x49eae0], 0x64697b61
mov dword [0x49eae4], 0x65666f61
mov dword [0x49eae8], 0x287c666d
xor eax, eax
mov cl, byte [eax + 0x49eacc]
xor cl, 0x28
mov byte [eax + 0x49f158], cl
inc eax
cmp eax, 0x20
jb 0x401cc8
mov eax, 0x49f158
ret
test byte [0x4a4bc8], 1
jne 0x401d49
or dword [0x4a4bc8], 1
mov dword [0x49eaec], 0x6d6b706d
mov dword [0x49eaf0], 0x67617c78
mov dword [0x49eaf4], 0x646e7766
mov dword [0x49eaf8], 0x6d6c777c
mov dword [0x49eafc], 0x657a6766
mov dword [0x49eb00], 0x67776469
mov dword [0x49eb04], 0x697a6d78
mov word [0x49eb08], 0x6c66
mov byte [0x49eb0a], 0x28
xor eax, eax
mov cl, byte [eax + 0x49eaec]
xor cl, 0x28
mov byte [eax + 0x49f178], cl
inc eax
cmp eax, 0x1f
jb 0x401d4b
mov eax, 0x49f178
ret
test byte [0x4a4bc4], 1
jne 0x401dc3
or dword [0x4a4bc4], 1
mov dword [0x49eb0c], 0x6d6b706d
mov dword [0x49eb10], 0x67617c78
mov dword [0x49eb14], 0x646e7766
mov dword [0x49eb18], 0x616c777c
mov dword [0x49eb1c], 0x6d6c617e
mov dword [0x49eb20], 0x77716a77
mov dword [0x49eb24], 0x677a6d72
mov byte [0x49eb28], 0x28
xor eax, eax
mov cl, byte [eax + 0x49eb0c]
xor cl, 0x28
mov byte [eax + 0x49f198], cl
inc eax
cmp eax, 0x1d
jb 0x401dc5
mov eax, 0x49f198
ret
test byte [0x4a4bc0], 1
jne 0x401e3d
or dword [0x4a4bc0], 1
mov dword [0x49eb2c], 0x6d6b706d
mov dword [0x49eb30], 0x67617c78
mov dword [0x49eb34], 0x646e7766
mov dword [0x49eb38], 0x6661777c
mov dword [0x49eb3c], 0x6b69706d
mov dword [0x49eb40], 0x6d7a777c
mov dword [0x49eb44], 0x7c647d7b
mov byte [0x49eb48], 0x28
xor eax, eax
mov cl, byte [eax + 0x49eb2c]
xor cl, 0x28
mov byte [eax + 0x49f1b8], cl
inc eax
cmp eax, 0x1d
jb 0x401e3f
mov eax, 0x49f1b8
ret
test byte [0x4a4bbc], 1
jne 0x401eba
or dword [0x4a4bbc], 1
mov dword [0x49eb4c], 0x6d6b706d
mov dword [0x49eb50], 0x67617c78
mov dword [0x49eb54], 0x646e7766
mov dword [0x49eb58], 0x6661777c
mov dword [0x49eb5c], 0x6164697e
mov dword [0x49eb60], 0x7867776c
mov dword [0x49eb64], 0x7c697a6d
mov dword [0x49eb68], 0x28666761
xor eax, eax
mov cl, byte [eax + 0x49eb4c]
xor cl, 0x28
mov byte [eax + 0x49f1d8], cl
inc eax
cmp eax, 0x20
jb 0x401ebc
mov eax, 0x49f1d8
ret
test byte [0x4a4bb8], 1
jne 0x401f29
or dword [0x4a4bb8], 1
mov dword [0x49eb6c], 0x6d6b706d
mov dword [0x49eb70], 0x67617c78
mov dword [0x49eb74], 0x646e7766
mov dword [0x49eb78], 0x7e67777c
mov dword [0x49eb7c], 0x646e7a6d
mov word [0x49eb80], 0x7f67
mov byte [0x49eb82], 0x28
xor eax, eax
mov cl, byte [eax + 0x49eb6c]
xor cl, 0x28
mov byte [eax + 0x49f1f8], cl
inc eax
cmp eax, 0x17
jb 0x401f2b
mov eax, 0x49f1f8
ret
test byte [0x4a4bb4], 1
jne 0x401f9b
or dword [0x4a4bb4], 1
mov dword [0x49eb84], 0x6d6b706d
mov dword [0x49eb88], 0x67617c78
mov dword [0x49eb8c], 0x646e7766
mov dword [0x49eb90], 0x7c7b777c
mov dword [0x49eb94], 0x77636b69
mov dword [0x49eb98], 0x6b6d606b
mov word [0x49eb9c], 0x2863
xor eax, eax
mov cl, byte [eax + 0x49eb84]
xor cl, 0x28
mov byte [eax + 0x49f210], cl
inc eax
cmp eax, 0x1a
jb 0x401f9d
mov eax, 0x49f210
ret
test byte [0x4a4bb0], 1
jne 0x402004
or dword [0x4a4bb0], 1
mov dword [0x49eba0], 0x6d6b706d
mov dword [0x49eba4], 0x67617c78
mov dword [0x49eba8], 0x646e7766
mov dword [0x49ebac], 0x667d777c
mov dword [0x49ebb0], 0x6e7a6d6c
mov dword [0x49ebb4], 0x287f6764
xor eax, eax
mov cl, byte [eax + 0x49eba0]
xor cl, 0x28
mov byte [eax + 0x49f22c], cl
inc eax
cmp eax, 0x18
jb 0x402006
mov eax, 0x49f22c
ret
test byte [0x4a4bac], 1
jne 0x402080
or dword [0x4a4bac], 1
mov dword [0x49ebb8], 0x6d6b706d
mov dword [0x49ebbc], 0x67617c78
mov dword [0x49ebc0], 0x64617766
mov dword [0x49ebc4], 0x696f6d64
mov dword [0x49ebc8], 0x66617764
mov dword [0x49ebcc], 0x7d7a7c7b
mov dword [0x49ebd0], 0x67617c6b
mov word [0x49ebd4], 0x2866
xor eax, eax
mov cl, byte [eax + 0x49ebb8]
xor cl, 0x28
mov byte [eax + 0x49f244], cl
inc eax
cmp eax, 0x1e
jb 0x402082
mov eax, 0x49f244
ret
test byte [0x4a4ba8], 1
jne 0x4020e9
or dword [0x4a4ba8], 1
mov dword [0x49ebd8], 0x6d6b706d
mov dword [0x49ebdc], 0x67617c78
mov dword [0x49ebe0], 0x66617766
mov dword [0x49ebe4], 0x6f697877
mov dword [0x49ebe8], 0x7a6d776d
mov dword [0x49ebec], 0x287a677a
xor eax, eax
mov cl, byte [eax + 0x49ebd8]
xor cl, 0x28
mov byte [eax + 0x49f264], cl
inc eax
cmp eax, 0x18
jb 0x4020eb
mov eax, 0x49f264
ret
test byte [0x4a4ba4], 1
jne 0x402163
or dword [0x4a4ba4], 1
mov dword [0x49ebf0], 0x6d6b706d
mov dword [0x49ebf4], 0x67617c78
mov dword [0x49ebf8], 0x66617766
mov dword [0x49ebfc], 0x616c777c
mov dword [0x49ec00], 0x6d6c617e
mov dword [0x49ec04], 0x77716a77
mov dword [0x49ec08], 0x677a6d72
mov byte [0x49ec0c], 0x28
xor eax, eax
mov cl, byte [eax + 0x49ebf0]
xor cl, 0x28
mov byte [eax + 0x49f27c], cl
inc eax
cmp eax, 0x1d
jb 0x402165
mov eax, 0x49f27c
ret
test byte [0x4a4ba0], 1
jne 0x4021d2
or dword [0x4a4ba0], 1
mov dword [0x49ec10], 0x6d6b706d
mov dword [0x49ec14], 0x67617c78
mov dword [0x49ec18], 0x66617766
mov dword [0x49ec1c], 0x7e67777c
mov dword [0x49ec20], 0x646e7a6d
mov word [0x49ec24], 0x7f67
mov byte [0x49ec26], 0x28
xor eax, eax
mov cl, byte [eax + 0x49ec10]
xor cl, 0x28
mov byte [eax + 0x49f29c], cl
inc eax
cmp eax, 0x17
jb 0x4021d4
mov eax, 0x49f29c
ret
test byte [0x4a4b9c], 1
jne 0x40224e
or dword [0x4a4b9c], 1
mov dword [0x49ec28], 0x6d6b706d
mov dword [0x49ec2c], 0x67617c78
mov dword [0x49ec30], 0x66617766
mov dword [0x49ec34], 0x6164697e
mov dword [0x49ec38], 0x616c776c
mov dword [0x49ec3c], 0x7b67787b
mov dword [0x49ec40], 0x67617c61
mov word [0x49ec44], 0x2866
xor eax, eax
mov cl, byte [eax + 0x49ec28]
xor cl, 0x28
mov byte [eax + 0x49f2b4], cl
inc eax
cmp eax, 0x1e
jb 0x402250
mov eax, 0x49f2b4
ret
test byte [0x4a4b98], 1
jne 0x4022db
or dword [0x4a4b98], 1
mov dword [0x49ec48], 0x6d6b706d
mov dword [0x49ec4c], 0x67617c78
mov dword [0x49ec50], 0x67667766
mov dword [0x49ec54], 0x66676b66
mov dword [0x49ec58], 0x7d66617c
mov dword [0x49ec5c], 0x6d646a69
mov dword [0x49ec60], 0x6b706d77
mov dword [0x49ec64], 0x617c786d
mov word [0x49ec68], 0x6667
mov byte [0x49ec6a], 0x28
xor eax, eax
mov cl, byte [eax + 0x49ec48]
xor cl, 0x28
mov byte [eax + 0x49f2d4], cl
inc eax
cmp eax, 0x23
jb 0x4022dd
mov eax, 0x49f2d4
ret
test byte [0x4a4b94], 1
jne 0x402354
or dword [0x4a4b94], 1
mov dword [0x49ec6c], 0x6d6b706d
mov dword [0x49ec70], 0x67617c78
mov dword [0x49ec74], 0x7a787766
mov dword [0x49ec78], 0x61777e61
mov dword [0x49ec7c], 0x7a7c7b66
mov dword [0x49ec80], 0x617c6b7d
mov word [0x49ec84], 0x6667
mov byte [0x49ec86], 0x28
xor eax, eax
mov cl, byte [eax + 0x49ec6c]
xor cl, 0x28
mov byte [eax + 0x49f2f8], cl
inc eax
cmp eax, 0x1b
jb 0x402356
mov eax, 0x49f2f8
ret
test byte [0x4a4b90], 1
jne 0x4023bc
or dword [0x4a4b90], 1
mov dword [0x49ec88], 0x6d6b706d
mov dword [0x49ec8c], 0x67617c78
mov dword [0x49ec90], 0x617b7766
mov dword [0x49ec94], 0x6d646f66
mov dword [0x49ec98], 0x6d7c7b77
mov word [0x49ec9c], 0x2878
xor eax, eax
mov cl, byte [eax + 0x49ec88]
xor cl, 0x28
mov byte [eax + 0x49f314], cl
inc eax
cmp eax, 0x16
jb 0x4023be
mov eax, 0x49f314
ret
test byte [0x4a4b8c], 1
jne 0x40242c
or dword [0x4a4b8c], 1
mov dword [0x49eca0], 0x6d6b706d
mov dword [0x49eca4], 0x67617c78
mov dword [0x49eca8], 0x7c7b7766
mov dword [0x49ecac], 0x77636b69
mov dword [0x49ecb0], 0x7a6d7e67
mov dword [0x49ecb4], 0x7f67646e
mov byte [0x49ecb8], 0x28
xor eax, eax
mov cl, byte [eax + 0x49eca0]
xor cl, 0x28
mov byte [eax + 0x49f32c], cl
inc eax
cmp eax, 0x19
jb 0x40242e
mov eax, 0x49f32c
ret
test byte [0x4a4b88], 1
jne 0x402480
or dword [0x4a4b88], 1
mov dword [0x49ecbc], 0x7778786b
mov dword [0x49ecc0], 0x6d6b706d
mov dword [0x49ecc4], 0x67617c78
mov word [0x49ecc8], 0x2866
xor eax, eax
mov cl, byte [eax + 0x49ecbc]
xor cl, 0x28
mov byte [eax + 0x49f348], cl
inc eax
cmp eax, 0xe
jb 0x402482
mov eax, 0x49f348
ret
test byte [0x4a4b84], 1
jne 0x4024c1
or dword [0x4a4b84], 1
mov dword [0x49eccc], 0x6663667d
mov dword [0x49ecd0], 0x28667f67
xor eax, eax
mov cl, byte [eax + 0x49eccc]
xor cl, 0x28
mov byte [eax + 0x49f358], cl
inc eax
cmp eax, 8
jb 0x4024c3
mov eax, 0x49f358
ret