Function at 0x1006b8f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x2c
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov eax, dword [0x100c5200]
sub eax, dword [0x100c5204]
and eax, 0x1f1011df
xor eax, 0x341501b1
and eax, 0x93e06fa0
imul eax, eax, 0xee91601e
imul eax, eax, 0xa1983441
add eax, 0xfad58681
sub eax, 0x21ef4d7d
imul eax, eax, 0x786f3ea6
and eax, 0x625062b2
imul eax, eax, 0x66e0d93b
mov ecx, 0x210ece81
xor edx, edx
div ecx
sub eax, 0xd1c832d
mov ecx, 0x692c3410
xor edx, edx
div ecx
imul eax, eax, 0x88955380
or eax, 0x8e97572b
imul eax, eax, 0x610964e0
add eax, 0xca75e00f
sub eax, 0x72189dbc
or eax, 0xda6345ed
sub eax, 0xe4ad2f68
xor eax, 0x5497b407
add eax, 0x21e053df
and eax, 0x486c62d5
and eax, 0xb4855674
sub eax, 0x7c6a93b8
imul eax, eax, 0xc7f608ee
xor eax, 0xc7740c5
mov ecx, 0x2d27e58f
xor edx, edx
div ecx
add eax, 0x5b8830fb
xor eax, 0x4a157ee6
add eax, 0xe6eb20dd
mov ecx, 0xc3d670d2
xor edx, edx
div ecx
and eax, 0x441e33a8
imul eax, eax, 0x526fb6f1
imul eax, eax, 0x2a3975b1
sub eax, 0x893230a
imul eax, eax, 0x872fa0d
or eax, 0xdb8d5592
mov ecx, 0x5cc3b2dd
xor edx, edx
div ecx
mov ecx, 0xf55dead1
xor edx, edx
div ecx
mov ecx, 0xcec30245
xor edx, edx
div ecx
xor eax, 0xb4f292b2
sub eax, 0xb61556c
or eax, 0x8fb40a01
add eax, 0x125a60d9
and eax, 0x4d9b4665
sub eax, 0xd7cf8fab
imul eax, eax, 0xeb4434a9
add eax, 0xcb8bedd6
sub eax, 0x7d54deee
imul eax, eax, 0x3b9afb1d
sub eax, 0xb4a9673e
add eax, 0x2842972d
imul eax, eax, 0x3a848692
sub eax, 0xef1b487d
add eax, 0xd46b080e
sub eax, 0x4fabf58
imul eax, eax, 0x5af9ae29
sub eax, 0xbb4981a9
sub eax, 0xbe57002b
xor eax, 0xcb57b90d
sub eax, 0x72293992
xor eax, 0x62b326d1
mov ecx, 0x9794eeba
xor edx, edx
div ecx
mov ecx, 0xd4d26a0b
xor edx, edx
div ecx
or eax, 0x33e465a9
mov ecx, 0x58ae84a5
xor edx, edx
div ecx
xor eax, 0xc60cd251
xor eax, 0x5fd3ff9d
add eax, 0x9b753a40
or eax, 0x53b0fe6
add eax, 0xe2f0970b
cmp eax, 0xcdf2d8fa
je 0x1006c250
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
mov eax, 0x7c44341f
push eax
mov ecx, esp
mov dword [ebp - 0x30], ecx
push eax
mov edx, esp
mov dword [ebp - 0x2c], edx
push eax
mov esi, esp
mov dword [ebp - 0x28], esi
push eax
mov ecx, esp
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov ecx, dword [ebp - 0x24]
mov dword [esi], ebx
mov dword [ecx], edi
mov ecx, 0xffffffff
sub ecx, dword [esi]
cmp ecx, dword [edx]
setb cl
mov byte [ebp - 0x1d], cl
cmp eax, 0x61d21769
jbe 0x1006babf
mov al, byte [ebp - 0x1d]
test al, 1
jne 0x1006bb18
jmp 0x1006bb56
mov dword [ebp - 0x10], 0x216
cmp dword [ebp - 0x10], 0
jg 0x1006bb34
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
jmp 0x1006bb49
mov eax, dword [ebp - 0x10]
and eax, 0xffff
or eax, 0x70000
or eax, 0x80000000
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
jmp 0x1006bedb
mov eax, dword [0x100c5210]
and eax, dword [0x100c5214]
or eax, 0x8585cf50
xor eax, 0xdd126ed2
mov ecx, 0x96a51aa0
xor edx, edx
div ecx
add eax, 0xfe8b7421
or eax, 0x72a15ade
and eax, 0x4d20664e
sub eax, 0x9bd95ecf
and eax, 0x516c2cfe
or eax, 0xb6a3ce30
add eax, 0x49ccfbdf
mov ecx, 0x479ea74
xor edx, edx
div ecx
add eax, 0x37267f26
sub eax, 0xfbcab3a3
xor eax, 0xa8c8c1d3
imul eax, eax, 0xbee5ffa0
or eax, 0x170d0455
xor eax, 0x44cc07eb
imul eax, eax, 0xf76f22e7
mov ecx, 0x7f9cbfd3
xor edx, edx
div ecx
and eax, 0x9c6cae15
add eax, 0xd0fc96c8
mov ecx, 0x148b1154
xor edx, edx
div ecx
add eax, 0x11c4c288
add eax, 0x5492e2f4
and eax, 0x80a263b5
mov ecx, 0x91a7c565
xor edx, edx
div ecx
mov ecx, 0xe1d6eccf
xor edx, edx
div ecx
or eax, 0xeba485ff
or eax, 0xa390d814
mov ecx, 0x35b1b429
xor edx, edx
div ecx
mov ecx, 0xe3121227
xor edx, edx
div ecx
mov ecx, 0x89646269
xor edx, edx
div ecx
mov ecx, 0xbb8c6667
xor edx, edx
div ecx
xor eax, 0x559b9775
sub eax, 0xcfb5aa55
imul eax, eax, 0x459a3622
or eax, 0x7e6189a
or eax, 0xe139b279
and eax, 0x483cbf3f
add eax, 0x14233292
xor eax, 0x75d7d852
and eax, 0x183c9ee5
add eax, 0xf4674e76
or eax, 0x5be43b2e
sub eax, 0xea95ce39
add eax, 0x209f4d68
add eax, 0x71ba2d94
xor eax, 0xdea344e8
xor eax, 0x9b0e1e94
and eax, 0x1c7fc4c
and eax, 0xc90df1b3
xor eax, 0xde5de404
imul eax, eax, 0xf794a8b0
xor eax, 0xa20b52d7
imul eax, eax, 0x866449e0
add eax, 0x14b9bc46
add eax, 0xd62e8827
xor eax, 0xee15da0b
xor eax, 0x23ab54ff
and eax, 0xf480281e
sub eax, 0x7e439ca0
xor eax, 0xa2b3c845
and eax, 0x9df4b5ae
sub eax, 0x89792cc8
and eax, 0x77855287
or eax, 0x114f9759
sub eax, 0xc4a44987
sub eax, 0x4aef3acf
sub eax, 0x56e9ae34
add eax, 0xfb08b45e
xor eax, 0xcb959bbe
mov ecx, 0x77c284a8
xor edx, edx
div ecx
cmp eax, 0x22aa09c3
ja 0x1006c26e
mov ecx, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x28]
mov eax, dword [0x100c5218]
or eax, dword [0x100c521c]
or eax, 0xecbf9130
and eax, 0x837ac4d9
mov ebx, 0xf28031f8
xor edx, edx
div ebx
sub eax, 0x68c68c2
and eax, 0xee7a3ce6
mov ebx, 0x6d9e44fd
xor edx, edx
div ebx
add eax, 0x1b6f1768
or eax, 0xc35007cd
add eax, 0xc4b9a858
or eax, 0x441f9d5e
sub eax, 0xba902f62
sub eax, 0x7c6b2d01
add eax, 0x32f6d299
and eax, 0x17980506
sub eax, 0x2789d351
xor eax, 0x37739386
sub eax, 0x7dd217d9
imul eax, eax, 0xabcf0ca8
mov ebx, 0x9f8c0e6a
xor edx, edx
div ebx
or eax, 0xa17bb6b1
and eax, 0xf679f82a
imul eax, eax, 0x9e854d8a
add eax, 0xd24cd520
sub eax, 0xc77e9f7a
and eax, 0x570acdfc
sub eax, 0x2765d24d
mov ebx, 0x112d1e54
xor edx, edx
div ebx
sub eax, 0xf73ef221
add eax, 0x4b77f7b6
xor eax, 0x4d58e994
or eax, 0xd3924d76
add eax, 0xd4dcb878
imul eax, eax, 0xef159e56
imul eax, eax, 0xb935a8ad
or eax, 0xb1fc21f8
add eax, 0x689e8c8a
mov ebx, 0x41db7e65
xor edx, edx
div ebx
xor eax, 0x462f0410
or eax, 0xbd44ec1b
xor eax, 0xed628d1d
add eax, 0xdddf1dff
xor eax, 0xa78afe31
xor eax, 0x16f83eb8
and eax, 0xbb641054
mov ebx, 0x14d62acf
xor edx, edx
div ebx
sub eax, 0xf2e3b2ff
imul eax, eax, 0xe57ae821
or eax, 0xb11617ca
and eax, 0x62f7a89d
mov ebx, 0x37553884
xor edx, edx
div ebx
add eax, 0xf293c9a
and eax, 0xd49e89cd
imul eax, eax, 0xba486ab8
mov ebx, 0x67b215c7
xor edx, edx
div ebx
or eax, 0x73ccbf9c
mov ebx, 0x634c6651
xor edx, edx
div ebx
mov ebx, 0xa692ba0e
xor edx, edx
div ebx
xor eax, 0x8341711
add eax, 0x1e21c62f
sub eax, 0xd8fb2751
add eax, 0x54c56c16
and eax, 0x36d9dd51
imul eax, eax, 0xa7b0a1b3
xor eax, 0x1c9c1cea
xor eax, 0x12c856a9
imul eax, eax, 0x775a90b4
and eax, 0x433a5a81
and eax, 0x80bb5f38
mov ebx, 0xa757805c
xor edx, edx
div ebx
xor eax, 0x64a8cde4
mov ebx, 0xb25e7457
xor edx, edx
div ebx
mov edx, dword [ebp - 0x24]
imul eax, eax, 0x26f75f7e
mov esi, dword [esi]
add esi, dword [edi]
mov edx, dword [edx]
mov dword [edx], esi
mov dword [ecx], 0
cmp eax, 0x6f3fa348
jae 0x1006bd05
jmp 0x1006bedb
mov eax, dword [0x100c5220]
xor eax, dword [0x100c5224]
or eax, 0x46ad70d9
and eax, 0x8aa5ddbf
imul eax, eax, 0x980c8c82
or eax, 0x1f89c71e
add eax, 0xd27d240
xor eax, 0x453675f8
sub eax, 0x14d87cdc
add eax, 0x7c6dc1f
imul eax, eax, 0x3eb7e0bd
or eax, 0x558fb2e0
xor eax, 0x104bbd77
or eax, 0xb52997a1
and eax, 0x52967034
add eax, 0xaa414736
and eax, 0xf3bed597
imul eax, eax, 0xf3acda0f
and eax, 0x57bdf3a
imul eax, eax, 0x2b0391cf
add eax, 0xaaeba3fb
sub eax, 0x1c09c66
mov ecx, 0x70da6084
xor edx, edx
div ecx
imul eax, eax, 0x5f8b84fc
xor eax, 0x309ec430
sub eax, 0x508c2ed1
add eax, 0x30499983
mov ecx, 0x77f6d717
xor edx, edx
div ecx
and eax, 0x19fcdf97
xor eax, 0xa3a8b312
xor eax, 0x68462470
mov ecx, 0x2c832506
xor edx, edx
div ecx
sub eax, 0x636d050a
add eax, 0x7fe137b5
xor eax, 0x78175a77
and eax, 0xb082bc73
mov ecx, 0xad415311
xor edx, edx
div ecx
sub eax, 0xd47b32b2
add eax, 0xf1b24cc3
or eax, 0x3b19afe
add eax, 0xc4796964
xor eax, 0xbd7a85e8
add eax, 0xaaf64a98
xor eax, 0xa1c76a35
add eax, 0xa014825e
xor eax, 0x59ea6f84
and eax, 0x252ea1bb
imul eax, eax, 0x79a01953
xor eax, 0xc1f7b811
and eax, 0xf3a232
mov ecx, 0xbcfd9c56
xor edx, edx
div ecx
imul eax, eax, 0xe2243bc0
and eax, 0xbc62f400
add eax, 0x175380fc
add eax, 0x8cc93803
add eax, 0x43a50631
sub eax, 0x65e68c91
sub eax, 0x78509e67
sub eax, 0xf334a743
imul eax, eax, 0x5fe5e026
mov ecx, 0xc0f0180c
xor edx, edx
div ecx
imul eax, eax, 0x89a7db71
add eax, 0xafee20c5
sub eax, 0x753de0c0
and eax, 0x6eff3108
and eax, 0x57abc6d1
sub eax, 0xff7d79bc
mov ecx, 0x4ed0a8d0
xor edx, edx
div ecx
sub eax, 0xe47969e4
or eax, 0x77f5f411
mov ecx, 0x93c9189c
xor edx, edx
div ecx
add eax, 0xdb38aa19
imul eax, eax, 0x22958065
xor eax, 0x562ff921
cmp eax, 0xb85bc954
ja 0x1006c28f
mov ecx, dword [ebp - 0x30]
mov eax, dword [0x100c5228]
add eax, dword [0x100c522c]
add eax, 0xfd3c6a47
imul eax, eax, 0x3c72de5c
sub eax, 0x3c25b61e
and eax, 0x73812669
add eax, 0x3ba0b24b
sub eax, 0xeba7c88
xor eax, 0x4dabc9f1
sub eax, 0x334efaf1
add eax, 0x27a43b29
and eax, 0x65ee9ae0
and eax, 0x404f0478
mov esi, 0x7c4753da
xor edx, edx
div esi
sub eax, 0xa590043c
sub eax, 0x61188dee
or eax, 0xbee294a0
sub eax, 0x107d9e7e
and eax, 0x7441d09c
xor eax, 0x19cef6b6
xor eax, 0xeaafa338
mov esi, 0xd935c9e0
xor edx, edx
div esi
sub eax, 0x1de7ce14
mov esi, 0x866dd0cf
xor edx, edx
div esi
xor eax, 0xd7c5d98d
xor eax, 0xdf6571b6
or eax, 0x49959b7a
mov esi, 0x95dfcbb8
xor edx, edx
div esi
imul eax, eax, 0xa55d2c4c
mov esi, 0x706929d7
xor edx, edx
div esi
mov esi, 0x5ca1cbf0
xor edx, edx
div esi
imul eax, eax, 0xcc2d2e88
imul eax, eax, 0xa4cbf143
imul eax, eax, 0xe592d7f7
mov esi, 0x192cbe41
xor edx, edx
div esi
xor eax, 0x7cb2229
add eax, 0xb3dc6dca
and eax, 0x938ad5c0
sub eax, 0xa85cad0
imul eax, eax, 0xd63c66ff
add eax, 0x7ecedd16
or eax, 0xeb179090
add eax, 0x55672fdd
xor eax, 0x9c5877d6
or eax, 0xaf6e55a8
xor eax, 0xc47658fe
add eax, 0xdfaf3853
sub eax, 0xff5379ea
xor eax, 0xad2049ef
and eax, 0x697bf0f9
sub eax, 0xbff62351
sub eax, 0x27686ff2
mov esi, 0x8ae29844
xor edx, edx
div esi
sub eax, 0x30d72fc5
and eax, 0x33e9708f
mov esi, 0xed898a0d
xor edx, edx
div esi
xor eax, 0x92740817
and eax, 0xd98df4a1
mov esi, 0x6bea43d9
xor edx, edx
div esi
and eax, 0x2d4b3f5d
mov esi, 0x7fe994bd
xor edx, edx
div esi
imul eax, eax, 0x39c4c326
xor eax, 0xfd896f6e
and eax, 0x917384bb
or eax, 0xcdb885d3
or eax, 0xdb1e7a92
xor eax, 0x921f8f8a
imul eax, eax, 0xc7b0195d
xor eax, 0xa06b2bc5
mov esi, 0xe43c2b7
xor edx, edx
div esi
sub eax, 0x9588ab8c
or eax, 0xf678464e
mov esi, 0x9ea870c
xor edx, edx
div esi
or eax, 0x543781a2
mov ecx, dword [ecx]
mov dword [ebp - 0x38], ecx
cmp eax, 0xc19843e5
je 0x1006c28f
mov eax, dword [ebp - 0x38]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x1c]
push eax
push eax
mov edi, esp
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [edi], ebx
mov dword [edx], esi
mov dword [eax], ecx
jmp 0x1006babf
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
mov edx, dword [edx]
mov esi, dword [esi]
add edx, esi
mov ecx, dword [ecx]
mov dword [ecx], edx
mov dword [eax], 0
jmp 0x1006bd05
jmp 0x1006c083