Function at 0x10005470
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
sub esp, 0x1c
mov dword [ebp - 8], ecx
mov eax, dword [str.O]
xor edx, edx
div dword [0x100c35c4]
xor eax, 0x4d1d2fdf
imul eax, eax, 0xb3d23536
or eax, 0xd979ab58
sub eax, 0x12ce3ce6
xor eax, 0x63970a16
imul eax, eax, 0x111e48ff
add eax, 0xdfd6bb7a
or eax, 0xa661b07e
and eax, 0x5ff8219c
or eax, 0x2278fe54
sub eax, 0xde4ad5c3
imul eax, eax, 0x5930cb2a
and eax, 0xc8dba7b0
add eax, 0x2d548006
or eax, 0x1bf57136
or eax, 0x9b875de4
imul eax, eax, 0xb85decc2
xor eax, 0xa66f88bf
mov ecx, 0x2f3d105f
xor edx, edx
div ecx
xor eax, 0xdb1c71cc
or eax, 0x3e5074da
or eax, 0xeb7c1d4e
mov ecx, 0xc05b531
xor edx, edx
div ecx
mov ecx, 0x92b5ad18
xor edx, edx
div ecx
mov ecx, 0xef3893a3
xor edx, edx
div ecx
add eax, 0x1d8890c8
and eax, 0x4d3230e8
or eax, 0x5f397207
or eax, 0xcbf04bff
mov ecx, 0xa54b43f1
xor edx, edx
div ecx
sub eax, 0x6e74c0d2
or eax, 0x5722c50f
or eax, 0xa7e7f632
mov ecx, 0x611160bf
xor edx, edx
div ecx
sub eax, 0xaddbf1bb
xor eax, 0x2f9e2419
xor eax, 0xedee15d4
add eax, 0xff9ca14a
imul eax, eax, 0x10523a8d
or eax, 0x490ab5
and eax, 0x4192390e
xor eax, 0x35793150
xor eax, 0xbca48569
mov ecx, 0xa107c3d8
xor edx, edx
div ecx
and eax, 0xab0bd99c
or eax, 0x3d32889
or eax, 0x9aa1a736
or eax, 0xf8cb7e79
and eax, 0x6fc3fad2
add eax, 0xd0df1b1c
or eax, 0x4145e90e
xor eax, 0xd823384
or eax, 0x8021aa33
mov ecx, 0x2eb87e4c
xor edx, edx
div ecx
or eax, 0xf5d3ecb6
or eax, 0x85ef1c89
add eax, 0x65090bed
add eax, 0xe15b4976
imul eax, eax, 0x11a78e7f
mov ecx, 0xe82686ce
xor edx, edx
div ecx
add eax, 0x4b7a0bab
or eax, 0x46208b7c
and eax, 0x82ed7e08
or eax, 0x2ec5bbd2
add eax, 0xb82b30d7
xor eax, 0x6e011112
and eax, 0x3d3bc0e3
xor eax, 0xa916b3aa
and eax, 0xbd4e5f0e
and eax, 0xc252ce9d
add eax, 0x97d579d7
or eax, 0x4e4e46d9
cmp eax, 0x6529f00e
ja 0x10005d77
mov edx, dword [ebp - 8]
xor eax, eax
mov dword [ebp - 0x10], eax
push eax
mov eax, esp
mov dword [ebp - 0x18], eax
push eax
mov ecx, esp
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x14], ecx
mov dword [eax], ecx
call fcn.1005f510
mov ecx, dword [ebp - 0x14]
mov dword [ecx], 0
lea eax, [0x10000000]
mov dword [ecx + 4], eax
lea eax, [0x100c2158]
add eax, 4
mov dword [ecx + 8], eax
lea eax, [0x100c215c]
mov dword [ecx + 0xc], eax
add ecx, 0x10
call fcn.1005f530
mov ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, 0
setl cl
mov byte [ebp - 9], cl
cmp eax, 0x42c6f237
ja 0x10005624
mov al, byte [ebp - 9]
test al, 1
jne 0x1000569b
jmp 0x100056a7
mov byte [0x100c6058], 1
jmp 0x10005a1a
mov eax, dword [0x100c35d0]
add eax, dword [0x100c35d4]
or eax, 0xc6beffbd
sub eax, 0xe331ea87
mov ecx, 0x38084c22
xor edx, edx
div ecx
or eax, 0x44adbe73
add eax, 0x21e9388a
imul eax, eax, 0x3e95273c
sub eax, 0xe4e364db
or eax, 0xf034a4dd
and eax, 0x7e4e0b27
mov ecx, 0xa9f9330c
xor edx, edx
div ecx
and eax, 0xa47e107f
and eax, 0xc945b617
mov ecx, 0xc3b5a3b2
xor edx, edx
div ecx
xor eax, 0x38e08d04
sub eax, 0xba32a4dd
sub eax, 0x6a1c0217
xor eax, 0x60527e93
mov ecx, 0xef4e5d0c
xor edx, edx
div ecx
imul eax, eax, 0x2c23ba7f
imul eax, eax, 0x9046ce53
mov ecx, 0x205c9317
xor edx, edx
div ecx
mov ecx, 0x45d94d58
xor edx, edx
div ecx
xor eax, 0xa3f5528
imul eax, eax, 0xb7338034
sub eax, 0xad1cc89b
xor eax, 0x859d884e
and eax, 0xdfdfc05f
and eax, 0xa7ed94ef
or eax, 0xba9930f9
add eax, 0x647abbe3
or eax, 0xba406cde
add eax, 0x7b99a558
or eax, 0x55bfd7f5
sub eax, 0xa15d72ac
sub eax, 0xf7304c42
mov ecx, 0xc07e1acd
xor edx, edx
div ecx
mov ecx, 0x5ff35d29
xor edx, edx
div ecx
add eax, 0x3098470b
add eax, 0x9abb8dd0
add eax, 0x503ae662
xor eax, 0x1051f7d8
add eax, 0x4eecd801
xor eax, 0x6ae65cf1
add eax, 0xe7545006
mov ecx, 0x99a9c2ff
xor edx, edx
div ecx
or eax, 0xde1d57c1
add eax, 0x699b1e4c
xor eax, 0x47b1492
add eax, 0x2135c1f2
mov ecx, 0xffa442ef
xor edx, edx
div ecx
mov ecx, 0xff3410eb
xor edx, edx
div ecx
imul eax, eax, 0x3a7f1299
or eax, 0xc3021a17
and eax, 0x73b376b9
sub eax, 0xbe29e9d6
xor eax, 0x41aedb00
and eax, 0x3817a400
xor eax, 0x588b9fb7
sub eax, 0xe294c9b8
sub eax, 0xb2f9141a
imul eax, eax, 0x40015293
xor eax, 0x620c529d
sub eax, 0xf9e6d66b
mov ecx, 0xa6205e58
xor edx, edx
div ecx
mov ecx, 0x69f8f446
xor edx, edx
div ecx
sub eax, 0x1895ba5a
imul eax, eax, 0x78895c5c
and eax, 0xe98f6eec
add eax, 0x5be85178
mov ecx, 0xc3465e97
xor edx, edx
div ecx
and eax, 0xb16ce5c5
or eax, 0x2e795f63
cmp eax, 0xfaa9a664
ja 0x10005dc2
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x100c35d8]
sub eax, dword [0x100c35dc]
mov esi, 0x8780d103
xor edx, edx
div esi
mov esi, 0xfd188088
xor edx, edx
div esi
xor eax, 0x5d4f68ef
imul eax, eax, 0xf953bf9d
xor eax, 0xa9e0ce7d
sub eax, 0x30a8c482
sub eax, 0xccd1dde7
mov esi, 0xe2b04044
xor edx, edx
div esi
and eax, 0xd0d9c086
or eax, 0xe460e299
sub eax, 0xdb3a0999
imul eax, eax, 0x364e189b
imul eax, eax, 0x835ada6b
imul eax, eax, 0x723a230a
add eax, 0x2ab8735b
sub eax, 0x6eb442e2
and eax, 0xc0439d29
mov esi, 0x45b5b514
xor edx, edx
div esi
sub eax, 0xf52b026e
and eax, 0x8ab3341
or eax, 0xf7f44519
add eax, 0xea6e2da7
sub eax, 0xc90a778c
add eax, 0x44216054
and eax, 0x571c3d06
imul eax, eax, 0xedb1f07b
or eax, 0x98c7f757
add eax, 0xfc8138ae
add eax, 0xb0c7bf11
mov esi, 0x56160f94
xor edx, edx
div esi
and eax, 0x10ea7d2
xor eax, 0x6da4eccd
or eax, 0x1a13ab2d
or eax, 0xc4b6ab9
mov esi, 0xd064b121
xor edx, edx
div esi
xor eax, 0x4987ee3
xor eax, 0x1f7952ed
add eax, 0x792bffbe
or eax, 0x208cc342
add eax, 0xa3dde454
sub eax, 0xccffbd2a
or eax, 0x176a034d
add eax, 0x8002bde6
and eax, 0xb71bee25
imul eax, eax, 0x4265c041
imul eax, eax, 0xcd0deb54
sub eax, 0xf23a8a3b
xor eax, 0x49e62617
add eax, 0x885d6c38
imul eax, eax, 0x79938515
xor eax, 0x16a1a194
xor eax, 0xa7a331ad
sub eax, 0x9f66e8c1
mov esi, 0x6badc1e4
xor edx, edx
div esi
xor eax, 0xef5cf5e7
and eax, 0xfa526b61
sub eax, 0x7729ebd0
imul eax, eax, 0xdc81b699
imul eax, eax, 0x9cbc1be8
or eax, 0x8cf0942f
xor eax, 0xec641323
sub eax, 0xd37d76a7
or eax, 0xd43d755b
xor eax, 0xf95bdc5a
sub eax, 0xa3a6e009
xor eax, 0x297ee77f
sub eax, 0x985dd7e4
or eax, 0x9eafbbea
sub eax, 0xfbd792a5
mov esi, 0x60e89f85
xor edx, edx
div esi
xor eax, 0xbf4a43b6
or eax, 0x3d1f79bf
mov dword [ecx], 0x28
cmp eax, 0xc9cd8117
jae 0x10005864
jmp 0x10005a1a
mov eax, dword [0x100c35e0]
xor eax, dword [0x100c35e4]
or eax, 0xe30ebd81
mov ecx, 0x38af462a
xor edx, edx
div ecx
imul eax, eax, 0xc8880d0a
and eax, 0x1189e5c3
and eax, 0x7dfa7b68
xor eax, 0x85139fff
imul eax, eax, 0x53bd7a18
sub eax, 0x531959ff
imul eax, eax, 0xdf807227
sub eax, 0x3ec89b2c
add eax, 0xec11399
imul eax, eax, 0xf9234759
xor eax, 0xeff4f6ae
add eax, 0xca9f61a5
xor eax, 0x7a9e89dc
xor eax, 0x1252403
and eax, 0xc34f9a02
mov ecx, 0x832cde6c
xor edx, edx
div ecx
add eax, 0x711e9687
xor eax, 0x1d8a0700
and eax, 0x7173edd7
or eax, 0xc03e074b
xor eax, 0x3d5af4c9
and eax, 0xef1b0404
imul eax, eax, 0x7bb50fbd
add eax, 0x8109fa5d
mov ecx, 0x5d6c5523
xor edx, edx
div ecx
imul eax, eax, 0x465a68db
and eax, 0x984d2cc6
add eax, 0xd7933733
or eax, 0x17c4c5ee
add eax, 0x932720ac
add eax, 0xe086bfe8
add eax, 0xdfef18e3
sub eax, 0xf752d0fb
xor eax, 0x69a15813
and eax, 0x77ba2add
xor eax, 0x28a557c4
sub eax, 0x738cb565
or eax, 0xd395afb2
imul eax, eax, 0xcd1896f3
imul eax, eax, 0xd2889dc9
add eax, 0xaaae1f4
xor eax, 0x20cea402
or eax, 0xe9520a6
or eax, 0x1b570097
imul eax, eax, 0x3597502a
imul eax, eax, 0xd1100eab
mov ecx, 0xadb76c67
xor edx, edx
div ecx
imul eax, eax, 0xac32e455
mov ecx, 0x789f69d
xor edx, edx
div ecx
mov ecx, 0x509b6492
xor edx, edx
div ecx
add eax, 0x3314d92
sub eax, 0x9f467fc8
or eax, 0x7f3ef0db
mov ecx, 0xae85be01
xor edx, edx
div ecx
sub eax, 0x8ff8c65b
imul eax, eax, 0x88c55a57
mov ecx, 0x47c531db
xor edx, edx
div ecx
and eax, 0xf94571a8
add eax, 0x5f7af33b
or eax, 0x1d272683
sub eax, 0xc8913aab
imul eax, eax, 0xd920fe9
xor eax, 0xff178ab2
xor eax, 0xb76a3c49
and eax, 0x49cb27c4
add eax, 0x709b7684
imul eax, eax, 0x4c610876
sub eax, 0xc23b144
xor eax, 0xbf1f2435
and eax, 0xb309f13e
cmp eax, 0xbad3e65e
je 0x10005dd0
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x100c35e8]
xor eax, dword [0x100c35ec]
sub eax, 0x1b9da42f
or eax, 0xca0ca05d
xor eax, 0x933a6e62
mov esi, 0x5c597d7e
xor edx, edx
div esi
or eax, 0xec1dd896
xor eax, 0x79cf60da
add eax, 0x8300d496
and eax, 0xff34957d
add eax, 0x65fa843b
sub eax, 0x3be5001a
imul eax, eax, 0xf5b5ae9d
sub eax, 0xb264d5f7
xor eax, 0xa247268c
xor eax, 0x4c300b63
and eax, 0x1a81b2da
and eax, 0x21e7025e
add eax, 0x89cdf60
imul eax, eax, 0x33b8d879
sub eax, 0x48061b70
add eax, 0x39475fa9
and eax, 0xe17284bc
mov esi, 0x90cc63a7
xor edx, edx
div esi
xor eax, 0xd7f00c93
imul eax, eax, 0xe77096d0
xor eax, 0xb5a0f2fd
add eax, 0xeecf6e1b
sub eax, 0x5e3a63ca
imul eax, eax, 0x4e5bc6d5
add eax, 0xd6682906
or eax, 0x1caccfc7
or eax, 0x1aa58b58
or eax, 0xcf259e0a
or eax, 0x1c707a27
sub eax, 0xcb647e8b
add eax, 0x9813e328
mov esi, 0xe2bd466f
xor edx, edx
div esi
imul eax, eax, 0xf37c7782
mov esi, 0x8b9b9626
xor edx, edx
div esi
or eax, 0x62c2113b
xor eax, 0xd6f33abb
add eax, 0x52b97a53
or eax, 0x680dfceb
sub eax, 0x8db8535
and eax, 0x4c744193
and eax, 0x6db31dd9
imul eax, eax, 0x2eb4173f
add eax, 0x40f4abf8
and eax, 0x93775d1
add eax, 0x716ac235
mov esi, 0x27e2f173
xor edx, edx
div esi
add eax, 0xdecb5399
imul eax, eax, 0x443cfe15
xor eax, 0x66b3bf9
mov esi, 0xba0864d1
xor edx, edx
div esi
or eax, 0x79954810
xor eax, 0x476ac40a
sub eax, 0xceccde00
add eax, 0x61e831a2
add eax, 0x9fbeb031
xor eax, 0xd73afa53
imul eax, eax, 0x613a487e
or eax, 0xfe0e46cc
add eax, 0x75eb8c29
imul eax, eax, 0x71257fc2
and eax, 0xa50b89d5
imul eax, eax, 0xdb81d0ea
or eax, 0x78dd4eec
or eax, 0x88d4a1d2
and eax, 0x15e46d57
add eax, 0xfc8a179c
add eax, 0xcabf3b80
xor eax, 0x6910bb06
mov ecx, dword [ecx]
mov dword [ebp - 0x1c], ecx
cmp eax, 0xa5839c05
jbe 0x10005dd0
mov eax, dword [ebp - 0x1c]
lea esp, [ebp - 4]
pop esi
pop ebp
ret
mov edx, dword [ebp - 8]
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x20], ecx
mov dword [eax], ecx
call fcn.1005f510
mov ecx, dword [ebp - 0x20]
mov dword [ecx], 0
lea eax, [0x10000000]
mov dword [ecx + 4], eax
lea eax, [0x100c2158]
add eax, 4
mov dword [ecx + 8], eax
lea eax, [0x100c215c]
mov dword [ecx + 0xc], eax
add ecx, 0x10
call fcn.1005f530
jmp 0x10005624
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x28
jmp 0x10005864
jmp 0x10005bc6