Function at 0x100670f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 8]
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov eax, dword [0x100c40a8]
imul eax, dword [0x100c40ac]
mov ecx, 0xf73ce800
xor edx, edx
div ecx
add eax, 0xffa26cf
imul eax, eax, 0x8b5f004e
xor eax, 0x31a4f305
xor eax, 0x49434eca
or eax, 0x7c1c10ec
xor eax, 0x6768dade
or eax, 0xf82f39d9
add eax, 0x843d9704
mov ecx, 0xc3bb6b59
xor edx, edx
div ecx
xor eax, 0x2548af89
or eax, 0xea336f57
xor eax, 0xd055f79c
sub eax, 0x941e549e
imul eax, eax, 0x4e6a3507
and eax, 0x4607b9d7
add eax, 0xd32bee65
and eax, 0xcdaad031
and eax, 0xf86a8920
or eax, 0xbec94ba0
xor eax, 0x9d7f9913
or eax, 0xc9c9533a
add eax, 0xe38f4880
imul eax, eax, 0xb285baae
mov ecx, 0xa8fb8224
xor edx, edx
div ecx
imul eax, eax, 0x9fc1dce5
xor eax, 0xb6eebc4f
add eax, 0x16e06459
xor eax, 0x88e515c2
sub eax, 0x1c7f0202
or eax, 0x61b021e7
imul eax, eax, 0x7688b9d1
add eax, 0x130c014f
add eax, 0x42b737b7
and eax, 0xb8942f1d
xor eax, 0x3a56da3f
and eax, 0xc8eab6d5
mov ecx, 0xd5d2515b
xor edx, edx
div ecx
and eax, 0x8f5d856f
imul eax, eax, 0x3f611999
add eax, 0xa0ede65d
sub eax, 0x68d7a3ff
xor eax, 0x4972fcdb
mov ecx, 0x8ccc141f
xor edx, edx
div ecx
sub eax, 0x213027c3
mov ecx, 0xd50c6871
xor edx, edx
div ecx
mov ecx, 0x5efd62b3
xor edx, edx
div ecx
add eax, 0xfb5c5da3
imul eax, eax, 0x5d7f7e91
mov ecx, 0x208a74bb
xor edx, edx
div ecx
xor eax, 0xa8e03003
sub eax, 0x89c08c0a
and eax, 0x3cbf9b17
add eax, 0xff33b93f
sub eax, 0x691a862e
mov ecx, 0x6a25b4ed
xor edx, edx
div ecx
mov ecx, 0x47a5353
xor edx, edx
div ecx
imul eax, eax, 0xc14fcb82
xor eax, 0x579caec8
mov ecx, 0x24afd521
xor edx, edx
div ecx
sub eax, 0xbc5a725e
mov ecx, 0x8e6db5da
xor edx, edx
div ecx
imul eax, eax, 0x97bb99f5
or eax, 0x73b50fc9
and eax, 0x693a4c10
or eax, 0x2699325b
sub eax, 0xa94adeae
mov ecx, 0x982e58dd
xor edx, edx
div ecx
or eax, 0x3d56dd8a
add eax, 0x4cefd9d1
mov ecx, 0xe74c6ee2
xor edx, edx
div ecx
imul eax, eax, 0xa56f4d50
cmp eax, 0xde3d087b
ja 0x100677ec
mov eax, dword [0x100c40b0]
xor eax, dword [0x100c40b4]
and eax, 0xb16c72b3
imul eax, eax, 0xa9507e0
or eax, 0x76eeb093
add eax, 0x2841174a
imul eax, eax, 0x58a2b738
and eax, 0xc550aa5b
sub eax, 0xde147ea
xor eax, 0xc4d7664c
add eax, 0x7918ad53
sub eax, 0x4d52964d
xor eax, 0x9cd14fd4
and eax, 0x52a2f73f
and eax, 0x848f54be
and eax, 0x51820037
and eax, 0xd0142a6e
sub eax, 0xc658d545
and eax, 0x105c1129
sub eax, 0xef126bb8
imul eax, eax, 0x72eec94
xor eax, 0xd2f9c687
mov ecx, 0x2a308284
xor edx, edx
div ecx
add eax, 0xa0d3d873
mov ecx, 0x88dbfa68
xor edx, edx
div ecx
add eax, 0x5748eb23
or eax, 0x8b4d91d9
or eax, 0xa57b5030
xor eax, 0x607007cd
sub eax, 0x6242614d
and eax, 0xda7981ba
add eax, 0x86ac3060
imul eax, eax, 0x543ac2e1
add eax, 0x465477cd
xor eax, 0xdb6a7c3a
xor eax, 0x718aaa66
mov ecx, 0xa4c9ae92
xor edx, edx
div ecx
mov ecx, 0x90f527bd
xor edx, edx
div ecx
or eax, 0x92010aa8
mov ecx, 0x8e3dbedf
xor edx, edx
div ecx
imul eax, eax, 0x54d9a22e
and eax, 0xe6a3f7b0
sub eax, 0xcf73d0c3
or eax, 0xed8056a5
and eax, 0xb8a6a77d
xor eax, 0x88a38dbf
or eax, 0x7da5517a
or eax, 0xd8ab9d57
imul eax, eax, 0x813564dd
xor eax, 0x4d86231e
and eax, 0xd34756ef
mov ecx, 0x4c4f5f1e
xor edx, edx
div ecx
mov ecx, 0xd08a24cf
xor edx, edx
div ecx
or eax, 0xc7b6bf59
sub eax, 0xd2876490
imul eax, eax, 0x320a353c
or eax, 0xf0b611d9
imul eax, eax, 0x7f5d5039
sub eax, 0xa87b4e43
mov ecx, 0x40a59954
xor edx, edx
div ecx
and eax, 0x9317c160
mov ecx, 0x9f8f0a56
xor edx, edx
div ecx
add eax, 0x5b4c9d74
imul eax, eax, 0xc1a34ae7
add eax, 0x7229d1ec
xor eax, 0x3d5a3f6
xor eax, 0x8c44d6b8
and eax, 0x7d0844e6
add eax, 0xb596ec75
xor eax, 0xe1e118b7
add eax, 0x1ae035dc
or eax, 0xdbddc456
xor eax, 0xba72937d
or eax, 0x4a851d57
cmp eax, 0xe5269206
je 0x100677ec
jmp 0x10067473
mov eax, dword [0x100c40b8]
imul eax, dword [0x100c40bc]
add eax, 0x1fc3de0d
and eax, 0x387b2218
xor eax, 0xee6fa944
mov ecx, 0xe9dc8942
xor edx, edx
div ecx
imul eax, eax, 0xb890a4a6
imul eax, eax, 0xbbf1eb0d
and eax, 0x5538ae99
or eax, 0x475cccb7
or eax, 0x69d3567d
or eax, 0xd184214a
add eax, 0x2c21672f
xor eax, 0x90fbaabc
xor eax, 0x35fd9301
xor eax, 0x2d3acd92
and eax, 0x533d28a5
add eax, 0xe6328153
imul eax, eax, 0xda87dee3
add eax, 0x82160b1e
mov ecx, 0x276b45d9
xor edx, edx
div ecx
and eax, 0xb2620722
mov ecx, 0x8315891c
xor edx, edx
div ecx
xor eax, 0x35836ee
add eax, 0xc1c8d910
sub eax, 0x45153fbe
sub eax, 0x83324410
xor eax, 0xb7d6452c
and eax, 0x7ceb703d
or eax, 0xedd7b5b1
mov ecx, 0xdc7663
xor edx, edx
div ecx
xor eax, 0x211b6218
xor eax, 0x96860288
and eax, 0xf63f3465
mov ecx, 0x3ec3976b
xor edx, edx
div ecx
add eax, 0xc088d62b
or eax, 0xa84c17e0
imul eax, eax, 0xfa900368
sub eax, 0x32719c11
mov ecx, 0x7ef33e42
xor edx, edx
div ecx
and eax, 0xbfd3d452
sub eax, 0x1d1c45e8
sub eax, 0x6224d863
xor eax, 0xf421073e
and eax, 0xa006035
or eax, 0x8d5b4135
and eax, 0x77d57980
imul eax, eax, 0xf92b3951
or eax, 0x6db956cf
imul eax, eax, 0x1e1919da
or eax, 0x2ba8100e
or eax, 0x1a4cd1bb
xor eax, 0x73065387
imul eax, eax, 0xb214e191
add eax, 0xd6229f2e
or eax, 0x1bf0b69d
xor eax, 0x8264139f
sub eax, 0x2a082740
and eax, 0x28ca58f7
imul eax, eax, 0x83b6c9b0
add eax, 0x7f89e35c
add eax, 0xa9bfb4a3
imul eax, eax, 0xebad83e9
mov ecx, 0x42f9274d
xor edx, edx
div ecx
imul eax, eax, 0x496ccb0f
and eax, 0x7750e0e4
imul eax, eax, 0xf117eb8a
or eax, 0x62535d01
or eax, 0x55fc9a05
or eax, 0x8f198e3c
sub eax, 0x35a2e12e
imul eax, eax, 0xd0b7850d
sub eax, 0xa79f4060
and eax, 0xe70b5016
cmp eax, 0x2581310d
jbe 0x100677f1
mov eax, dword [0x100c40c0]
add eax, dword [0x100c40c4]
sub eax, 0x47134c43
or eax, 0xd6302855
and eax, 0x4b83327c
or eax, 0x29f64d7b
add eax, 0xeaeab721
mov ecx, 0xa247287a
xor edx, edx
div ecx
sub eax, 0xb009dd33
and eax, 0xbbb8d88b
sub eax, 0x219804c7
or eax, 0x9ea65e55
mov ecx, 0x74fa7c26
xor edx, edx
div ecx
mov ecx, 0xf67c1fc3
xor edx, edx
div ecx
add eax, 0x3b73fbff
and eax, 0x83cab14d
or eax, 0x21413071
mov ecx, 0xf946cab2
xor edx, edx
div ecx
imul eax, eax, 0xf234c3f6
imul eax, eax, 0x6f63203f
sub eax, 0x74d20ddf
add eax, 0x12d5dfec
xor eax, 0x1818ff98
and eax, 0x3508c0ea
xor eax, 0x75f67b9c
sub eax, 0xb224d8a2
sub eax, 0x52ef9d7b
add eax, 0xf6c391d0
or eax, 0xfa5ff625
xor eax, 0x67ec328c
or eax, 0xa80d7f63
xor eax, 0x92be6e4f
add eax, 0x980680f4
add eax, 0xcfff6679
sub eax, 0x725bc167
imul eax, eax, 0xa036be7a
or eax, 0xdfa8bcb0
and eax, 0x8ffb73c
xor eax, 0xbb2593fd
and eax, 0x85cc654e
add eax, 0xdb19d0e
add eax, 0x694e8c34
mov ecx, 0xab8fd5d0
xor edx, edx
div ecx
and eax, 0x6c25a320
xor eax, 0x16df0b6b
sub eax, 0xbefef6bc
imul eax, eax, 0x2a689fec
or eax, 0x2cacbf3
xor eax, 0x74b93fc7
mov ecx, 0xba86e15
xor edx, edx
div ecx
and eax, 0x403f7a48
or eax, 0x15b7baa8
sub eax, 0xce82d5b
imul eax, eax, 0x3da84d96
imul eax, eax, 0xedfe9f35
add eax, 0x1fd5be2c
xor eax, 0xa72960ee
add eax, 0x22db674
and eax, 0x9f01429c
xor eax, 0xc61c70e9
sub eax, 0x5b03995a
and eax, 0x2d78a3a0
mov ecx, 0x9c1d3e29
xor edx, edx
div ecx
and eax, 0x409c9ed1
mov ecx, 0xc49124ff
xor edx, edx
div ecx
sub eax, 0xfe279142
imul eax, eax, 0x87298625
xor eax, 0x7745cadd
or eax, 0x447a293d
add eax, 0xba2fe010
mov ecx, 0x1ac98c95
xor edx, edx
div ecx
mov ecx, 0xca5ce2d
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [ebp - 8]
sub ecx, 0xda0a6741
sub ecx, 0x59cd0c76
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax + 4]
mov edx, dword [ebp + 8]
mov eax, dword [ecx]
mov dword [esp], edx
call dword [eax + 4]
sub esp, 4
mov eax, dword [ebp - 0xc]
cmp eax, 0x4b219900
jbe 0x1006761a
add esp, 0x10
pop ebp
ret 4
jmp 0x100672c3
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 4]
mov edx, dword [ebp + 8]
mov eax, dword [ecx]
mov dword [esp], edx
call dword [eax + 4]
sub esp, 4
jmp 0x1006761a