Function at 0x100d3ed0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x3c
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x10145534]
imul eax, dword [0x10145538]
imul eax, eax, 0xf0460703
xor eax, 0xade00145
mov ecx, 0x769deefb
xor edx, edx
div ecx
and eax, 0xf77dc4d1
sub eax, 0xd0cebc4
or eax, 0x7e1c697e
imul eax, eax, 0x4677c155
and eax, 0x6a7357c9
and eax, 0xc7b9c86d
add eax, 0xa4a1b262
mov ecx, 0xe3e487ee
xor edx, edx
div ecx
xor eax, 0xa12a7c88
mov ecx, 0xaf8b5a82
xor edx, edx
div ecx
xor eax, 0xad42b4
xor eax, 0x936fab27
xor eax, 0xff71bc0d
mov ecx, 0x9b44309c
xor edx, edx
div ecx
mov ecx, 0x2c3fc2b1
xor edx, edx
div ecx
imul eax, eax, 0x8996e8fe
sub eax, 0x59c26df7
cmp eax, 0xf85179e7
ja 0x100d519a
mov eax, dword [0x1014553c]
and eax, dword [0x10145540]
and eax, 0x65f800b
imul eax, eax, 0x37528955
imul eax, eax, 0xd68306e2
or eax, 0x257f8ee0
sub eax, 0x324877ee
add eax, 0x67c1c851
sub eax, 0xb00d4976
imul eax, eax, 0x80af03a
add eax, 0xe2f63647
imul eax, eax, 0x469bcef4
or eax, 0x8c1403fc
add eax, 0xa742ca1
sub eax, 0x5794864d
and eax, 0xac98810a
xor eax, 0xcdc76dc
and eax, 0xfe152ff1
or eax, 0x69e4c351
xor eax, 0x20c293b2
imul eax, eax, 0xe475ff4
add eax, 0xc5cff37a
cmp eax, 0x2964c798
jbe 0x100d3f7a
mov eax, dword [0x10145544]
xor edx, edx
div dword [0x10145548]
or eax, 0xdbb1d4d5
xor eax, 0x705d0160
xor eax, 0xdcbf420a
sub eax, 0x658f725d
mov ecx, 0x13ba1ae2
xor edx, edx
div ecx
or eax, 0xefc2c85e
add eax, 0xe7d12455
sub eax, 0x3382d5cd
mov ecx, 0xee791075
xor edx, edx
div ecx
mov ecx, 0x295144a0
xor edx, edx
div ecx
add eax, 0x73a66c3a
sub eax, 0x926e2f8e
mov ecx, 0x5c344658
xor edx, edx
div ecx
sub eax, 0xbffcc204
or eax, 0xb98ae410
mov ecx, 0x98a3763c
xor edx, edx
div ecx
xor eax, 0x8ba5c432
add eax, 0x7405421f
or eax, 0x7cd892cb
and eax, 0x43ba4279
cmp eax, 0x79851199
ja 0x100d4e5b
mov eax, dword [0x1014554c]
xor eax, dword [0x10145550]
add eax, 0x2b89fe8
and eax, 0x8223f79a
sub eax, 0xa95f5bbf
and eax, 0x907f61a9
mov ecx, 0x62d657be
xor edx, edx
div ecx
imul eax, eax, 0xfdd99ccc
xor eax, 0x8f8f3f24
add eax, 0xe4986450
add eax, 0xcf62b10
mov ecx, 0x2e80da99
xor edx, edx
div ecx
or eax, 0x920d5a29
mov ecx, 0x5da95eea
xor edx, edx
div ecx
and eax, 0x44c934a8
and eax, 0x1576335c
add eax, 0x450bd0ba
imul eax, eax, 0x10eda4a1
and eax, 0x660c4cb4
xor eax, 0xdaa78867
xor eax, 0x2321e6ef
add eax, 0x6f6a6fb2
cmp eax, 0x51afea44
ja 0x100d519f
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
mov eax, 0x66dc5564
push eax
mov edx, esp
mov dword [ebp - 0x2c], edx
push eax
mov ebx, esp
mov dword [ebp - 0x28], ebx
push eax
mov edx, esp
mov dword [ebp - 0x24], edx
push eax
mov edx, esp
mov dword [ebx], ecx
mov ecx, dword [ebp - 0x24]
mov dword [ecx], edi
mov dword [edx], esi
mov edx, dword [edx]
mov dword [ebp - 0x20], edx
cmp dword [ecx], 0
sete cl
mov byte [ebp - 0x19], cl
cmp eax, 0xaa658945
jae 0x100d519f
mov eax, dword [0x1014555c]
xor edx, edx
div dword [0x10145560]
imul eax, eax, 0x3f89b25
and eax, 0x30da49f6
xor eax, 0xfecb5b7d
or eax, 0x59d9256
imul eax, eax, 0xd86e3e17
xor eax, 0xbe57556f
sub eax, 0xe171c7e6
xor eax, 0x21c204d9
or eax, 0x46553f3a
xor eax, 0x40e42f28
mov ecx, 0x84232089
xor edx, edx
div ecx
imul eax, eax, 0x1c692608
add eax, 0x11f00796
sub eax, 0x9d165029
add eax, 0x9dd502ba
sub eax, 0xa06de4a0
and eax, 0xa969e783
add eax, 0xfad28808
add eax, 0xd585d8bb
and eax, 0x5c51702a
cmp eax, 0xaab75969
ja 0x100d4089
mov eax, dword [0x10145564]
sub eax, dword [0x10145568]
and eax, 0xf3141082
add eax, 0x3f47e3ae
add eax, 0xd3ab2253
imul eax, eax, 0x682638c9
sub eax, 0x6b5f066
xor eax, 0xf8ad648
imul eax, eax, 0xde35ca33
or eax, 0x45a5f0dd
add eax, 0x68485724
sub eax, 0xfc81103c
and eax, 0x4ced1df4
imul eax, eax, 0x2285e6f6
xor eax, 0x6358740e
xor eax, 0x3e897e75
xor eax, 0xe58d5c2f
and eax, 0xa8a1e939
xor eax, 0xfaaba5c1
sub eax, 0xe59c13cb
and eax, 0x8b39770f
add eax, 0xc2d2cce1
cmp eax, 0xab5d541a
jae 0x100d51bd
mov eax, dword [0x1014556c]
imul eax, dword [0x10145570]
add eax, 0xa242c26e
add eax, 0xa54ad62
xor eax, 0xa925fc9b
sub eax, 0x833f3ad8
or eax, 0x348ff381
imul eax, eax, 0xc9639e61
mov ecx, 0x33b8f383
xor edx, edx
div ecx
imul eax, eax, 0xf36422fc
add eax, 0x69df26e3
and eax, 0x20596389
xor eax, 0xda5e2e45
and eax, 0x5459dcf8
add eax, 0xdee257fc
mov ecx, 0xd337c8b1
xor edx, edx
div ecx
add eax, 0xa29161e8
imul eax, eax, 0x6303dc92
or eax, 0xa2954ac5
sub eax, 0x55d7e88f
imul eax, eax, 0xc2ec3706
sub eax, 0x2bb2490f
cmp eax, 0x2e484ac9
jbe 0x100d51bd
mov al, byte [ebp - 0x19]
test al, 1
jne 0x100d42ed
jmp 0x100d464d
mov eax, dword [0x10145574]
and eax, dword [0x10145578]
add eax, 0x13922e11
mov ecx, 0x1826150c
xor edx, edx
div ecx
imul eax, eax, 0x4ee8a4bd
imul eax, eax, 0xeda0f7de
add eax, 0x5afbd1ce
imul eax, eax, 0x6d58fdb6
imul eax, eax, 0x9be17a5a
xor eax, 0xfc92322d
imul eax, eax, 0x5cfefee9
imul eax, eax, 0xb45500ac
or eax, 0xa044c21
or eax, 0x20d72151
mov ecx, 0xf769d70b
xor edx, edx
div ecx
or eax, 0xc57a6bab
mov ecx, 0xe1dcb74d
xor edx, edx
div ecx
and eax, 0xb1d56f28
or eax, 0xf6b54a5d
mov ecx, 0xd32d2711
xor edx, edx
div ecx
or eax, 0x72423524
xor eax, 0x766a2d5c
cmp eax, 0xb5c6930d
je 0x100d4f10
mov eax, dword [0x1014557c]
or eax, dword [0x10145580]
or eax, 0x74111285
mov ecx, 0x52285606
xor edx, edx
div ecx
and eax, 0x1d4ca1ed
and eax, 0xfabb99e7
xor eax, 0xdf77d756
xor eax, 0xfa01851e
mov ecx, 0x21fd431a
xor edx, edx
div ecx
and eax, 0x8f7e74e2
add eax, 0x690fb6a3
and eax, 0x76fbdd3b
imul eax, eax, 0xf75b7f93
sub eax, 0xcd0ded62
xor eax, 0xac869c38
add eax, 0x1f13f642
xor eax, 0xde6c7c0c
and eax, 0x59b673c3
add eax, 0x4f177b2b
xor eax, 0xb8008fd8
xor eax, 0xe404dee5
imul eax, eax, 0xbc8a3c19
cmp eax, 0xd1a8fa21
ja 0x100d51c2
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x10145584]
add eax, dword [0x10145588]
and eax, 0x9c48c257
sub eax, 0x152b4b6e
imul eax, eax, 0x476db293
or eax, 0xe2281211
add eax, 0x91622b6d
and eax, 0x44c64f36
or eax, 0x67622d8f
xor eax, 0xe879771f
imul eax, eax, 0x25f92ce9
mov esi, 0x299e174b
xor edx, edx
div esi
xor eax, 0x7f6fc2db
xor eax, 0x85cf5071
mov esi, 0x68b4809e
xor edx, edx
div esi
mov esi, 0xc0f7f1e3
xor edx, edx
div esi
mov esi, 0x491af012
xor edx, edx
div esi
mov edx, eax
mov eax, dword [ebp - 0x28]
imul edx, edx, 0xe7c79bcb
xor edx, 0x241a0aab
or edx, 0xae5faf48
xor edx, 0xffc013db
sub edx, 0xaa2bd56e
mov dword [ebp - 0x30], edx
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax]
mov ecx, dword [ebp - 0x2c]
mov edx, eax
mov eax, dword [ebp - 0x30]
mov dword [ecx], edx
cmp eax, 0x37db97b0
jbe 0x100d4401
mov eax, dword [0x1014558c]
imul eax, dword [0x10145590]
xor eax, 0xaca4b58c
and eax, 0x82da5d99
xor eax, 0xc96c40d4
mov ecx, 0xa18b9b13
xor edx, edx
div ecx
add eax, 0xe7f43a5
sub eax, 0x8c4af4c4
or eax, 0x7f03645d
sub eax, 0xe7f643f3
add eax, 0xd8c2f778
or eax, 0x4c52de38
imul eax, eax, 0x5d1bc715
sub eax, 0xc0c56cb7
xor eax, 0x38899fe4
sub eax, 0xc8b4e825
imul eax, eax, 0xffc9bfb3
mov ecx, 0x6206b7d6
xor edx, edx
div ecx
or eax, 0x3a1e21a9
and eax, 0xcaabf823
imul eax, eax, 0x6e4114de
and eax, 0x6b92bc8e
cmp eax, 0x2613b42f
jbe 0x100d437d
mov eax, dword [0x10145594]
imul eax, dword [0x10145598]
imul eax, eax, 0x5758e0ab
and eax, 0x4488c3
and eax, 0x94322d18
mov ecx, 0x7509eb21
xor edx, edx
div ecx
add eax, 0x489380a
add eax, 0xe06a9f79
imul eax, eax, 0xad812de1
mov ecx, 0x3944e146
xor edx, edx
div ecx
or eax, 0xef2a7578
mov ecx, 0x47242172
xor edx, edx
div ecx
sub eax, 0x28287dff
imul eax, eax, 0xfdfa86e2
xor eax, 0xd35ac4b2
add eax, 0xe3909980
add eax, 0x2655376d
or eax, 0x37031cc5
add eax, 0x10cff99d
add eax, 0xc8111669
and eax, 0x83b4fc3b
imul eax, eax, 0x48b34c8c
cmp eax, 0x35fa427c
je 0x100d51e0
mov eax, dword [0x1014559c]
xor eax, dword [0x101455a0]
add eax, 0x3b767861
and eax, 0xcb8aa21d
sub eax, 0xb6a92aed
imul eax, eax, 0x5849641b
sub eax, 0x9814ee49
and eax, 0x566b480c
xor eax, 0xe2a24428
sub eax, 0xb4c73f32
add eax, 0x546a3f70
mov ecx, 0x2a55d61c
xor edx, edx
div ecx
or eax, 0xf79bf476
and eax, 0xf6105630
xor eax, 0xaed00040
or eax, 0xf4a6a55c
mov ecx, 0xc197aaf4
xor edx, edx
div ecx
add eax, 0x9db3a8c0
xor eax, 0x64a5e9c4
imul eax, eax, 0xb4922a39
sub eax, 0x259d3449
xor eax, 0x954fd521
cmp eax, 0x4a50ba19
je 0x100d45c4
jmp 0x100d4d31
mov eax, dword [0x101455a4]
sub eax, dword [0x101455a8]
or eax, 0x13eca4b2
sub eax, 0xb9a315b1
sub eax, 0xf867cd9c
and eax, 0x6ecad2a5
xor eax, 0xb2b906ef
add eax, 0xec541ecf
xor eax, 0x2fc873bb
imul eax, eax, 0xa07a369f
add eax, 0xb87b4785
or eax, 0x6f6a5f0f
mov ecx, 0xb029bd62
xor edx, edx
div ecx
xor eax, 0xa9f30a1e
mov ecx, 0x92f18b2
xor edx, edx
div ecx
or eax, 0xd8fed0b0
and eax, 0x7e1d9a19
imul eax, eax, 0xfd2c3985
and eax, 0x8a168b48
imul eax, eax, 0x89385fb3
or eax, 0xd9046ab2
or eax, 0xe7b86d15
cmp eax, 0x17d40176
jb 0x100d5055
mov eax, dword [0x101455ac]
add eax, dword [0x101455b0]
imul eax, eax, 0x6d0e8541
mov ecx, 0x5d0d1090
xor edx, edx
div ecx
xor eax, 0x9c9c3874
and eax, 0x8d18e1dc
xor eax, 0x103ea1c3
mov ecx, 0x88afbc7c
xor edx, edx
div ecx
xor eax, 0x656cf672
add eax, 0x29cb72e4
add eax, 0x54e2653
sub eax, 0xf3f448c3
mov ecx, 0x848b0c8d
xor edx, edx
div ecx
sub eax, 0xe555c34c
mov ecx, 0x1fc2d1da
xor edx, edx
div ecx
xor eax, 0x774e58b9
sub eax, 0xa59a01e7
or eax, 0x9549e1d6
sub eax, 0xa72366a9
or eax, 0x7e60acae
and eax, 0x78a8519e
add eax, 0xd25d90d7
cmp eax, 0x48b4b671
je 0x100d51e5
mov ecx, dword [ebp - 0x28]
mov eax, dword [0x101455b4]
and eax, dword [0x101455b8]
or eax, 0x96a5944a
imul eax, eax, 0x94d239ea
or eax, 0x257c85c5
imul eax, eax, 0x826d2d62
xor eax, 0x1d245843
or eax, 0x89519965
imul eax, eax, 0xa18a857c
mov esi, 0xe912cc8b
xor edx, edx
div esi
and eax, 0xf9bb782d
sub eax, 0xa4224f9c
mov esi, 0xfc9f2207
xor edx, edx
div esi
or eax, 0x9f2f3b73
sub eax, 0x35b8c114
and eax, 0xc0a7e9d2
imul eax, eax, 0x75ae2660
mov esi, 0xd1c62fdf
xor edx, edx
div esi
sub eax, 0x24ee163a
add eax, 0xc97ac41f
mov esi, 0xc83e61fc
xor edx, edx
div esi
add eax, 0x83ebf156
cmp dword [ecx], 0
sete cl
mov byte [ebp - 0x31], cl
cmp eax, 0x545519cc
jbe 0x100d475d
mov eax, dword [0x101455bc]
xor eax, dword [0x101455c0]
imul eax, eax, 0x925e52a2
sub eax, 0x32f4137c
sub eax, 0xa6d990c5
xor eax, 0xf6043e0d
xor eax, 0xcbd5df6c
add eax, 0xc3b34e15
imul eax, eax, 0x131e00e3
add eax, 0x11cca568
sub eax, 0xee36c938
imul eax, eax, 0x7bc2f906
or eax, 0x176f8f2b
sub eax, 0xa1d7611f
add eax, 0x7aa532f1
xor eax, 0x4c1e912
sub eax, 0xd1c2aaea
xor eax, 0x2c55a559
add eax, 0x76b638a2
xor eax, 0x77094cda
xor eax, 0x823011ec
add eax, 0x7916cbf6
cmp eax, 0x213d2697
je 0x100d5055
mov eax, dword [0x101455c4]
xor eax, dword [0x101455c8]
and eax, 0xab1d4243
and eax, 0x4f8c5370
imul eax, eax, 0x6739d187
xor eax, 0x4d4916f1
imul eax, eax, 0x1dfb7a35
or eax, 0x6398edab
and eax, 0xb07c140e
or eax, 0x6194996d
and eax, 0x9eff97d9
mov ecx, 0xd3c377bc
xor edx, edx
div ecx
xor eax, 0x3b8b46ac
sub eax, 0x43c98e19
and eax, 0xc677c1
and eax, 0x9d323a2d
imul eax, eax, 0x5ccd1901
mov ecx, 0xa1043acb
xor edx, edx
div ecx
imul eax, eax, 0xa7ad1e31
sub eax, 0xc5afb86b
mov ecx, 0x5f92b249
xor edx, edx
div ecx
and eax, 0x8a4a2fb3
cmp eax, 0x6964f2f2
jae 0x100d51ea
mov eax, dword [0x101455cc]
xor eax, dword [0x101455d0]
xor eax, 0xf25bb5df
add eax, 0xf039c418
imul eax, eax, 0xa68e381e
and eax, 0xe54d181a
or eax, 0xdaad5a11
imul eax, eax, 0xefa53bc
and eax, 0xf706d6a7
or eax, 0xe796d380
mov ecx, 0xb49609e8
xor edx, edx
div ecx
add eax, 0xa1f9e2e3
mov ecx, 0xe8ab1735
xor edx, edx
div ecx
mov ecx, 0xf0148c01
xor edx, edx
div ecx
sub eax, 0x3b551db4
imul eax, eax, 0x8b382f6c
sub eax, 0x9216a79f
mov ecx, 0x9e3b9158
xor edx, edx
div ecx
add eax, 0x58405bfd
xor eax, 0x9fb705f0
or eax, 0xe92177dc
add eax, 0xe73a883f
cmp eax, 0x6bc57609
jbe 0x100d51ea
mov al, byte [ebp - 0x31]
test al, 1
jne 0x100d499b
jmp 0x100d4bdd
mov eax, dword [0x101455d4]
xor edx, edx
div dword [0x101455d8]
and eax, 0xb98e983d
add eax, 0x4e18fa87
xor eax, 0x647161f1
xor eax, 0xba1df49
add eax, 0x79519f58
add eax, 0xdb58c824
or eax, 0xc2a99f3
sub eax, 0xb649841a
sub eax, 0x301b31c7
imul eax, eax, 0x984dbd25
add eax, 0x4c05a5ae
imul eax, eax, 0x4f76c43a
xor eax, 0x896f9a0a
add eax, 0x67fa117c
imul eax, eax, 0x2c647c96
and eax, 0xb66a9e67
mov ecx, 0x68615519
xor edx, edx
div ecx
add eax, 0x40e66579
xor eax, 0xd8af1970
mov ecx, 0xdd1c64af
xor edx, edx
div ecx
cmp eax, 0xca10dc3d
jae 0x100d51ef
mov eax, dword [0x101455dc]
xor eax, dword [0x101455e0]
sub eax, 0xfc6b13cd
imul eax, eax, 0xb3bbd3ca
or eax, 0x152db11b
xor eax, 0xae214969
xor eax, 0x20a10f76
imul eax, eax, 0x70903dcc
add eax, 0xdc673041
add eax, 0x1c36e692
sub eax, 0x9dcac806
add eax, 0x668841a4
sub eax, 0xf3feeaa8
mov ecx, 0xbe04c200
xor edx, edx
div ecx
imul eax, eax, 0xc1c6d5a5
xor eax, 0xc1775268
and eax, 0x1d14bf86
or eax, 0x9592b587
sub eax, 0x7d25b0b3
sub eax, 0x8ec4951f
mov ecx, 0x5c112c5c
xor edx, edx
div ecx
imul eax, eax, 0x7e3ecc5
cmp eax, 0x5d233d7f
je 0x100d4a22
mov eax, dword [0x101455e4]
or eax, dword [0x101455e8]
or eax, 0x337d5a5d
or eax, 0x9541bc6b
and eax, 0x2671fabd
xor eax, 0x9226fd12
imul eax, eax, 0x3d7b49bb
imul eax, eax, 0xef46f4d2
imul eax, eax, 0x25e91b2b
add eax, 0x896ba9e2
mov ecx, 0x2fd5caa9
xor edx, edx
div ecx
xor eax, 0x8c5243d3
imul eax, eax, 0x6f4bb461
imul eax, eax, 0x6f0141f9
xor eax, 0x1287a318
or eax, 0x562ea563
add eax, 0x21d8980c
or eax, 0xcb5a2ec2
sub eax, 0x833bacab
mov ecx, 0x7c267990
xor edx, edx
div ecx
and eax, 0x35a965e5
imul eax, eax, 0x55ca1ec0
cmp eax, 0x5385510f
je 0x100d505a
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x101455ec]
imul eax, dword [0x101455f0]
add eax, 0x3b8a695f
or eax, 0x49c06e5b
add eax, 0xc0174e1c
add eax, 0x6a4f016
add eax, 0xe74f3c03
xor eax, 0x769ad1d7
add eax, 0x5fa35c38
or eax, 0xffb70edf
mov esi, 0x616dfdb5
xor edx, edx
div esi
xor eax, 0x8398bbf
and eax, 0xeb3b0ef9
xor eax, 0xda6ae758
add eax, 0xe395fc6f
xor eax, 0xd4241680
or eax, 0x99db2032
sub eax, 0x9ca37819
imul eax, eax, 0x9bc13746
or eax, 0xadccbc4e
xor eax, 0xad30fb28
mov esi, 0x9de3b6
xor edx, edx
div esi
mov edx, eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x38], edx
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax + 4]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x38]
mov dword [ecx], 0
cmp eax, 0x42b5f958
jae 0x100d505a
jmp 0x100d4d31
mov eax, dword [0x101455f4]
or eax, dword [0x101455f8]
sub eax, 0x89d03f8
imul eax, eax, 0x1b8e2abc
xor eax, 0xd4082742
xor eax, 0x99602c3d
xor eax, 0xca276308
xor eax, 0xe1c4121b
or eax, 0x4bf62ba4
sub eax, 0xd47acf28
xor eax, 0x759e2ce7
and eax, 0x8ca153da
mov ecx, 0x48a77fef
xor edx, edx
div ecx
imul eax, eax, 0x57a7e314
or eax, 0xb0e7679e
or eax, 0x6ffb8c2e
or eax, 0xc329d4ca
and eax, 0x5971dc04
sub eax, 0xf7148830
imul eax, eax, 0xe85b073a
or eax, 0x5f6714bf
sub eax, 0x899d196d
cmp eax, 0xb3b5193e
ja 0x100d51f4
mov ecx, dword [ebp - 0x24]
mov eax, dword [0x101455fc]
and eax, dword [str._tOI_]
or eax, 0x35693413
xor eax, 0x2ad0868e
xor eax, 0xba1e8445
and eax, 0xdf439d23
xor eax, 0x35508d45
xor eax, 0x2a0c46ee
mov esi, 0x2ace7ee0
xor edx, edx
div esi
sub eax, 0xfcdc55b0
or eax, 0x8a225769
mov esi, 0x77f215e7
xor edx, edx
div esi
sub eax, 0xbffb6d45
sub eax, 0x33ecc8fc
add eax, 0xcdecfb8f
imul eax, eax, 0x2df42729
mov esi, 0xe541bd2
xor edx, edx
div esi
or eax, 0xb96c8765
mov esi, 0x31eeabb6
xor edx, edx
div esi
mov esi, 0x999de291
xor edx, edx
div esi
mov edx, dword [ebp - 0x20]
mov esi, eax
mov eax, dword [ebp - 0x28]
imul esi, esi, 0x7d5ccfd1
and esi, 0x24b3c955
mov dword [ebp - 0x3c], esi
mov eax, dword [eax]
mov ecx, dword [ecx]
mov edx, dword [edx + 4]
xor esi, esi
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov ecx, dword [ebp - 0x2c]
mov edx, eax
mov eax, dword [ebp - 0x3c]
mov dword [ecx], edx
cmp eax, 0xa593f59e
ja 0x100d4c5e
jmp 0x100d4d31
mov eax, dword [0x10145604]
add eax, dword [0x10145608]
add eax, 0x5d720d51
mov ecx, 0x266db5a8
xor edx, edx
div ecx
add eax, 0x118cd0af
imul eax, eax, 0x4fc79220
or eax, 0x5d3338f8
and eax, 0xd446f639
imul eax, eax, 0xe56cc821
imul eax, eax, 0x22d92ab1
sub eax, 0x2ed50668
sub eax, 0x4802eb8d
and eax, 0xa2f1be47
xor eax, 0x872d4367
xor eax, 0x3e75270a
sub eax, 0x17ad77f
mov ecx, 0x5ee4e6ee
xor edx, edx
div ecx
add eax, 0xcb4408d1
and eax, 0x3fc8d5e5
mov ecx, 0x360e3d8
xor edx, edx
div ecx
mov ecx, 0xec682196
xor edx, edx
div ecx
sub eax, 0xcfe7cf6a
cmp eax, 0x2f8cc8f
jbe 0x100d522e
mov ecx, dword [ebp - 0x2c]
mov eax, dword [0x1014560c]
add eax, dword [0x10145610]
and eax, 0x7c8c0c8c
sub eax, 0x96bfbd9c
mov esi, 0xd0bb201c
xor edx, edx
div esi
imul eax, eax, 0x9c02732c
or eax, 0xc30653e7
xor eax, 0x74f535fb
and eax, 0x35b5f32
sub eax, 0x878ab356
and eax, 0xbfe120f9
sub eax, 0x1ee5ff99
mov esi, 0xf760e32f
xor edx, edx
div esi
and eax, 0x4545e01f
and eax, 0xad92cb87
mov esi, 0xbe3a9b17
xor edx, edx
div esi
imul eax, eax, 0x536cb7a9
and eax, 0x2e712bed
and eax, 0x4ceccd81
add eax, 0x3fe91be4
add eax, 0x880c6064
and eax, 0x1e275b9e
mov ecx, dword [ecx]
mov dword [ebp - 0x40], ecx
cmp eax, 0xde4456fc
je 0x100d4dbe
mov eax, dword [ebp - 0x40]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
mov eax, dword [0x10145614]
imul eax, dword [0x10145618]
xor eax, 0xb4cd0431
xor eax, 0x58f1d92b
imul eax, eax, 0x1d63e651
imul eax, eax, 0x35875699
xor eax, 0xcdbf0b36
mov ecx, 0x57c4c792
xor edx, edx
div ecx
or eax, 0xd477aaf7
or eax, 0x1e47c8b1
imul eax, eax, 0x44251b66
and eax, 0x28139cb
and eax, 0x64f23f48
and eax, 0x8ec7eabd
mov ecx, 0xcfd85f7
xor edx, edx
div ecx
add eax, 0xa9904a62
xor eax, 0xc2323496
or eax, 0xb18de350
sub eax, 0x2db6e2f4
xor eax, 0x8d80a31d
imul eax, eax, 0x5df57888
sub eax, 0x73b29107
cmp eax, 0x7ed53220
ja 0x100d5233
mov edi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov eax, 0xbfd27fa7
push eax
push eax
mov ebx, esp
push eax
mov esi, esp
push eax
mov ecx, esp
mov dword [ebx], edx
mov edx, dword [ebp - 0x18]
mov dword [esi], edi
mov dword [ecx], edx
cmp eax, 0x90e98d50
je 0x100d4ee2
jmp 0x100d4089
mov eax, dword [0x10145624]
xor eax, dword [0x10145628]
mov ecx, 0x6cc98f0a
xor edx, edx
div ecx
add eax, 0xae259ec6
xor eax, 0x47d81472
imul eax, eax, 0x5404d525
and eax, 0xeb12aac3
sub eax, 0x87dd1610
imul eax, eax, 0xfc44a1fd
mov ecx, 0x9b74e76e
xor edx, edx
div ecx
and eax, 0x392d5036
xor eax, 0x2568e314
xor eax, 0x82c39cae
mov ecx, 0x4463f644
xor edx, edx
div ecx
xor eax, 0x987c2487
or eax, 0xe6f3fe28
add eax, 0xb424d400
mov ecx, 0x3cacec83
xor edx, edx
div ecx
or eax, 0x5602fbee
sub eax, 0x5e95b45
and eax, 0x80060a9
sub eax, 0xbcae023f
cmp eax, 0x733f66fe
je 0x100d5251
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x1014562c]
and eax, dword [0x10145630]
imul eax, eax, 0x9fa6e837
imul eax, eax, 0x6ada6b4a
imul eax, eax, 0xf39e194e
mov esi, 0xebf78f6f
xor edx, edx
div esi
imul eax, eax, 0xbb1c39ea
and eax, 0xe2c4767f
mov esi, 0x5503de7c
xor edx, edx
div esi
mov edx, eax
mov eax, dword [ebp - 0x28]
and edx, 0xce5fdef7
xor edx, 0x753a0ee0
or edx, 0x3f7a5d91
xor edx, 0xb248b56a
add edx, 0x5a4c0879
imul edx, edx, 0x36956060
and edx, 0x371840e5
or edx, 0x1989cdfa
or edx, 0x52f26fe0
xor edx, 0x4f96fe8d
imul edx, edx, 0x1b3b0688
add edx, 0xd0f10bcb
and edx, 0xc4b5f5e
mov dword [ebp - 0x44], edx
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax]
mov ecx, dword [ebp - 0x2c]
mov edx, eax
mov eax, dword [ebp - 0x44]
mov dword [ecx], edx
cmp eax, 0x32eb1fa3
ja 0x100d4f9c
jmp 0x100d437d
jmp 0x100d46d2
mov eax, dword [0x10145634]
xor edx, edx
div dword [0x10145638]
and eax, 0xde0cac44
mov ecx, 0x7dcd311e
xor edx, edx
div ecx
add eax, 0x2312d363
imul eax, eax, 0x1aab9bec
sub eax, 0x50f0868b
mov ecx, 0xdae77d66
xor edx, edx
div ecx
add eax, 0x1b8cd9eb
mov ecx, 0xbd566164
xor edx, edx
div ecx
imul eax, eax, 0x527e4b63
or eax, 0x384694f2
mov ecx, 0x7c4899eb
xor edx, edx
div ecx
sub eax, 0x989611d3
and eax, 0x1bde1974
xor eax, 0x7cc5b578
sub eax, 0xaa02aa59
imul eax, eax, 0xb37fda71
sub eax, 0x88449ced
or eax, 0x479a0a
add eax, 0xad0ffe73
or eax, 0xd7d50e62
cmp eax, 0xce808f21
jbe 0x100d526f
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x1014563c]
and eax, dword [0x10145640]
imul eax, eax, 0xe4f550ce
sub eax, 0xe3c8e4f0
add eax, 0x9c04a871
and eax, 0xd77d1ac8
xor eax, 0xcda26c8c
xor eax, 0x54eb22a0
add eax, 0x642e72fd
and eax, 0xe2d01e90
sub eax, 0x956a1590
add eax, 0xc3289d07
mov esi, 0x910570cf
xor edx, edx
div esi
mov edx, eax
mov eax, dword [ebp - 0x24]
add edx, 0xe20f63d0
sub edx, 0x758c5f9e
imul edx, edx, 0xe6b1222c
imul edx, edx, 0xffe62d6e
or edx, 0x48fa5f
sub edx, 0x88eafb41
and edx, 0xb3ea492b
xor edx, 0x2061b25b
and edx, 0x9049a464
mov dword [ebp - 0x48], edx
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax + 4]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
mov dword [ecx], 0
cmp eax, 0x7f20618a
ja 0x100d50e9
jmp 0x100d4b30
jmp 0x100d3f7a
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x14]
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 0x100d4111
jmp 0x100d4256
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax]
mov ecx, eax
mov eax, dword [ebp - 0x2c]
mov dword [eax], ecx
jmp 0x100d4401
jmp 0x100d45c4
jmp 0x100d475d
jmp 0x100d48fe
jmp 0x100d4a22
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov ecx, dword [ecx]
mov edx, dword [edx + 4]
xor esi, esi
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov ecx, eax
mov eax, dword [ebp - 0x2c]
mov dword [eax], ecx
jmp 0x100d4c5e
jmp 0x100d4dbe
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x14]
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 0x100d4ee2
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax]
mov ecx, eax
mov eax, dword [ebp - 0x2c]
mov dword [eax], ecx
jmp 0x100d4f9c
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], edx
call dword [eax + 4]
mov eax, dword [ebp - 0x2c]
mov dword [eax], 0
jmp 0x100d50e9