Function at 0x10004b20
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], ecx
mov dword [ebp - 4], ecx
call fcn.10071a60
mov ecx, dword [ebp - 0xc]
mov dword [ecx], 0
lea eax, [0x10000000]
mov dword [ecx + 4], eax
lea eax, [0x100d8158]
add eax, 4
mov dword [ecx + 8], eax
lea eax, [0x100d815c]
mov dword [ecx + 0xc], eax
add ecx, 0x10
call fcn.10071c70
cmp eax, 0
jge 0x10004ef1
mov eax, dword [0x100d9570]
sub eax, dword [0x100d9574]
imul eax, eax, 0xaaef1ef8
mov ecx, 0x76d116d8
xor edx, edx
div ecx
or eax, 0x12e9bc4c
mov ecx, 0x8b73eab
xor edx, edx
div ecx
mov ecx, 0x74895f49
xor edx, edx
div ecx
add eax, 0xb80298e5
imul eax, eax, 0xba953f48
and eax, 0xd5a9594f
xor eax, 0xf22cb8ff
or eax, 0x47e61a53
mov ecx, 0x432a0436
xor edx, edx
div ecx
or eax, 0xa8791a3a
imul eax, eax, 0xd3fa1da5
sub eax, 0x83b45a9c
and eax, 0x8bd49fd9
and eax, 0x2bc29d9f
imul eax, eax, 0xe8728121
or eax, 0x5dab5e81
or eax, 0xee5d98f
xor eax, 0xd282a169
and eax, 0x53f35cb5
and eax, 0x8aa88c23
and eax, 0x8f58cca3
or eax, 0x1a448e4e
imul eax, eax, 0xbed61215
add eax, 0x9427ab17
imul eax, eax, 0xe014f474
mov ecx, 0x4c43151e
xor edx, edx
div ecx
add eax, 0x7981b48b
sub eax, 0xf1eec5b
and eax, 0xb0cec656
or eax, 0x569d95e8
sub eax, 0xa4859980
imul eax, eax, 0x8613a59c
mov ecx, 0x6a7c0bf5
xor edx, edx
div ecx
imul eax, eax, 0x4ad3fb43
imul eax, eax, 0xbb02dce5
mov ecx, 0x87f88fe2
xor edx, edx
div ecx
and eax, 0x15c44927
sub eax, 0xb500ff56
mov ecx, 0x829a795
xor edx, edx
div ecx
mov ecx, 0x8e110ed1
xor edx, edx
div ecx
and eax, 0xee36b1e4
imul eax, eax, 0x861578
sub eax, 0xb3d2434d
sub eax, 0x8c3271d0
and eax, 0xd1caca23
sub eax, 0xcf9fa963
and eax, 0xbc8d2ce3
imul eax, eax, 0xb21cf44c
mov ecx, 0x86d7353
xor edx, edx
div ecx
mov ecx, 0xb0cb360c
xor edx, edx
div ecx
sub eax, 0xf53c1ce9
sub eax, 0x41df1041
imul eax, eax, 0x1148b3e4
sub eax, 0x12f4d4d8
mov ecx, 0x49150abf
xor edx, edx
div ecx
imul eax, eax, 0xeed0cf5
and eax, 0x91bb608d
add eax, 0x9758fe5d
imul eax, eax, 0xb8284d1
xor eax, 0x3497941c
imul eax, eax, 0xd072cbee
imul eax, eax, 0x32870aef
or eax, 0x8f5f35cc
mov ecx, 0xd0bb0c69
xor edx, edx
div ecx
or eax, 0x98563a5f
sub eax, 0xb51989bb
mov ecx, 0xf060f3f9
xor edx, edx
div ecx
imul eax, eax, 0x5d440253
imul eax, eax, 0x259957bc
add eax, 0x85cb9470
cmp eax, 0x80422a38
jb 0x10005272
mov eax, dword [0x100d9578]
xor edx, edx
div dword [0x100d957c]
imul eax, eax, 0xc631ba11
imul eax, eax, 0x8028103f
or eax, 0xe261cfd0
and eax, 0x21a0c2f7
xor eax, 0x3feb6657
or eax, 0x5479dd36
mov ecx, 0x9b502d19
xor edx, edx
div ecx
sub eax, 0xb63f3838
xor eax, 0xeca51d81
mov ecx, 0x48adbbd4
xor edx, edx
div ecx
imul eax, eax, 0xf145833a
mov ecx, 0x8669f535
xor edx, edx
div ecx
and eax, 0x4f136d38
xor eax, 0x3c09d9d6
imul eax, eax, 0x80b043e0
sub eax, 0xdb90cf72
add eax, 0xb0eae910
and eax, 0x70018771
imul eax, eax, 0xbec9e4a2
or eax, 0xcf01bb20
mov ecx, 0xad6eac60
xor edx, edx
div ecx
add eax, 0x2351e555
xor eax, 0x33eb8e9f
add eax, 0xa32deb70
imul eax, eax, 0x7732352
or eax, 0x59f89b6f
imul eax, eax, 0xff5d1b83
mov ecx, 0x95f2b1d9
xor edx, edx
div ecx
xor eax, 0x9b6b3c5d
xor eax, 0x70b03f8
xor eax, 0xc84020b7
add eax, 0x50b4c202
and eax, 0x914235e3
and eax, 0xe902693b
imul eax, eax, 0x48403ab2
xor eax, 0xb9180d07
add eax, 0xf161ce28
add eax, 0x4519cf00
and eax, 0xb13b1f65
sub eax, 0xf2411bc4
or eax, 0x50b04843
or eax, 0x600b8082
add eax, 0x6af21546
sub eax, 0xea00884a
mov ecx, 0x9f10c1be
xor edx, edx
div ecx
add eax, 0xf89c6333
and eax, 0x4c570ffa
xor eax, 0xc3849b02
mov ecx, 0x396b751d
xor edx, edx
div ecx
xor eax, 0x1ebc1794
imul eax, eax, 0xcea4938f
xor eax, 0xdfcc2905
xor eax, 0x33b01256
sub eax, 0xa9361676
or eax, 0xb1102529
xor eax, 0x669250a5
xor eax, 0x48e73df5
or eax, 0xfbb94c2a
or eax, 0x67f922b0
xor eax, 0xf8401d05
and eax, 0x1107276b
imul eax, eax, 0xbdd10f46
sub eax, 0x46661ff0
and eax, 0x681718ac
sub eax, 0xf69a6e55
add eax, 0x955bb5ee
add eax, 0xefb4c63e
mov ecx, 0x99f4aecf
xor edx, edx
div ecx
mov ecx, 0x6dc1b818
xor edx, edx
div ecx
or eax, 0x4fd0f1ba
add eax, 0x1e2530f9
sub eax, 0xf5973080
mov byte [0x100dc630], 1
cmp eax, 0x3aa30dc7
je 0x10005272
jmp 0x10004efa
mov eax, dword [ebp - 0xc]
mov dword [eax], 0x28
mov eax, dword [0x100d9580]
sub eax, dword [0x100d9584]
mov ecx, 0x708ebd80
xor edx, edx
div ecx
add eax, 0x46e05946
xor eax, 0xfe5deb36
imul eax, eax, 0xf39117a3
or eax, 0xcdbc39f9
and eax, 0x9ea9d40f
add eax, 0x236d990a
and eax, 0x54172553
add eax, 0x1c5d29e
sub eax, 0x5188d4ca
imul eax, eax, 0xe6c77473
xor eax, 0xbcffe310
mov ecx, 0x590a3580
xor edx, edx
div ecx
and eax, 0xee59c489
sub eax, 0xa45d060c
imul eax, eax, 0x62147550
add eax, 0x3ffa126
sub eax, 0x2512a21e
add eax, 0x568610ab
imul eax, eax, 0xe6ec915f
mov ecx, 0xa9f6108
xor edx, edx
div ecx
sub eax, 0x7693f233
or eax, 0xc6844d6
sub eax, 0xb27b5218
add eax, 0x4130d0c9
add eax, 0xe7ca61e2
imul eax, eax, 0x34871cbb
and eax, 0x644e1699
xor eax, 0x5de76b03
and eax, 0xebd89133
mov ecx, 0x58049864
xor edx, edx
div ecx
sub eax, 0x9953dff8
mov ecx, 0x20b2d5b1
xor edx, edx
div ecx
or eax, 0x74454b72
and eax, 0x83d5db57
imul eax, eax, 0x813fabc3
imul eax, eax, 0x9f07e3c6
sub eax, 0x6b15b7e3
add eax, 0xd1f84954
xor eax, 0x73022c6
mov ecx, 0x9b782002
xor edx, edx
div ecx
and eax, 0x6e15a06a
sub eax, 0xdb2cd944
add eax, 0xa085b996
xor eax, 0x4365d8ca
or eax, 0x6bd1419
sub eax, 0x470c4ee9
or eax, 0xa5e74af9
sub eax, 0x1cbec75c
xor eax, 0x53170e64
add eax, 0x47baecfb
mov ecx, 0xd1546e8d
xor edx, edx
div ecx
imul eax, eax, 0x5a8e7343
add eax, 0x67298421
mov ecx, 0x1a36d321
xor edx, edx
div ecx
imul eax, eax, 0x39cd31dc
mov ecx, 0x179c4116
xor edx, edx
div ecx
or eax, 0x220aa2b2
mov ecx, 0xb295c4b
xor edx, edx
div ecx
and eax, 0x14e601f3
mov ecx, 0xefa829ef
xor edx, edx
div ecx
imul eax, eax, 0x7503753
or eax, 0xf57ff45b
mov ecx, 0x9c78d3e0
xor edx, edx
div ecx
sub eax, 0x8b0a2f68
and eax, 0x9fd4b0d2
mov ecx, 0x8aac6430
xor edx, edx
div ecx
imul eax, eax, 0x82a8b84d
or eax, 0x20ec1f16
imul eax, eax, 0x899da7e8
sub eax, 0xa5410189
add eax, 0x55747e06
cmp eax, 0xfa5d93f2
jae 0x1000527e
mov eax, dword [0x100d9588]
add eax, dword [0x100d958c]
and eax, 0xa9968085
or eax, 0xc38f0429
sub eax, 0x6a08597
or eax, 0x1380815c
sub eax, 0x2f9c702
xor eax, 0x7480e278
xor eax, 0xb6a4fb72
or eax, 0x657ea9d0
imul eax, eax, 0x4c7c32c
or eax, 0xc673ed81
or eax, 0xe258afc5
imul eax, eax, 0x881a9289
or eax, 0x4f5f51ac
sub eax, 0x86e308e7
mov ecx, 0x612b59be
xor edx, edx
div ecx
and eax, 0xd46387ed
or eax, 0x76d1a186
or eax, 0x514f8662
and eax, 0x7ed64dc4
mov ecx, 0x6d95fee
xor edx, edx
div ecx
xor eax, 0x5ec10a53
or eax, 0xe9f820bb
add eax, 0x40dda9b4
mov ecx, 0x247194a0
xor edx, edx
div ecx
sub eax, 0x49cbceec
sub eax, 0xea62183f
and eax, 0x74beae08
or eax, 0x67d4974f
imul eax, eax, 0x3841ef6f
add eax, 0x243e7acf
xor eax, 0x8b74801f
sub eax, 0xd646e14b
add eax, 0x601b6127
add eax, 0x59075e1a
imul eax, eax, 0x7c04ab74
add eax, 0xa8208e57
sub eax, 0x7ac45b79
xor eax, 0xdd6e152c
imul eax, eax, 0x940e0281
and eax, 0xd83d32b3
imul eax, eax, 0xdb332fb1
xor eax, 0x7b767a4a
sub eax, 0x5f1147fe
mov ecx, 0x588a43b7
xor edx, edx
div ecx
mov ecx, 0x30949d10
xor edx, edx
div ecx
or eax, 0xccec5b6d
xor eax, 0xbc736247
and eax, 0xb821398b
sub eax, 0x7dde33ed
xor eax, 0x9dfc3ce2
and eax, 0x1e2b34b9
mov ecx, 0x880adcc0
xor edx, edx
div ecx
sub eax, 0x63c85144
mov ecx, 0xfa976e46
xor edx, edx
div ecx
add eax, 0x73e892a2
and eax, 0xa139669
and eax, 0x588fe060
xor eax, 0x26012001
mov ecx, 0x36e6a634
xor edx, edx
div ecx
and eax, 0x3aecb4c2
imul eax, eax, 0xe8095046
imul eax, eax, 0x965b4f00
add eax, 0x2e80cba
sub eax, 0x800d5a98
add eax, 0x70f9aa49
mov ecx, 0x9d7a43f8
xor edx, edx
div ecx
imul eax, eax, 0x1753a984
or eax, 0x4edd114
sub eax, 0x1615c234
imul eax, eax, 0x150cac6f
and eax, 0xaf1898a6
or eax, 0x3ab77cd6
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x10], ecx
cmp eax, 0xb7c3ad88
je 0x100050b8
mov eax, dword [ebp - 0x10]
add esp, 0x10
pop ebp
ret
mov byte [0x100dc630], 1
jmp 0x10004d37
jmp 0x100050b8