Function at 0x1000d990
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x34
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x100cf7f0]
xor edx, edx
div dword [0x100cf7f4]
and eax, 0xbb20673d
add eax, 0x49493396
or eax, 0x9a3664a
and eax, 0xa8b1c025
imul eax, eax, 0xa699c824
sub eax, 0x2012f3a9
xor eax, 0x78019d55
and eax, 0x3c9ce74c
imul eax, eax, 0xeadae67c
imul eax, eax, 0x7e02212e
and eax, 0x112357d0
add eax, 0xc73e27da
or eax, 0xa38bf78a
xor eax, 0xfc94ca5a
imul eax, eax, 0xd54111b5
imul eax, eax, 0x3c22eaf1
xor eax, 0xe173563e
or eax, 0xeb0fbba0
add eax, 0xa273320c
add eax, 0x38d97028
or eax, 0xfc6fe89
or eax, 0xa091c392
imul eax, eax, 0xf3310d72
sub eax, 0x8019f61c
xor eax, 0x2051fea7
or eax, 0xa2e3ec5c
add eax, 0x50aa4278
mov ecx, 0x452c2b4b
xor edx, edx
div ecx
xor eax, 0x5efeffd2
add eax, 0xf7d8d90c
mov ecx, 0xcd25889e
xor edx, edx
div ecx
and eax, 0x5b5048a
mov ecx, 0xcc7abdc6
xor edx, edx
div ecx
xor eax, 0xa5a29094
add eax, 0xd9d2f7c7
sub eax, 0xb839cdf1
or eax, 0xf58b090f
add eax, 0x75025ec7
imul eax, eax, 0xf295fa55
or eax, 0x17be055b
and eax, 0x8c0faeb2
xor eax, 0xfc14c5d0
or eax, 0x24a5e480
mov ecx, 0x62f6f154
xor edx, edx
div ecx
sub eax, 0x4229736f
or eax, 0x16ef4355
add eax, 0x1da07c5a
mov ecx, 0x60f7ee21
xor edx, edx
div ecx
xor eax, 0x7b290314
add eax, 0xa48c6b3a
mov ecx, 0xafd5de69
xor edx, edx
div ecx
mov ecx, 0x8af84336
xor edx, edx
div ecx
or eax, 0x229451f
and eax, 0x8b044706
add eax, 0xbc19e2d9
imul eax, eax, 0x7ca2c3c3
mov ecx, 0xad3cf06
xor edx, edx
div ecx
add eax, 0xcdb5b911
add eax, 0xc6b118e5
imul eax, eax, 0xc74a1a28
xor eax, 0xe073374f
or eax, 0x5424b1d7
and eax, 0x46d20d2f
sub eax, 0x74d53b94
or eax, 0x854d2259
imul eax, eax, 0xa71bac2a
and eax, 0xf363c6f8
imul eax, eax, 0xd67578f5
or eax, 0xb76e1368
mov ecx, 0x484a69c2
xor edx, edx
div ecx
mov ecx, 0xacdc1b1d
xor edx, edx
div ecx
or eax, 0x9517fc33
cmp eax, 0x16f3474
je 0x1000ea34
mov ecx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x14]
mov eax, 0xaa4f0b52
mov dword [ebp - 0x18], eax
push eax
mov edx, esp
mov dword [ebp - 0x2c], edx
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
push eax
mov esi, esp
mov dword [ebp - 0x24], esi
push eax
mov ebx, esp
mov dword [ebp - 0x20], ebx
push eax
mov ebx, esp
mov dword [ebp - 0x1c], ebx
mov dword [edx], edi
mov dword [eax], ecx
sub esp, 4
mov dword [esp], 0x41
call fcn.10099e2a
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x18]
mov dword [esi], edi
mov esi, dword [esi]
mov byte [esi + 0x40], 0
mov dword [edx], 0x40000000
mov dword [ecx], 0
cmp eax, 0x477a98fe
je 0x1000ea34
jmp 0x1000dbc9
mov eax, dword [0x100cf800]
or eax, dword [0x100cf804]
and eax, 0xe77f906a
and eax, 0x4f7e583d
add eax, 0x4b809fdb
and eax, 0x88cf1dc8
imul eax, eax, 0xa243ed27
imul eax, eax, 0x2311c1f3
and eax, 0x2e2928b8
xor eax, 0xe6322a18
sub eax, 0xb0e23ac3
imul eax, eax, 0xe3bdc2
or eax, 0xb74075e1
imul eax, eax, 0x17eb8265
imul eax, eax, 0x32f14e47
and eax, 0xd2d9a711
imul eax, eax, 0xf6c24dde
add eax, 0x7cd4eac6
mov ecx, 0x2efdafc4
xor edx, edx
div ecx
or eax, 0x67c966fb
xor eax, 0x8c7736e7
mov ecx, 0x72676700
xor edx, edx
div ecx
add eax, 0x9042f340
xor eax, 0x822276a3
mov ecx, 0x5fa368b2
xor edx, edx
div ecx
sub eax, 0x160ab7b2
add eax, 0x71bdf869
sub eax, 0x7553dad4
add eax, 0xe03458d5
xor eax, 0xe1441a02
or eax, 0x5953f11d
or eax, 0xaa26a795
sub eax, 0x6355698e
xor eax, 0x90926710
and eax, 0xd8d8d5e2
add eax, 0x3df491f
xor eax, 0x3e65ea31
xor eax, 0xa159688f
and eax, 0x426fe0df
sub eax, 0xc3da7e9c
add eax, 0x65a34de3
sub eax, 0x3ee4bee3
or eax, 0x78622a50
imul eax, eax, 0x957f0fe6
sub eax, 0x7c57d090
or eax, 0xf287f66b
and eax, 0x40744a08
and eax, 0xc5ae6481
mov ecx, 0xd349c9b3
xor edx, edx
div ecx
mov ecx, 0x69fa78b9
xor edx, edx
div ecx
or eax, 0x6568ff67
add eax, 0x55cad104
imul eax, eax, 0xbeb8366f
xor eax, 0x264bbac8
imul eax, eax, 0xf1effd46
xor eax, 0x9d7801b0
or eax, 0xfa13cdc6
sub eax, 0x208661db
sub eax, 0xe68d4606
or eax, 0x8a86fb88
sub eax, 0x9b1f6808
sub eax, 0x2aaf3244
sub eax, 0x7ec23748
or eax, 0x406957dc
or eax, 0x82ffc6a8
imul eax, eax, 0x67dd751
sub eax, 0xd9ee12c4
xor eax, 0x2b2ac176
add eax, 0xc334c099
or eax, 0x50d25c90
add eax, 0x18036996
imul eax, eax, 0xc0dc23ab
add eax, 0xbddd4be1
sub eax, 0x7409656b
cmp eax, 0x7741cd85
jb 0x1000ea8c
mov ecx, dword [ebp - 0x1c]
mov eax, dword [0x100cf808]
imul eax, dword [0x100cf80c]
mov esi, 0xb8883f07
xor edx, edx
div esi
imul eax, eax, 0xb2d4dd1f
or eax, 0x6544e6b0
add eax, 0xf3b1a8e2
imul eax, eax, 0x5f622182
sub eax, 0xe49b9d77
sub eax, 0x5fb6fb3e
imul eax, eax, 0xe24dc3b3
sub eax, 0xe8e9f01d
and eax, 0x2712f38a
add eax, 0xca2474b0
or eax, 0x3ab008b1
imul eax, eax, 0x3f004494
add eax, 0x4199246a
imul eax, eax, 0xf197ae22
mov esi, 0x80265444
xor edx, edx
div esi
or eax, 0xeadb84a1
xor eax, 0x3fd60488
mov esi, 0xf203a881
xor edx, edx
div esi
mov esi, 0xf50817b
xor edx, edx
div esi
imul eax, eax, 0x50a65a0a
or eax, 0xc6c8ec5d
add eax, 0xa4d08713
sub eax, 0x7ccbf33a
sub eax, 0xb814f9e2
sub eax, 0x65b44d5b
xor eax, 0x753a4887
mov esi, 0xa95c6e65
xor edx, edx
div esi
sub eax, 0xed2911ac
sub eax, 0x805c227
imul eax, eax, 0xaf4ac8d0
sub eax, 0xb702d433
and eax, 0x5c27487c
sub eax, 0xea5721e6
imul eax, eax, 0xab933557
add eax, 0xa80ef69b
mov esi, 0x2bfb8dac
xor edx, edx
div esi
imul eax, eax, 0x1eccdaa1
mov esi, 0xce390ab3
xor edx, edx
div esi
xor eax, 0xd69b5f3f
add eax, 0x9da0fd9f
mov esi, 0x4a0342a4
xor edx, edx
div esi
or eax, 0xc39197c
add eax, 0xdeff3c17
sub eax, 0x2fecbf27
mov esi, 0xb9df51ac
xor edx, edx
div esi
mov esi, 0x20353d13
xor edx, edx
div esi
or eax, 0x6bdd64c5
sub eax, 0x49fbc8ff
sub eax, 0x47bf7e4b
or eax, 0x35c918c6
or eax, 0x1c75916f
add eax, 0x2282efd5
xor eax, 0x316200ba
and eax, 0x495372fb
imul eax, eax, 0xafa1df5e
mov esi, 0x688a89ed
xor edx, edx
div esi
or eax, 0x10c4e203
add eax, 0x457ccf69
sub eax, 0x3c09ddfd
sub eax, 0xa1bf5ad9
and eax, 0x8c719698
imul eax, eax, 0x1ce2d47e
or eax, 0x79bd5199
imul eax, eax, 0xbb2c6282
sub eax, 0x48f2a9de
add eax, 0x78204415
sub eax, 0xff3ff126
imul eax, eax, 0x72a23cff
sub eax, 0x9cb80d40
add eax, 0x5b9e0ee2
xor eax, 0x741df181
cmp dword [ecx], 0x20
setl cl
mov byte [ebp - 0x2d], cl
cmp eax, 0x5e106fb0
je 0x1000ea8c
mov al, byte [ebp - 0x2d]
test al, 1
jne 0x1000df3a
jmp 0x1000e6bc
mov eax, dword [0x100cf810]
xor eax, dword [0x100cf814]
add eax, 0xd7a206f9
add eax, 0x994d196e
imul eax, eax, 0x87404150
add eax, 0x31dc9f64
imul eax, eax, 0x3cd5adba
add eax, 0x7290f3d7
and eax, 0x2297d671
mov ecx, 0x86cf26ae
xor edx, edx
div ecx
sub eax, 0x437a419b
imul eax, eax, 0x21dd1c04
imul eax, eax, 0x2a0a642d
mov ecx, 0xad8ebbbe
xor edx, edx
div ecx
mov ecx, 0x7fb0aec
xor edx, edx
div ecx
add eax, 0x236a6d7f
sub eax, 0xdd61015
imul eax, eax, 0x4eb9c008
mov ecx, 0x10815d02
xor edx, edx
div ecx
imul eax, eax, 0x85a07e19
sub eax, 0xf7fc9563
sub eax, 0xfc5d518b
mov ecx, 0xb8d593cc
xor edx, edx
div ecx
sub eax, 0xebd2393e
xor eax, 0x486a8316
imul eax, eax, 0x2e21a14f
and eax, 0xba493cc7
and eax, 0x25b6a68e
sub eax, 0xc5d9c867
sub eax, 0xc79b6ec7
and eax, 0xea49b2cf
imul eax, eax, 0x799e5131
and eax, 0x255d14f0
add eax, 0xed74f4aa
or eax, 0x8d4a30e7
and eax, 0x1a12b43b
mov ecx, 0x6b27b07e
xor edx, edx
div ecx
imul eax, eax, 0x2dfc03a1
sub eax, 0x22408f0
sub eax, 0xabc5ce3f
imul eax, eax, 0x6d8d3711
and eax, 0x2a7c5fb4
mov ecx, 0xec4c2139
xor edx, edx
div ecx
and eax, 0x8045ce8c
add eax, 0xc3db9726
imul eax, eax, 0xaae392b8
and eax, 0x20eccbc9
imul eax, eax, 0x3dc49abb
mov ecx, 0xeedf0295
xor edx, edx
div ecx
xor eax, 0x53c729b5
add eax, 0x173b424d
imul eax, eax, 0xe219b104
xor eax, 0x6c6666a9
or eax, 0x702ce31
or eax, 0x73dd7f23
mov ecx, 0x634d304d
xor edx, edx
div ecx
and eax, 0x863370c9
or eax, 0x38ce502d
mov ecx, 0xb105561
xor edx, edx
div ecx
sub eax, 0xfe0f9d3a
and eax, 0xe37e58ef
xor eax, 0x42795e66
mov ecx, 0xeeb2ad2c
xor edx, edx
div ecx
add eax, 0xcf2a7fc9
add eax, 0x587d3ce4
sub eax, 0xc0880430
xor eax, 0x12b024cf
mov ecx, 0xdfd5b3c2
xor edx, edx
div ecx
and eax, 0xad1eb413
mov ecx, 0x8c12a5d4
xor edx, edx
div ecx
imul eax, eax, 0xd346b087
add eax, 0x67d3022c
add eax, 0x6379999
mov ecx, 0xaff2c268
xor edx, edx
div ecx
cmp eax, 0x24bc22a
je 0x1000ea91
mov ecx, dword [ebp - 0x28]
mov eax, dword [0x100cf818]
imul eax, dword [0x100cf81c]
and eax, 0x8bc47a9f
imul eax, eax, 0xd5f5723
or eax, 0xe7ecbdc6
and eax, 0x94e405e5
and eax, 0x83857f16
imul eax, eax, 0x5d48f386
imul eax, eax, 0x157b6dec
mov esi, 0xd2a23cab
xor edx, edx
div esi
imul eax, eax, 0x6d2e0a2d
sub eax, 0x45ef8dc8
or eax, 0x45ace431
imul eax, eax, 0x529a594
xor eax, 0xda83f7bb
sub eax, 0x86052ae4
and eax, 0xa89bd7d5
and eax, 0x76ea11a0
xor eax, 0xbfe36d6b
and eax, 0xcb1364c2
mov esi, 0x36d24b25
xor edx, edx
div esi
or eax, 0x30f50c1e
sub eax, 0x20286ea4
mov esi, 0x39fd03c1
xor edx, edx
div esi
add eax, 0xea187e58
add eax, 0xc1ed9411
mov esi, 0x780ccdac
xor edx, edx
div esi
and eax, 0xc160b026
imul eax, eax, 0xe3f1e7a2
mov esi, 0x68e38ef4
xor edx, edx
div esi
and eax, 0xac05424
sub eax, 0x969a9a9c
imul eax, eax, 0x385527ca
mov esi, 0xc18ca556
xor edx, edx
div esi
xor eax, 0x2caa732f
xor eax, 0xbb8225cd
or eax, 0x41de3d77
mov esi, 0x6dce8aa5
xor edx, edx
div esi
or eax, 0x8a3f2a0a
imul eax, eax, 0x250f5791
add eax, 0xebab9aa9
mov esi, 0x3f0e11f2
xor edx, edx
div esi
imul eax, eax, 0x7929f4e
sub eax, 0x4bb5dc51
and eax, 0x8feb3f9c
and eax, 0xdcfa948e
and eax, 0x94fc753b
imul eax, eax, 0x7d28b122
or eax, 0x8d35234a
and eax, 0x1c858fb3
xor eax, 0x1a843b92
or eax, 0x2e586969
sub eax, 0xc9f23c1f
mov esi, 0xc6186d13
xor edx, edx
div esi
imul eax, eax, 0x361fc6d2
imul eax, eax, 0xa1421dfa
xor eax, 0xed0a2bec
sub eax, 0x681c5ef6
or eax, 0xc6817fee
and eax, 0xc5ff91a1
imul eax, eax, 0xb3bd5ccd
mov esi, 0xe487ffaa
xor edx, edx
div esi
xor eax, 0x58767d95
mov esi, 0x15524cb9
xor edx, edx
div esi
mov edx, dword [ebp - 0x20]
xor eax, 0xe96c8b07
add eax, 0x8af60a90
and eax, 0x8a57c111
imul eax, eax, 0x7eb9428b
and eax, 0xa4c39ab3
add eax, 0x322cdab9
imul eax, eax, 0x24914e4
or eax, 0x9f1d6baa
imul eax, eax, 0xa5dbaf25
sub eax, 0x92c15d41
mov ecx, dword [ecx]
and ecx, dword [edx]
cmp ecx, 0
setne cl
mov byte [ebp - 0x2e], cl
cmp eax, 0xe0b11c22
je 0x1000ea91
mov al, byte [ebp - 0x2e]
test al, 1
jne 0x1000e2dc
jmp 0x1000e2f2
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ecx]
shl ecx, 1
mov byte [eax + ecx], 0x31
jmp 0x1000e303
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ecx]
shl ecx, 1
mov byte [eax + ecx], 0x30
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
and eax, dword [ecx]
cmp eax, 0
je 0x1000e32d
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ecx]
shl ecx, 1
mov byte [eax + ecx + 1], 0x31
jmp 0x1000e33f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ecx]
shl ecx, 1
mov byte [eax + ecx + 1], 0x30
mov eax, dword [0x100cf820]
xor eax, dword [0x100cf824]
imul eax, eax, 0x48a7fe11
add eax, 0x96c9d29c
sub eax, 0x3737500d
and eax, 0xf1bb899a
mov ecx, 0xd54f1b18
xor edx, edx
div ecx
xor eax, 0x5901f57b
imul eax, eax, 0x1e509b6b
and eax, 0x654db491
and eax, 0xba029b18
add eax, 0x9707998e
and eax, 0x9c0aed72
or eax, 0xe272d08b
and eax, 0xbd440288
or eax, 0xecdd117a
or eax, 0xc80ee994
and eax, 0xda9dc1fb
imul eax, eax, 0x4ce1e293
mov ecx, 0xf6589f63
xor edx, edx
div ecx
mov ecx, 0x7c0b0eec
xor edx, edx
div ecx
sub eax, 0x2842024
add eax, 0x702b4955
imul eax, eax, 0x8219b1c5
sub eax, 0x8a28ac86
add eax, 0x4d5bd998
and eax, 0x2331aa6d
add eax, 0x6232cf4
sub eax, 0xc358624e
or eax, 0x2c803d40
sub eax, 0x71355b33
or eax, 0x7c264ade
xor eax, 0x6ed9af29
imul eax, eax, 0xc1681f71
xor eax, 0xb96807e
mov ecx, 0x84cb52fe
xor edx, edx
div ecx
or eax, 0xcc004e7b
or eax, 0x62ef33b
imul eax, eax, 0x24caf4fb
xor eax, 0xa5b3d96e
imul eax, eax, 0x383b94cf
mov ecx, 0x1ae1dc46
xor edx, edx
div ecx
imul eax, eax, 0x32670647
and eax, 0x2b2ee00d
and eax, 0xb0e2ec60
sub eax, 0xfeb6606
and eax, 0x3be00ad9
add eax, 0xa9fadf6a
imul eax, eax, 0xe674cc50
add eax, 0x218f73dd
sub eax, 0xebcb01bf
or eax, 0x8779ac89
add eax, 0x1a1735fe
imul eax, eax, 0x327597cf
sub eax, 0x9de5c2ad
mov ecx, 0xf62c0c9f
xor edx, edx
div ecx
or eax, 0xe3b91d7a
and eax, 0xf8d2254c
mov ecx, 0x9db3da69
xor edx, edx
div ecx
or eax, 0xa0cdd878
imul eax, eax, 0x60982aaa
xor eax, 0x14ce0d30
imul eax, eax, 0x4c6b6ac9
xor eax, 0xcb7ddf7b
imul eax, eax, 0x58f36f06
imul eax, eax, 0xf1f1fc4d
mov ecx, 0xb7bc1e0f
xor edx, edx
div ecx
and eax, 0x59cc706b
add eax, 0x465c8b75
and eax, 0xaa5d9f66
imul eax, eax, 0x20cae02
imul eax, eax, 0xecb121e0
imul eax, eax, 0x9fdc92de
add eax, 0x1843546b
cmp eax, 0x36370168
jbe 0x1000ea96
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x100cf828]
or eax, dword [0x100cf82c]
and eax, 0x1e07d8e4
add eax, 0xb61c5454
xor eax, 0xfbed584
mov esi, 0x4f7c891b
xor edx, edx
div esi
imul eax, eax, 0x8332a68a
add eax, 0x409359d1
imul eax, eax, 0xfc561e5b
imul eax, eax, 0xe1c59df3
and eax, 0xd668eb42
or eax, 0xcabad94d
sub eax, 0xd60b28e1
or eax, 0x3c4ad4ca
add eax, 0xb862a3c1
and eax, 0xd15af9a0
sub eax, 0xb47c2788
or eax, 0xaa490add
or eax, 0x345712a1
imul eax, eax, 0xecdf3e0
or eax, 0x56cebc48
xor eax, 0x5606cef6
imul eax, eax, 0xf0f2a202
and eax, 0x9846e09b
mov esi, 0xf8c27e1d
xor edx, edx
div esi
imul eax, eax, 0xd5ba6d6c
or eax, 0xd4c556e7
or eax, 0x24f5a1d7
mov esi, 0xc1381366
xor edx, edx
div esi
add eax, 0x3aab78e3
imul eax, eax, 0xfd041c2f
or eax, 0x5f7b943a
sub eax, 0x5eaa56da
imul eax, eax, 0x172d7aa2
or eax, 0x76de7b8a
imul eax, eax, 0xf9f326b6
or eax, 0x93b6baf7
add eax, 0x41ea537a
sub eax, 0x32788d6a
and eax, 0xae0a3add
or eax, 0xa6e2256a
imul eax, eax, 0x7345d5e
mov esi, 0x1d9e8ba1
xor edx, edx
div esi
and eax, 0x7501876d
and eax, 0xf87a8c66
or eax, 0x41f828d8
xor eax, 0xe3b0372a
sub eax, 0xcd331b89
mov esi, 0x2eff8bcd
xor edx, edx
div esi
sub eax, 0xe2ee9e6d
mov esi, 0xd34b5807
xor edx, edx
div esi
mov esi, 0xf996cf0
xor edx, edx
div esi
and eax, 0x512e1d98
add eax, 0x8ac57a26
add eax, 0x2c692310
and eax, 0x1cb08323
and eax, 0xaa06612d
imul eax, eax, 0xc158ad2d
imul eax, eax, 0x87913d9b
sub eax, 0x11e72aa1
sub eax, 0x130187ff
mov esi, 0xf26411a5
xor edx, edx
div esi
or eax, 0x8e904589
sub eax, 0x841170c6
or eax, 0x2e494c38
mov esi, 0x371baf2c
xor edx, edx
div esi
imul eax, eax, 0x417cf643
xor eax, 0xc3e16b7b
imul eax, eax, 0xb77a5f0e
add eax, 0x2d81e49e
or eax, 0x9c07a33f
or eax, 0x617d91ea
and eax, 0x3f113e6
xor eax, 0xcd31be3e
mov edx, dword [ecx]
sar edx, 1
mov dword [ecx], edx
cmp eax, 0x65a91b2f
jb 0x1000e4ee
jmp 0x1000e6ad
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x1000dbc9
mov eax, dword [0x100cf830]
imul eax, dword [0x100cf834]
sub eax, 0x974a0007
xor eax, 0x2f28a6b7
and eax, 0xa8c8676e
mov ecx, 0x8a87e5b6
xor edx, edx
div ecx
xor eax, 0x11a7e30c
sub eax, 0xd285e152
mov ecx, 0x8979f339
xor edx, edx
div ecx
mov ecx, 0x46679265
xor edx, edx
div ecx
imul eax, eax, 0xcc59fe4e
imul eax, eax, 0x38ebb842
sub eax, 0xea06509f
imul eax, eax, 0x89c5830b
and eax, 0x839285d
imul eax, eax, 0x93d29d30
or eax, 0xe0f067c4
xor eax, 0x3607a6b1
xor eax, 0xcb9d0fd4
or eax, 0x84ba11f3
or eax, 0x858f4bf3
xor eax, 0x63069e2c
mov ecx, 0xba63c492
xor edx, edx
div ecx
imul eax, eax, 0x29c91340
xor eax, 0xf9929c03
add eax, 0xb69cc50a
or eax, 0xcafecf8d
sub eax, 0x84f145e4
add eax, 0x323fd99
and eax, 0x549e64f6
imul eax, eax, 0xc1a3fd1e
mov ecx, 0x6ace2ea5
xor edx, edx
div ecx
and eax, 0xa4c7d24f
xor eax, 0xf8f1e1a7
mov ecx, 0xeb1bc4c2
xor edx, edx
div ecx
add eax, 0x374e4252
add eax, 0xd09cfb9b
mov ecx, 0xcae144b0
xor edx, edx
div ecx
add eax, 0xe9e0e5d
xor eax, 0xa8abd5fe
or eax, 0x20251a13
add eax, 0x7ab40060
xor eax, 0xd6cae695
xor eax, 0x9c1aa6b8
sub eax, 0x9e4103d9
add eax, 0xfa06ba7b
and eax, 0xb1a58385
mov ecx, 0x417f562b
xor edx, edx
div ecx
and eax, 0xe453711e
mov ecx, 0xba79914b
xor edx, edx
div ecx
add eax, 0x3bcbb6ee
mov ecx, 0x3f27171c
xor edx, edx
div ecx
or eax, 0x627e3854
xor eax, 0xd24da4b8
imul eax, eax, 0x7bcdc545
and eax, 0xc7be0b04
mov ecx, 0xa9ead62b
xor edx, edx
div ecx
imul eax, eax, 0x4b1c4728
mov ecx, 0x5a2dc48
xor edx, edx
div ecx
or eax, 0x929c0269
add eax, 0xa85de019
or eax, 0xa424b37
add eax, 0x31febb66
or eax, 0x81fd8dc3
add eax, 0xc3e528ac
imul eax, eax, 0x4a830377
and eax, 0xb8ff7196
imul eax, eax, 0x84de6503
mov ecx, 0xac46db30
xor edx, edx
div ecx
and eax, 0x84adb533
add eax, 0x58156f87
add eax, 0xdcc6a0e6
or eax, 0x452ecc3a
imul eax, eax, 0x3c2b118b
cmp eax, 0x879904fa
je 0x1000eaa5
mov ecx, dword [ebp - 0x24]
mov eax, dword [0x100cf838]
sub eax, dword [0x100cf83c]
add eax, 0xf1e1aff
and eax, 0x72ce211
sub eax, 0xee3b5259
sub eax, 0xd5e81e52
xor eax, 0x210f973f
xor eax, 0xc5d92cbf
imul eax, eax, 0x7d6a8bd4
mov esi, 0xc26b4039
xor edx, edx
div esi
and eax, 0xa9bd68bb
sub eax, 0xa6fa6c70
sub eax, 0xcc379057
add eax, 0x5a99d8c5
mov esi, 0x8df9a0c7
xor edx, edx
div esi
sub eax, 0x78faf7bc
imul eax, eax, 0x79c26ad1
sub eax, 0xeba3929
imul eax, eax, 0x8eb64640
add eax, 0x8f9b3732
or eax, 0x13b00afb
xor eax, 0x319d4784
or eax, 0x9ec10904
xor eax, 0x2694412c
imul eax, eax, 0x2e05c8e3
sub eax, 0x3620bc1b
and eax, 0x7731dae7
sub eax, 0x56f14986
sub eax, 0x2d36248c
add eax, 0x67d51bd4
xor eax, 0xebce899a
xor eax, 0x80c1c48
and eax, 0xfed567e4
imul eax, eax, 0x563b0030
mov esi, 0x86dbf810
xor edx, edx
div esi
and eax, 0xc76227d3
xor eax, 0x1bf3fd1f
xor eax, 0x45875762
add eax, 0x2b3aea8
or eax, 0xee901e07
or eax, 0x77cc35a0
add eax, 0x8d4739dd
add eax, 0x2cc7e931
or eax, 0xbe435ded
mov esi, 0x1080f418
xor edx, edx
div esi
imul eax, eax, 0xeba7b4fe
or eax, 0x1507a348
imul eax, eax, 0xd2f62e77
mov esi, 0x9128efbf
xor edx, edx
div esi
and eax, 0xd75d8918
imul eax, eax, 0xe0900d71
and eax, 0x522b85de
sub eax, 0x53589169
add eax, 0x7fb2dacd
or eax, 0xa08e7a6b
and eax, 0x1eec21ea
or eax, 0x3a0900bc
imul eax, eax, 0xdca18c8f
imul eax, eax, 0xbf382039
imul eax, eax, 0x5aa6d77c
mov esi, 0xb0ad2e4c
xor edx, edx
div esi
xor eax, 0x8a08d0b5
add eax, 0x14b9afab
sub eax, 0xb93e2179
or eax, 0x1540f634
sub eax, 0x43a5d36a
imul eax, eax, 0xc0de473b
imul eax, eax, 0xed7a858
and eax, 0x293e793f
sub eax, 0x460febf3
xor eax, 0x721116e1
or eax, 0x870e6a4d
mov esi, 0xb244e1c3
xor edx, edx
div esi
xor eax, 0x17c838eb
mov ecx, dword [ecx]
mov dword [ebp - 0x34], ecx
cmp eax, 0xc18525d3
je 0x1000eaa5
mov eax, dword [ebp - 0x34]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x10]
mov esi, dword [ebp - 0x14]
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov edi, esp
mov dword [ebp - 0x40], edi
push eax
mov edi, esp
mov dword [ebp - 0x3c], edi
push eax
mov edi, esp
mov dword [ebp - 0x38], edi
mov dword [edx], esi
mov dword [eax], ecx
sub esp, 4
mov dword [esp], 0x41
call fcn.10099e2a
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
add esp, 4
mov esi, eax
mov eax, dword [ebp - 0x38]
mov dword [edx], esi
mov edx, dword [edx]
mov byte [edx + 0x40], 0
mov dword [ecx], 0x40000000
mov dword [eax], 0
jmp 0x1000db58
jmp 0x1000dd66
jmp 0x1000e0fe
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
sar ecx, 1
mov dword [eax], ecx
jmp 0x1000e4ee
jmp 0x1000e87a