Function at 0x1007e550
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x24
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [0x100db730]
imul eax, dword [0x100db734]
sub eax, 0x811854ef
sub eax, 0x4cf687da
add eax, 0xf3a70206
or eax, 0x27e0a797
add eax, 0x99a89cf6
sub eax, 0xd6f53010
mov ecx, 0x86f92fe6
xor edx, edx
div ecx
sub eax, 0x2ca3eafc
and eax, 0xe684bae6
xor eax, 0xb1bc9439
sub eax, 0xa44a68d1
imul eax, eax, 0xa17cd71c
add eax, 0xd02894c4
add eax, 0xb2086d29
or eax, 0xa3197e55
mov ecx, 0x7b606b73
xor edx, edx
div ecx
and eax, 0xde18ad0a
or eax, 0x4c654d7d
xor eax, 0xc80eca5b
mov ecx, 0x1c006698
xor edx, edx
div ecx
xor eax, 0x567ddbf5
xor eax, 0xb897a654
imul eax, eax, 0x12720351
mov ecx, 0x7ddbe223
xor edx, edx
div ecx
xor eax, 0x872b93d7
and eax, 0x5860a40e
add eax, 0x93888a02
xor eax, 0x3f87dc38
sub eax, 0x29559347
add eax, 0xac20d485
add eax, 0x57a85c70
xor eax, 0x5e0198f0
add eax, 0x5d648dbc
sub eax, 0x7a80f791
and eax, 0x894a118c
xor eax, 0x5c25d4ac
and eax, 0x60e45aec
and eax, 0xa985376a
and eax, 0x8f5f8ada
mov ecx, 0xb30b0844
xor edx, edx
div ecx
or eax, 0x2845e6f9
xor eax, 0xd2792de7
add eax, 0xeba0faa1
imul eax, eax, 0xc615369a
or eax, 0x89e1ea5e
sub eax, 0x3d02fa93
sub eax, 0x6dadc3f1
xor eax, 0x583e08dc
and eax, 0xce0a0bda
add eax, 0x5bc50fea
xor eax, 0x3e4c8834
xor eax, 0xad736dd2
imul eax, eax, 0x76ce25ea
xor eax, 0x3e3fec48
mov ecx, 0xb64ae3f0
xor edx, edx
div ecx
or eax, 0x895adda6
sub eax, 0x91862fa2
sub eax, 0x5926b3dd
add eax, 0x73ae95e5
and eax, 0x103684ae
xor eax, 0x3c6d63ef
sub eax, 0x97b1bd24
xor eax, 0x15e21ed8
imul eax, eax, 0xc158514e
add eax, 0x43588e67
xor eax, 0x3f12b29a
mov ecx, 0x8c55199b
xor edx, edx
div ecx
or eax, 0xfa8372d8
imul eax, eax, 0x8e1f506f
or eax, 0x8584151d
sub eax, 0xf3282dea
add eax, 0x266374b4
cmp eax, 0x66a8a080
jae 0x1007ee50
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, 0x24aeb9c7
mov dword [ebp - 0x18], eax
push eax
mov edx, esp
mov dword [ebp - 0x24], edx
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [ebp - 0x20], ecx
mov dword [edx], ecx
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.10078000
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, 0
sete cl
mov byte [ebp - 0x11], cl
cmp eax, 0x1b3c0398
jbe 0x1007ee50
mov al, byte [ebp - 0x11]
test al, 1
jne 0x1007eae0
jmp 0x1007e75b
mov eax, dword [0x100db740]
sub eax, dword [0x100db744]
and eax, 0xe789fc54
and eax, 0x92a8aed0
add eax, 0x35c4c890
and eax, 0xbe74f281
and eax, 0x33497aa0
mov ecx, 0xfdc37e34
xor edx, edx
div ecx
sub eax, 0x1ee3009a
sub eax, 0x723734fd
sub eax, 0x464a96e3
sub eax, 0xee8659f8
add eax, 0x51dd89cf
xor eax, 0x4dac993b
mov ecx, 0x5e93d99c
xor edx, edx
div ecx
mov ecx, 0x7cf4ada9
xor edx, edx
div ecx
or eax, 0xc6239bd1
and eax, 0x7ba1e456
mov ecx, 0x3b1874d6
xor edx, edx
div ecx
xor eax, 0x8aacaf73
or eax, 0x2663316b
imul eax, eax, 0x1a2f2d88
add eax, 0x482b00d
imul eax, eax, 0x9c9f2cd7
xor eax, 0xd6ef9d7b
or eax, 0x5e3f6b68
add eax, 0x362c3d0f
mov ecx, 0xb67aa47d
xor edx, edx
div ecx
add eax, 0x95e1051f
imul eax, eax, 0xe3f37c4a
imul eax, eax, 0x9ad56c02
add eax, 0x129d275a
sub eax, 0xc046aa8d
imul eax, eax, 0xe58134d9
or eax, 0xdd716fdc
sub eax, 0xe67ebf3d
imul eax, eax, 0xc997b3ad
sub eax, 0x34dbdba4
sub eax, 0xec433a2f
sub eax, 0x1d6610e0
mov ecx, 0x5926f447
xor edx, edx
div ecx
mov ecx, 0xd1506c8d
xor edx, edx
div ecx
and eax, 0xb18de227
or eax, 0x9d12256f
or eax, 0x5feb27da
mov ecx, 0x3545fb05
xor edx, edx
div ecx
or eax, 0xe3f216e2
imul eax, eax, 0xfd80cdf1
add eax, 0x1edfe304
add eax, 0xafe5b21e
and eax, 0x5e16b1c7
mov ecx, 0x1028c3dc
xor edx, edx
div ecx
xor eax, 0x8bca8a57
or eax, 0x3d2536b5
and eax, 0x5b242fae
mov ecx, 0xf4ab1062
xor edx, edx
div ecx
imul eax, eax, 0xb6e6ebf1
or eax, 0xb747960a
xor eax, 0xf8ea8656
and eax, 0x9fa7a72e
xor eax, 0xabfe6004
or eax, 0xc36262ad
or eax, 0xf25ce7af
imul eax, eax, 0xb88e7177
and eax, 0xe8c6c83c
add eax, 0x801d980c
sub eax, 0xd558e227
xor eax, 0xd6e71adf
xor eax, 0xfd8b4e70
imul eax, eax, 0x9d07f29
or eax, 0xd5ce455f
or eax, 0x8ed0f39d
imul eax, eax, 0x192d6599
sub eax, 0x8c34a0b3
cmp eax, 0xe24fddc0
je 0x1007ee71
mov eax, dword [0x100db748]
xor eax, dword [0x100db74c]
or eax, 0x4f93b0d5
and eax, 0xfa789c1d
add eax, 0x311e70a7
mov ecx, 0xa8bfc2e3
xor edx, edx
div ecx
sub eax, 0x1531fbac
imul eax, eax, 0x58972433
imul eax, eax, 0x5ddf7c9
mov ecx, 0xcb4b221d
xor edx, edx
div ecx
imul eax, eax, 0x19811bc2
imul eax, eax, 0x17b06e07
or eax, 0x69cddb11
xor eax, 0xc9e7763
and eax, 0x4f71eb9a
add eax, 0x1531073f
imul eax, eax, 0xf59c5297
and eax, 0x9cbd63e3
and eax, 0xb3336fd7
imul eax, eax, 0xabf52818
or eax, 0x4a9a526a
sub eax, 0xdfa45e11
mov ecx, 0xd20ea98d
xor edx, edx
div ecx
sub eax, 0xac5b02a2
add eax, 0x9abb3ca4
imul eax, eax, 0xe1ced1a3
and eax, 0x560c36a
mov ecx, 0xa66e1523
xor edx, edx
div ecx
imul eax, eax, 0x5aeb2a9d
xor eax, 0x4d20cd14
imul eax, eax, 0x404ed042
imul eax, eax, 0x469da6de
imul eax, eax, 0xf565ecc
add eax, 0xa505a05d
and eax, 0xcbe2ff69
or eax, 0xbe853fe
xor eax, 0x9f55be
add eax, 0x3700b3c0
mov ecx, 0x8b389ff8
xor edx, edx
div ecx
xor eax, 0x6412f22c
imul eax, eax, 0x395a766c
xor eax, 0xb06f0e3b
and eax, 0xb81b0dcf
add eax, 0xe434ede3
sub eax, 0x536fd143
sub eax, 0xad1f6649
add eax, 0x5c861176
and eax, 0xe89f7bd6
and eax, 0x9e644f55
mov ecx, 0x586e824d
xor edx, edx
div ecx
and eax, 0x27eb5c0b
imul eax, eax, 0xd92d5ca3
imul eax, eax, 0xb3a12f29
imul eax, eax, 0x7928b256
or eax, 0x8329cb9e
xor eax, 0x82e7251d
sub eax, 0x49696d79
imul eax, eax, 0xb5d2e611
add eax, 0x97ac6dc7
or eax, 0x1c402c9c
xor eax, 0xddf8b17c
and eax, 0x183e9565
sub eax, 0x99ae346b
or eax, 0x493ef360
add eax, 0x424b96d7
sub eax, 0xf419fe31
mov ecx, 0xa73f296d
xor edx, edx
div ecx
add eax, 0xbce71edb
mov ecx, 0x18742e65
xor edx, edx
div ecx
imul eax, eax, 0x5d5493ea
mov ecx, 0x7b8fe97f
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [ebp - 0x20]
imul ecx, ecx, 0x5283a450
sub ecx, 0x7ad1b492
imul ecx, ecx, 0x399fbacb
mov dword [ebp - 0x28], ecx
sub esp, 4
mov dword [esp], eax
call fcn.100826e2
mov eax, dword [ebp - 0x28]
add esp, 4
cmp eax, 0x2e8899f1
je 0x1007e90c
jmp 0x1007eae0
mov eax, dword [0x100db750]
add eax, dword [0x100db754]
add eax, 0x8d42c255
imul eax, eax, 0x4a30333a
mov ecx, 0x4517c395
xor edx, edx
div ecx
imul eax, eax, 0xb4ea75b9
imul eax, eax, 0x184e4f5c
and eax, 0xb6fda06e
add eax, 0xda0efa7e
xor eax, 0x54e9c789
or eax, 0xacd0712c
xor eax, 0x13cdbd9a
and eax, 0xf76c4304
or eax, 0xc30642d4
sub eax, 0x3a7da290
and eax, 0x96e869cc
or eax, 0x7e1a5d13
xor eax, 0xed5438db
and eax, 0x4f7aa8f6
sub eax, 0x8719b40
and eax, 0x4dd482bb
add eax, 0x14dadb09
or eax, 0xd8775d28
or eax, 0x1e521844
xor eax, 0x612a6f0d
and eax, 0xd34c0962
sub eax, 0x3732009
add eax, 0x938eadf0
or eax, 0x95dee489
add eax, 0xb344a9e9
xor eax, 0x6a73d96c
sub eax, 0xd9afcfd0
xor eax, 0xefcf6411
mov ecx, 0x4085a662
xor edx, edx
div ecx
mov ecx, 0x3a4da810
xor edx, edx
div ecx
imul eax, eax, 0x958d7851
or eax, 0xde0ba802
add eax, 0x2dd96ecc
sub eax, 0x65f50167
imul eax, eax, 0x386f8cce
xor eax, 0x9e984bc8
mov ecx, 0xde4e0579
xor edx, edx
div ecx
mov ecx, 0x406168e2
xor edx, edx
div ecx
sub eax, 0x98ab13a2
and eax, 0xb5085a1a
add eax, 0xf6a20f6e
mov ecx, 0xef7c9ec9
xor edx, edx
div ecx
sub eax, 0xf372eff9
sub eax, 0x2e7ebf8b
add eax, 0xf91b1c8d
xor eax, 0xdfc53390
imul eax, eax, 0xe1e38a17
sub eax, 0x58e262f1
xor eax, 0x8b312e60
and eax, 0xdb23c6ba
and eax, 0x3230ce37
xor eax, 0x9d1f47fc
imul eax, eax, 0xf2a91491
add eax, 0x1336808f
add eax, 0x1ea713c5
add eax, 0x3259e10
xor eax, 0x35c89a1c
add eax, 0xa2bcecb5
mov ecx, 0x8b96f32
xor edx, edx
div ecx
sub eax, 0xc60f2352
mov ecx, 0x94ac2c5d
xor edx, edx
div ecx
or eax, 0x20cb069
xor eax, 0xdfd0cd93
or eax, 0xb7255e71
add eax, 0xa14f1a23
xor eax, 0x986a3652
imul eax, eax, 0xa70c4600
imul eax, eax, 0x803d89c7
mov ecx, 0xddf8409d
xor edx, edx
div ecx
cmp eax, 0xd20b1699
je 0x1007ee87
mov ecx, dword [ebp - 0x24]
mov eax, dword [0x100db758]
xor edx, edx
div dword [0x100db75c]
mov esi, 0x4a6e8841
xor edx, edx
div esi
or eax, 0x1c6150f9
add eax, 0xb78a8cef
imul eax, eax, 0x965e199e
xor eax, 0xe3a4d460
or eax, 0x245c6956
or eax, 0xddf456d2
or eax, 0x6015abf1
mov esi, 0x423578b
xor edx, edx
div esi
xor eax, 0x18e6a65a
mov esi, 0xef846063
xor edx, edx
div esi
xor eax, 0x2943f23e
mov esi, 0x74a1c8b
xor edx, edx
div esi
sub eax, 0xe0b815b8
or eax, 0xd7565f88
xor eax, 0x22417f02
mov esi, 0x21b74b0b
xor edx, edx
div esi
xor eax, 0x4e43d097
imul eax, eax, 0xf2068f0f
sub eax, 0x4af1cd5
or eax, 0xbda5d46b
add eax, 0x59e7d424
mov esi, 0xa6eb5159
xor edx, edx
div esi
xor eax, 0x6bf9d22
xor eax, 0xabc3f489
or eax, 0x53974731
sub eax, 0xf47afab6
sub eax, 0x14b3286a
or eax, 0x41b03be7
imul eax, eax, 0xad9b6fd7
imul eax, eax, 0xba1d393f
imul eax, eax, 0x1df8360a
imul eax, eax, 0xd4200f1
add eax, 0x97662999
and eax, 0x396fbd03
mov esi, 0xd786b481
xor edx, edx
div esi
xor eax, 0xf7f1a581
sub eax, 0x9bda9b79
imul eax, eax, 0x4ce4799e
xor eax, 0x49d2cc9b
add eax, 0x33e9c63e
xor eax, 0x8ed12b4d
imul eax, eax, 0xac29bb7d
imul eax, eax, 0xa93d8ec
add eax, 0x63758760
sub eax, 0x26fb94d
xor eax, 0x24e8cd2b
mov esi, 0x62a5480d
xor edx, edx
div esi
imul eax, eax, 0x57fa2988
or eax, 0x95a9fb47
add eax, 0x1b3baf49
add eax, 0x12b83aed
or eax, 0x26329c92
and eax, 0xd0d0e90c
and eax, 0x1330e0b6
imul eax, eax, 0x84d81094
and eax, 0x56d4de75
mov esi, 0xc73be560
xor edx, edx
div esi
xor eax, 0xa4243a2f
or eax, 0x3ba570f0
imul eax, eax, 0x9ebd951f
and eax, 0xfa07aefa
xor eax, 0x558bc1fb
sub eax, 0x3bf0283b
sub eax, 0x53853187
and eax, 0x8a027fbf
imul eax, eax, 0x6163ed1a
sub eax, 0xcdb29ef9
or eax, 0x192cb1c9
or eax, 0xf9d373e7
sub eax, 0x84369a57
xor eax, 0xf599c52d
mov ecx, dword [ecx]
mov dword [ebp - 0x2c], ecx
cmp eax, 0x29fae4fd
jbe 0x1007ee87
mov eax, dword [ebp - 0x2c]
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret 4
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
push eax
mov eax, esp
push eax
mov esi, esp
push eax
mov ecx, esp
mov dword [esi], edi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [eax], ecx
call fcn.10078000
jmp 0x1007e702
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call fcn.100826e2
add esp, 4
jmp 0x1007e90c
jmp 0x1007ec8b