Function at 0x100a6f20
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x20
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [0x1014b2b8]
add eax, dword [0x1014b2bc]
sub eax, 0x6ea765d4
imul eax, eax, 0x775272cf
sub eax, 0x34043cae
mov ecx, 0x8dab9c94
xor edx, edx
div ecx
mov ecx, 0x8d930f1a
xor edx, edx
div ecx
imul eax, eax, 0xd62a22eb
add eax, 0x4d342e57
imul eax, eax, 0xd972a7de
xor eax, 0x8af91daf
imul eax, eax, 0x992d80d2
xor eax, 0xdb06e913
add eax, 0x3776fbdb
and eax, 0x8857a734
or eax, 0xd8e57a90
sub eax, 0x8fcc6058
or eax, 0x5b8f5145
mov ecx, 0xe690ba0e
xor edx, edx
div ecx
or eax, 0xefd5ca81
and eax, 0xf71e1d1
and eax, 0xaf607ff1
or eax, 0xbf00bd7a
mov ecx, 0x6eb01236
xor edx, edx
div ecx
and eax, 0xe673581f
add eax, 0xc3f7b6f5
and eax, 0x14f2de37
add eax, 0x9fda3eb2
add eax, 0xbbf1ba9b
sub eax, 0x7c49dad8
add eax, 0x55b76a1a
imul eax, eax, 0x17439f15
or eax, 0x3fb80626
or eax, 0x40422803
imul eax, eax, 0xd03c7868
cmp eax, 0x634f10da
je 0x100a7705
mov eax, dword [0x1014b2c0]
or eax, dword [0x1014b2c4]
xor eax, 0xee80c1f1
imul eax, eax, 0x2d78e8e8
imul eax, eax, 0x51394582
sub eax, 0xcff4b145
mov ecx, 0xbf17fca0
xor edx, edx
div ecx
mov ecx, 0xbfb610f4
xor edx, edx
div ecx
mov ecx, 0x5d57a827
xor edx, edx
div ecx
sub eax, 0xfdb1cb42
or eax, 0x63ccff9
sub eax, 0xa1110b3f
and eax, 0x2e52a048
xor eax, 0xbde5ae9
xor eax, 0x8e091357
add eax, 0x82e8da05
add eax, 0x28fc624b
imul eax, eax, 0x76052b50
add eax, 0xa582da5f
add eax, 0x934406f2
and eax, 0x268bb8e6
or eax, 0xb5d1e591
sub eax, 0xad1a1e6c
imul eax, eax, 0x1bb18cf7
and eax, 0x12918a2
and eax, 0xec311bea
imul eax, eax, 0x28255fdd
sub eax, 0xaae9f53c
sub eax, 0x533f30fa
or eax, 0x22fc936
sub eax, 0x76d83e3d
and eax, 0xa4fc7589
xor eax, 0x3b9567eb
sub eax, 0xb7547eb8
mov ecx, 0xb1a56e44
xor edx, edx
div ecx
cmp eax, 0xb24cf752
jae 0x100a78d0
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
xor eax, eax
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.100a7900
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, 0
sete cl
mov byte [ebp - 0x11], cl
cmp eax, 0x7ab3f27d
je 0x100a78d0
mov eax, dword [0x1014b2d0]
and eax, dword [0x1014b2d4]
sub eax, 0x9b517216
xor eax, 0xff0aa614
imul eax, eax, 0x8e9db1
add eax, 0x9fe6a89e
add eax, 0x75ccfadf
add eax, 0x17d27090
mov ecx, 0x8a107cda
xor edx, edx
div ecx
mov ecx, 0xfa10b621
xor edx, edx
div ecx
and eax, 0xc7a3743c
and eax, 0xd84f64fb
mov ecx, 0x42e28ebf
xor edx, edx
div ecx
add eax, 0xd812edb
or eax, 0x36bd969e
and eax, 0x9dbe1b8f
mov ecx, 0xba729026
xor edx, edx
div ecx
sub eax, 0x6e44af74
xor eax, 0x29c21188
or eax, 0x377f435b
imul eax, eax, 0x3e9c93c9
xor eax, 0xca5be0a1
xor eax, 0x4c719e20
or eax, 0x7a50953b
mov ecx, 0x769f08c3
xor edx, edx
div ecx
add eax, 0x74fff239
add eax, 0xaaa97038
mov ecx, 0x3b32c698
xor edx, edx
div ecx
sub eax, 0x2f8bcc81
or eax, 0xeabcbc0d
add eax, 0x1c61624b
xor eax, 0x77b17851
or eax, 0x40b0cdc
imul eax, eax, 0x6fd8c2d0
sub eax, 0x793fa3ff
cmp eax, 0x4d5f95fc
jb 0x100a7002
mov eax, dword [0x1014b2d8]
sub eax, dword [0x1014b2dc]
and eax, 0x6335c814
xor eax, 0xc6cf5a21
or eax, 0x5237ce7
and eax, 0xa30e513f
and eax, 0x509befac
or eax, 0xa5f3b2c8
imul eax, eax, 0x30467d2e
imul eax, eax, 0xf019786f
and eax, 0x9b46afc7
xor eax, 0x456d7b11
and eax, 0xfaa208c2
imul eax, eax, 0x2e459fed
or eax, 0xcd32980
imul eax, eax, 0x50367d87
or eax, 0x405d484
or eax, 0xb66b5740
or eax, 0xa8998411
and eax, 0xb4298462
add eax, 0x90cb8297
or eax, 0xa19fc635
sub eax, 0x24c42bc2
and eax, 0xbfdf81b9
sub eax, 0xfb35e427
sub eax, 0x66202b5b
or eax, 0x14cac3a8
or eax, 0x5f88774
mov ecx, 0x54e30950
xor edx, edx
div ecx
add eax, 0x12815f
sub eax, 0xfba70987
sub eax, 0xa6844cb1
imul eax, eax, 0xbdbcb186
xor eax, 0x79a49e93
add eax, 0x9247b6ad
cmp eax, 0x5f9847d9
jb 0x100a78f1
mov eax, dword [0x1014b2e0]
add eax, dword [0x1014b2e4]
xor eax, 0x8bff20aa
mov ecx, 0x68acf645
xor edx, edx
div ecx
sub eax, 0x764b6c8f
imul eax, eax, 0xfc0052a0
or eax, 0x3a3c7461
or eax, 0xb74a3999
sub eax, 0x3114eae3
and eax, 0x30b4d060
xor eax, 0xfad54789
imul eax, eax, 0xb2096100
add eax, 0x3eec42c6
and eax, 0xe1860d01
imul eax, eax, 0xc0db7651
and eax, 0x6bc22452
imul eax, eax, 0xf9d951f3
add eax, 0xdae87744
mov ecx, 0xe54a350c
xor edx, edx
div ecx
or eax, 0x17a50be6
xor eax, 0x24c78554
or eax, 0x13dc5f95
xor eax, 0x8236094c
add eax, 0xcb7c45d
or eax, 0xd873e3c4
xor eax, 0x2c63a17e
xor eax, 0x59b09494
xor eax, 0xae4f96e5
xor eax, 0x782e62df
imul eax, eax, 0x79ef994c
and eax, 0x538e058
and eax, 0x4b44c53e
sub eax, 0x3a5ee0c
imul eax, eax, 0x99ad21c7
or eax, 0x70569bac
cmp eax, 0x9f4af203
je 0x100a78f1
mov al, byte [ebp - 0x11]
test al, 1
jne 0x100a739c
jmp 0x100a738b
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call fcn.1011cf8c
add esp, 4
mov eax, dword [0x1014b2e8]
sub eax, dword [0x1014b2ec]
add eax, 0x904e8a34
mov ecx, 0x5ac3aec3
xor edx, edx
div ecx
imul eax, eax, 0xe592d4a0
and eax, 0x3a87a682
or eax, 0x66193d0e
imul eax, eax, 0xaf6fadbf
imul eax, eax, 0xef15c560
mov ecx, 0x8edd3830
xor edx, edx
div ecx
xor eax, 0x326492e
imul eax, eax, 0xe5877296
xor eax, 0xeb3d15a7
imul eax, eax, 0x4926950d
and eax, 0xf408318a
add eax, 0x45b022c7
or eax, 0x8f7f58b2
and eax, 0xad0ff537
xor eax, 0xe8bc3f53
xor eax, 0x7b9ae71f
add eax, 0xd8679157
mov ecx, 0xdda1ab8
xor edx, edx
div ecx
imul eax, eax, 0x5e073d90
mov ecx, 0xd6ee9da
xor edx, edx
div ecx
mov ecx, 0xc8073aeb
xor edx, edx
div ecx
mov ecx, 0xa8367524
xor edx, edx
div ecx
add eax, 0x51d75c95
sub eax, 0x80d08581
imul eax, eax, 0xb956779f
and eax, 0x2e4fd3dd
imul eax, eax, 0x7b1255d2
xor eax, 0x2c013598
add eax, 0xd96a7c59
imul eax, eax, 0x4f97902c
sub eax, 0xd4bc0d47
cmp eax, 0xd7f53299
jae 0x100a78f6
mov eax, dword [0x1014b2f0]
xor edx, edx
div dword [0x1014b2f4]
xor eax, 0x9952c702
and eax, 0xc438bad3
imul eax, eax, 0x3d32c17
xor eax, 0x1615aa6b
and eax, 0x8dce5e26
or eax, 0xe0a3abb8
imul eax, eax, 0x97a98df3
imul eax, eax, 0x1f005ff
mov ecx, 0xc0cb192d
xor edx, edx
div ecx
sub eax, 0xff5649e0
imul eax, eax, 0x2c13de63
xor eax, 0xcc0b4222
or eax, 0x3b958179
add eax, 0x457b1c53
mov ecx, 0xeb6469a5
xor edx, edx
div ecx
add eax, 0xbcb0dcab
sub eax, 0xa36e19c4
add eax, 0x236af2d1
add eax, 0x9ced4618
sub eax, 0xc266bfba
and eax, 0xf21db7c2
and eax, 0xe49c372e
xor eax, 0xf0295af7
and eax, 0x36864cb5
add eax, 0x298530a4
mov ecx, 0x7f258abe
xor edx, edx
div ecx
or eax, 0x95b08ade
and eax, 0x807643cb
imul eax, eax, 0x251c6329
xor eax, 0xf5339fb1
xor eax, 0x802e5a6e
or eax, 0x6ade1370
add eax, 0xee42322
cmp eax, 0x7dc19fe6
je 0x100a7478
mov eax, dword [0x1014b2f8]
add eax, dword [0x1014b2fc]
imul eax, eax, 0xea592ce8
mov ecx, 0x84b83631
xor edx, edx
div ecx
sub eax, 0xfb378c21
mov ecx, 0x13ba2aba
xor edx, edx
div ecx
imul eax, eax, 0x6da56e74
sub eax, 0x9b27b048
mov ecx, 0x64add4b6
xor edx, edx
div ecx
xor eax, 0xab8af106
and eax, 0x63e219d7
imul eax, eax, 0x5453e68c
and eax, 0xbd40a154
xor eax, 0xeb679d15
and eax, 0x660a7ef0
and eax, 0x9f71f78a
or eax, 0x5de30db7
mov ecx, 0x722be1f1
xor edx, edx
div ecx
imul eax, eax, 0x7f82e23c
xor eax, 0xa3aabbd3
add eax, 0xb5cb9685
xor eax, 0x74d98b28
and eax, 0x2e6d073
xor eax, 0x45d7a325
mov ecx, 0xa86209cc
xor edx, edx
div ecx
and eax, 0xdd290a5c
and eax, 0xb35c9b7f
mov ecx, 0x941ff8de
xor edx, edx
div ecx
imul eax, eax, 0x87097bcf
sub eax, 0xc26789d9
sub eax, 0x141a9017
sub eax, 0xcbaca647
or eax, 0xf43824b
add eax, 0x7c36c76a
imul eax, eax, 0xdaf16baf
cmp eax, 0x5f979426
ja 0x100a7726
mov ecx, dword [ebp - 0x24]
mov eax, dword [0x1014b300]
add eax, dword [0x1014b304]
or eax, 0x93d0240a
or eax, 0x3e4bb25f
and eax, 0x3d64c57f
or eax, 0x147147d1
or eax, 0x287bae6d
imul eax, eax, 0xca3e2749
xor eax, 0x835e6864
xor eax, 0x1b0a91b4
add eax, 0x516be4f4
imul eax, eax, 0x464ee064
and eax, 0x90425446
and eax, 0xb08ded24
mov esi, 0x23560206
xor edx, edx
div esi
or eax, 0x9adb6157
sub eax, 0x76032c46
sub eax, 0xf8c0442a
xor eax, 0xbc74faa7
add eax, 0x9002ec85
mov esi, 0x775116d5
xor edx, edx
div esi
and eax, 0xfa69a4cc
or eax, 0xb59a35f0
mov esi, 0x469e45c8
xor edx, edx
div esi
or eax, 0xddcde0c4
mov esi, 0xacc42c7e
xor edx, edx
div esi
mov esi, 0x21dca98
xor edx, edx
div esi
sub eax, 0x398e460b
or eax, 0x8a70b7e3
or eax, 0x3e043a3a
and eax, 0x928fe863
and eax, 0x4aed052d
or eax, 0x24a9a665
sub eax, 0x58600942
imul eax, eax, 0x109f0f83
mov ecx, dword [ecx]
mov dword [ebp - 0x28], ecx
cmp eax, 0x259d50af
jbe 0x100a761f
mov eax, dword [ebp - 0x28]
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.100a7900
jmp 0x100a7002
mov eax, dword [0x1014b308]
xor edx, edx
div dword [0x1014b30c]
mov ecx, 0x45f584ce
xor edx, edx
div ecx
and eax, 0x9834b6dc
xor eax, 0x258a3d1d
and eax, 0xa5911761
mov ecx, 0xcd63ffe7
xor edx, edx
div ecx
or eax, 0x5d1bbbf9
and eax, 0xe2e354ce
imul eax, eax, 0x933fc3b
xor eax, 0x47d51e92
or eax, 0x19ec4594
and eax, 0x2ddb3ee5
or eax, 0x5d3f6328
imul eax, eax, 0x2df0aec5
sub eax, 0x504f26d7
add eax, 0x1be09781
xor eax, 0xcd7234d
sub eax, 0xe2efeba
xor eax, 0x658eb5f7
sub eax, 0x3d21dd5d
imul eax, eax, 0xbbb5dac4
or eax, 0xeeb99efe
xor eax, 0x1ce6e4ec
add eax, 0x70e6f85f
mov ecx, 0xec3030af
xor edx, edx
div ecx
sub eax, 0x3640320c
or eax, 0x739aeb29
or eax, 0x9682d33c
and eax, 0x6ed1e224
sub eax, 0x3970ed83
mov ecx, 0x6afec443
xor edx, edx
div ecx
imul eax, eax, 0x2c83b0fc
mov ecx, 0x2aa0f63
xor edx, edx
div ecx
xor eax, 0x848292af
cmp eax, 0x8a60d8ab
jae 0x100a78fb
mov eax, dword [0x1014b310]
and eax, dword [0x1014b314]
or eax, 0xec7ea4f9
or eax, 0x38763c8
imul eax, eax, 0x20b08ec3
sub eax, 0xb91859af
add eax, 0xb1cbac09
or eax, 0xc82e70c
mov ecx, 0x87d84bee
xor edx, edx
div ecx
or eax, 0xd9153571
xor eax, 0xf8d59bd4
and eax, 0xbe6a26f9
and eax, 0x946849c2
add eax, 0x58b462bb
imul eax, eax, 0x85395a44
xor eax, 0xe94c9668
sub eax, 0xb8c5ca7b
imul eax, eax, 0xf78b43d9
xor eax, 0xa0aab9b
xor eax, 0xd16cf4e2
mov ecx, 0x74e2cb86
xor edx, edx
div ecx
sub eax, 0xb34f4e66
mov ecx, 0xe8f65f69
xor edx, edx
div ecx
xor eax, 0x49cfc838
imul eax, eax, 0x8cac927f
or eax, 0x9f4c8f1f
xor eax, 0x977f6be5
and eax, 0xf5d0267c
mov ecx, 0x2fbb6717
xor edx, edx
div ecx
and eax, 0x9aea6d26
or eax, 0x6784995c
sub eax, 0x73c8988b
xor eax, 0x3f423b1a
imul eax, eax, 0x7cc5eb46
or eax, 0x8f91ec60
cmp eax, 0x6b02ceef
je 0x100a78fb
jmp 0x100a761f
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.100a7900
jmp 0x100a70d2
jmp 0x100a72b2
jmp 0x100a7478
jmp 0x100a77fb