Function at 0x1005f470
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 [0x100c1e58]
add eax, dword [0x100c1e5c]
mov ecx, 0xed56b05b
xor edx, edx
div ecx
or eax, 0x6d7385e5
and eax, 0xdca2ded7
or eax, 0xeae011
xor eax, 0xdd580ceb
sub eax, 0xd95f0462
sub eax, 0xbed68cbc
xor eax, 0x370b3ee2
xor eax, 0xd712b4cd
imul eax, eax, 0x167d5ff2
mov ecx, 0xcdfde294
xor edx, edx
div ecx
mov ecx, 0x386110ee
xor edx, edx
div ecx
and eax, 0x4b1c8eb1
imul eax, eax, 0x2fba4368
or eax, 0x2b395d3c
and eax, 0x145da09d
xor eax, 0xb90e9de5
add eax, 0xce152968
or eax, 0x89bb2259
and eax, 0xe0b83615
xor eax, 0x234f18f6
xor eax, 0xbc9db303
xor eax, 0xced4f29d
xor eax, 0xbf0b490e
imul eax, eax, 0x18830c
imul eax, eax, 0x99d1c465
mov ecx, 0x4f4647e8
xor edx, edx
div ecx
sub eax, 0x45f3cc3d
add eax, 0xcf2acb0
xor eax, 0x5ff051b0
xor eax, 0xbf9d3045
xor eax, 0x89eb7e89
imul eax, eax, 0x1f269b7b
mov ecx, 0xb993176e
xor edx, edx
div ecx
and eax, 0xf6715e30
or eax, 0x847aa710
imul eax, eax, 0x19657cbb
mov ecx, 0x41bb079f
xor edx, edx
div ecx
add eax, 0xf4e97bd4
or eax, 0xf26f3309
or eax, 0xb97a31c3
add eax, 0x77273854
sub eax, 0xc29f8678
sub eax, 0x4f80341b
and eax, 0xa32217c
mov ecx, 0x5fbee5a2
xor edx, edx
div ecx
or eax, 0x2a2aee23
add eax, 0xb942cfb1
mov ecx, 0x134017af
xor edx, edx
div ecx
or eax, 0x83fddaaf
or eax, 0x7391cab2
add eax, 0x3bfa600b
and eax, 0x2a02abdc
imul eax, eax, 0xe155e3c4
mov ecx, 0x6a66b7c5
xor edx, edx
div ecx
imul eax, eax, 0x8ce1e241
add eax, 0x2936db61
or eax, 0xecfe6004
and eax, 0xeeb64bef
sub eax, 0xb48e3ad9
xor eax, 0x4842002
imul eax, eax, 0x1080a9b5
mov ecx, 0x271acda4
xor edx, edx
div ecx
and eax, 0xfc61a3e8
and eax, 0x86bbe962
and eax, 0xac4be9b7
sub eax, 0x6c1da6ed
xor eax, 0x18598a0a
or eax, 0x1aeb4a98
or eax, 0xa7b20cf3
or eax, 0xb3336293
add eax, 0xd0bf57db
cmp eax, 0xf7331a0e
je 0x10060100
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, 0x3c5840b5
push eax
mov ecx, esp
mov dword [ebp - 0x1c], ecx
push eax
mov edx, esp
mov dword [ecx], edi
mov dword [edx], esi
mov edx, dword [edx]
mov dword [ebp - 0x18], edx
cmp dword [ecx], 0
setl cl
mov byte [ebp - 0x11], cl
cmp eax, 0x1668cdc3
jb 0x10060100
mov al, byte [ebp - 0x11]
test al, 1
jne 0x1005f9eb
jmp 0x1005f671
mov eax, dword [0x100c1e68]
or eax, dword [0x100c1e6c]
or eax, 0x6897364a
imul eax, eax, 0x17534449
or eax, 0xf8451864
mov ecx, 0x1e466b89
xor edx, edx
div ecx
sub eax, 0xf80d5edb
add eax, 0xf186f30b
or eax, 0x25a9e3d3
imul eax, eax, 0xe3ef84e0
or eax, 0xeb3e60fb
mov ecx, 0xa0c84672
xor edx, edx
div ecx
and eax, 0x8794920
add eax, 0x41cb6b69
or eax, 0xdedecc66
sub eax, 0xd81dba41
sub eax, 0x22b4e793
sub eax, 0xfa8623a8
mov ecx, 0xaf2565df
xor edx, edx
div ecx
imul eax, eax, 0x339b0495
xor eax, 0xc87ccf21
xor eax, 0x74010525
sub eax, 0xaf653470
or eax, 0xcf3fe8bb
or eax, 0x3ba005b0
or eax, 0xda80eb7c
and eax, 0x37e21d56
mov ecx, 0xee8c0466
xor edx, edx
div ecx
or eax, 0x5ccdc031
or eax, 0xf8fa7f8
or eax, 0x44586009
add eax, 0x82af9dd9
sub eax, 0x63ebe4b2
and eax, 0x16845a1c
sub eax, 0xbc52b445
or eax, 0xa3895205
imul eax, eax, 0x4abc7851
and eax, 0xafc2fd1a
xor eax, 0x6cda3b78
mov ecx, 0xd90aac26
xor edx, edx
div ecx
xor eax, 0x148f2d58
xor eax, 0xd38474b0
mov ecx, 0x29966c78
xor edx, edx
div ecx
or eax, 0x43d3b342
and eax, 0x9421491f
mov ecx, 0x6c52705c
xor edx, edx
div ecx
mov ecx, 0x6777aac6
xor edx, edx
div ecx
sub eax, 0xb3fec3ea
xor eax, 0x4b9643da
add eax, 0x9703ceb8
xor eax, 0xbb940d60
add eax, 0xf553f95
sub eax, 0x770d9e9a
add eax, 0xf8136c57
mov ecx, 0x728db7ec
xor edx, edx
div ecx
xor eax, 0x74776d0a
and eax, 0xf9e9b317
and eax, 0xcc60e58e
or eax, 0x6090b608
sub eax, 0xc30da5ae
imul eax, eax, 0xd9a19e1f
xor eax, 0xae98556
sub eax, 0x65a94018
or eax, 0x1ffa23b8
add eax, 0xf4c72b67
sub eax, 0xfcfef41f
and eax, 0x8d1f14cd
or eax, 0xe8249ed6
imul eax, eax, 0x67a01275
xor eax, 0x87242d9e
imul eax, eax, 0x231ba97c
or eax, 0x26e77439
and eax, 0x231853ab
add eax, 0x8d803de
cmp eax, 0xaeca0120
ja 0x10060115
mov ecx, dword [ebp - 0x1c]
mov eax, dword [0x100c1e70]
xor edx, edx
div dword [0x100c1e74]
or eax, 0xced0f279
imul eax, eax, 0xd62b1d6
imul eax, eax, 0xd599f57c
sub eax, 0x9252086d
xor eax, 0x51acc54d
xor eax, 0x7f1798bd
and eax, 0x7a36cb60
and eax, 0xe1ecc14a
add eax, 0x13854d06
or eax, 0x5717e6e2
or eax, 0xc83b426f
imul eax, eax, 0x71c37558
and eax, 0xa1444a8d
sub eax, 0xe1f3459a
mov esi, 0x1667ac8a
xor edx, edx
div esi
add eax, 0xe04bab17
and eax, 0xe68e52b6
imul eax, eax, 0x20612429
sub eax, 0x2474383f
add eax, 0xa23ebac7
add eax, 0x85613d10
xor eax, 0x632344e9
mov esi, 0x84a9bbfb
xor edx, edx
div esi
or eax, 0x1bdf997e
add eax, 0xe179db95
xor eax, 0x4724346f
add eax, 0x547e3500
xor eax, 0xf0f7ba9b
or eax, 0xb6438847
imul eax, eax, 0xe83136be
mov esi, 0x59dd6965
xor edx, edx
div esi
mov esi, 0x6b4478ae
xor edx, edx
div esi
add eax, 0x5f4e5672
and eax, 0x1ebebeb4
imul eax, eax, 0xf8f3f47
or eax, 0xcd7be9ab
mov esi, 0x506f67dd
xor edx, edx
div esi
or eax, 0x6d9e60d5
add eax, 0x5f041b32
imul eax, eax, 0x7a01c0ef
add eax, 0x56387302
imul eax, eax, 0xc9c09cfb
sub eax, 0x21603ebf
imul eax, eax, 0xacc5876b
xor eax, 0x90e694d5
and eax, 0x4fb40e8a
or eax, 0x18ddd892
sub eax, 0x64a6be14
add eax, 0x5398cf96
mov esi, 0x41f98881
xor edx, edx
div esi
mov esi, 0x751f99e4
xor edx, edx
div esi
and eax, 0x6b23b66a
or eax, 0xcb45d604
imul eax, eax, 0x6ea9baa4
mov esi, 0xd0446bf2
xor edx, edx
div esi
sub eax, 0x5c282d14
sub eax, 0x96d42603
or eax, 0x6e1d77c8
add eax, 0xf408de20
or eax, 0x7b86b8ba
or eax, 0x86a3ce3c
and eax, 0xeb75aa96
and eax, 0x4fa6220d
sub eax, 0x7192a944
sub eax, 0x986eb013
sub eax, 0x58ec003d
imul eax, eax, 0x29cc69bb
imul eax, eax, 0x42d6c2bb
mov esi, 0xece31955
xor edx, edx
div esi
mov edx, dword [ebp - 0x18]
sub eax, 0x31289a8a
xor eax, 0x7bae8679
add eax, 0x67fcfc5c
mov ecx, dword [ecx]
cmp ecx, dword [edx + 4]
setge cl
mov byte [ebp - 0x1d], cl
cmp eax, 0x1e5bf95a
ja 0x1005f81a
mov al, byte [ebp - 0x1d]
test al, 1
jne 0x1005f9eb
jmp 0x1005fd81
mov eax, dword [0x100c1e78]
and eax, dword [0x100c1e7c]
xor eax, 0x6bf7eb86
and eax, 0x41d735b
imul eax, eax, 0x81ebb2fd
imul eax, eax, 0x6203bd10
add eax, 0xfb4730dc
imul eax, eax, 0xbdd9d29e
sub eax, 0x254514bb
mov ecx, 0xb817bef5
xor edx, edx
div ecx
or eax, 0xf937c436
sub eax, 0x6fe1ea29
or eax, 0xe7d5a42e
xor eax, 0x4fe16d71
mov ecx, 0x7aabf441
xor edx, edx
div ecx
mov ecx, 0xde6aff03
xor edx, edx
div ecx
xor eax, 0xbfc86314
mov ecx, 0x39f295c2
xor edx, edx
div ecx
or eax, 0x711ebedd
and eax, 0x7add0be1
imul eax, eax, 0x1806def0
xor eax, 0x28e89c78
xor eax, 0x47d40935
mov ecx, 0x8f7a6246
xor edx, edx
div ecx
imul eax, eax, 0xdf0562ed
mov ecx, 0x66eb352c
xor edx, edx
div ecx
xor eax, 0xcc12f689
imul eax, eax, 0xe6398a43
mov ecx, 0x7666e671
xor edx, edx
div ecx
xor eax, 0x9afc8156
mov ecx, 0xc3b214fb
xor edx, edx
div ecx
imul eax, eax, 0x524bea8d
add eax, 0x13e2f223
imul eax, eax, 0x9f660b1a
imul eax, eax, 0xe9a780b5
imul eax, eax, 0xb1ae419
add eax, 0xb481464e
xor eax, 0x6a857e04
and eax, 0xba0d57e7
or eax, 0xed58ea2d
mov ecx, 0xddec3f2a
xor edx, edx
div ecx
sub eax, 0x24779868
sub eax, 0xf660e7eb
imul eax, eax, 0xf19eafae
xor eax, 0x321c5c0b
imul eax, eax, 0x983e4261
add eax, 0xda0d1c01
add eax, 0x3d5c01ad
mov ecx, 0x5375e13c
xor edx, edx
div ecx
and eax, 0xdc0f90df
imul eax, eax, 0x1f77ebc7
and eax, 0x806f5457
add eax, 0x39648db9
or eax, 0x3054cc87
mov ecx, 0x960d0d18
xor edx, edx
div ecx
and eax, 0xeb5ba04c
mov ecx, 0xce85bcd
xor edx, edx
div ecx
and eax, 0x1a743ccb
mov ecx, 0xe337bbf0
xor edx, edx
div ecx
and eax, 0x242c7c4a
imul eax, eax, 0xa5e7aa1c
add eax, 0xf6d6f136
add eax, 0x8baa0bb5
imul eax, eax, 0x700896b7
xor eax, 0x24f5f852
add eax, 0xa55c601c
xor eax, 0xfe21c558
imul eax, eax, 0xa2534340
add eax, 0xb2fe67fb
or eax, 0x98f55ba9
add eax, 0xa99be65b
and eax, 0x961b4199
mov ecx, 0x11d78fc5
xor edx, edx
div ecx
xor eax, 0x32dcb7bd
cmp eax, 0xb54a43ed
je 0x1006011a
mov eax, dword [0x100c1e80]
xor edx, edx
div dword [0x100c1e84]
mov ecx, 0xfe84c492
xor edx, edx
div ecx
sub eax, 0xad56019
xor eax, 0xe490a78e
xor eax, 0x376347bf
xor eax, 0xa11fe832
mov ecx, 0x4601caf6
xor edx, edx
div ecx
sub eax, 0x142f33f1
mov ecx, 0x2d0d728c
xor edx, edx
div ecx
imul eax, eax, 0x979087d7
mov ecx, 0x9145cc86
xor edx, edx
div ecx
xor eax, 0xcf47857d
or eax, 0xa039aae6
imul eax, eax, 0x4394603d
mov ecx, 0xd95b867f
xor edx, edx
div ecx
or eax, 0xc323f6e4
xor eax, 0xa6d0acf3
imul eax, eax, 0xe8ee287e
or eax, 0xdcc52923
or eax, 0x5ba73c96
mov ecx, 0x8dd9988a
xor edx, edx
div ecx
imul eax, eax, 0xaf1289e
or eax, 0xb01e19a8
mov ecx, 0xa64b3ef8
xor edx, edx
div ecx
add eax, 0x74ecda9d
add eax, 0xa6bbe0b5
mov ecx, 0xaa568efd
xor edx, edx
div ecx
mov ecx, 0x8f4205e5
xor edx, edx
div ecx
xor eax, 0x6e384daf
or eax, 0xdd9df975
xor eax, 0x7ce46038
or eax, 0x26951523
mov ecx, 0xe581d66d
xor edx, edx
div ecx
xor eax, 0x1db1b6e4
or eax, 0x9818d1a0
mov ecx, 0x65acaac7
xor edx, edx
div ecx
sub eax, 0xa6d7bbb5
add eax, 0xe00b8efe
or eax, 0xe92b7fb0
xor eax, 0xe2e9756
imul eax, eax, 0xba08d6e6
imul eax, eax, 0x1618a67d
add eax, 0x7ab6e2c6
add eax, 0x8d056c50
sub eax, 0xd1ab49fd
and eax, 0x56e5cbba
add eax, 0x166a6774
xor eax, 0xb02e19b9
and eax, 0x155a1cf4
or eax, 0x1279f9cf
mov ecx, 0x5c3d8232
xor edx, edx
div ecx
add eax, 0x5bd7e9f2
or eax, 0xc677e533
and eax, 0xab28c16
sub eax, 0xe5eb7626
and eax, 0x626d4b31
add eax, 0xee974790
and eax, 0x851dc233
and eax, 0xc0ef211c
imul eax, eax, 0x85bf82f3
sub eax, 0x17ffab16
add eax, 0x5a6c1986
and eax, 0xbdbf03a4
or eax, 0x956ccf40
add eax, 0x3faa7b37
sub eax, 0x127539ee
xor eax, 0x4069ba53
add eax, 0x3c8418e1
and eax, 0x7ad72285
mov ecx, 0x9d58cf33
xor edx, edx
div ecx
or eax, 0x3111b96f
xor eax, 0xb6ff368e
sub eax, 0x802fd7d0
mov dword [ebp - 0x24], eax
sub esp, 4
mov dword [esp], recv
call fcn.10060520
mov eax, dword [ebp - 0x24]
cmp eax, 0x82b80810
jae 0x1006011a
mov eax, dword [0x100c1e88]
or eax, dword [0x100c1e8c]
mov ecx, 0x65b1435e
xor edx, edx
div ecx
imul eax, eax, 0xd65f336d
add eax, 0x90f61bc6
or eax, 0xb6c9f5d5
sub eax, 0xbe24cf7f
or eax, 0xb96602fd
xor eax, 0xd9df43b7
sub eax, 0x37a61392
add eax, 0x5b1a270b
imul eax, eax, 0x15bcc215
or eax, 0x8d6a04af
or eax, 0x413b0f2f
add eax, 0xfceb12d1
add eax, 0xb0d02489
imul eax, eax, 0xbc09f31
or eax, 0x8ea172a6
sub eax, 0xe15f00e1
imul eax, eax, 0x36c836f5
mov ecx, 0x4e1cdd70
xor edx, edx
div ecx
imul eax, eax, 0xc288b21
and eax, 0x7e8952a0
and eax, 0x26ba2020
and eax, 0x311eba11
and eax, 0xf2af98e0
add eax, 0x103a616f
xor eax, 0x768a27ec
and eax, 0x9f578ba4
xor eax, 0x5ff378b3
or eax, 0xb4e1b809
imul eax, eax, 0x756b9d4e
add eax, 0xd9de10e5
or eax, 0xb642e4b4
sub eax, 0xd8191822
sub eax, 0x972ab027
add eax, 0x90fefd0f
add eax, 0x20501074
mov ecx, 0x2e2dde1a
xor edx, edx
div ecx
or eax, 0xa5ae0c80
mov ecx, 0x1222183c
xor edx, edx
div ecx
xor eax, 0xe55bda0e
add eax, 0x85105b36
mov ecx, 0xa814e988
xor edx, edx
div ecx
and eax, 0x5fe62341
sub eax, 0xe3f856e9
add eax, 0xd5099741
and eax, 0x498830ef
mov ecx, 0x972ce556
xor edx, edx
div ecx
or eax, 0x3a561060
add eax, 0xea741d90
mov ecx, 0xdaee4580
xor edx, edx
div ecx
add eax, 0x82bc5bf5
or eax, 0x3a3ef7fc
add eax, 0x1610c9a7
add eax, 0x1c696430
xor eax, 0x42a2c60a
imul eax, eax, 0x87137698
xor eax, 0x396bdc80
add eax, 0x90747c23
imul eax, eax, 0x7a8ca875
add eax, 0xbebd7faf
sub eax, 0xd1e6c563
add eax, 0xf6b257ea
add eax, 0xce3fdbb9
sub eax, 0xa2d00e8e
and eax, 0xb9d200dc
and eax, 0x6db48ec1
sub eax, 0xe3da787c
imul eax, eax, 0xc4a7c836
mov ecx, 0x6b892bea
xor edx, edx
div ecx
imul eax, eax, 0xf7839530
mov ecx, 0xda619d67
xor edx, edx
div ecx
and eax, 0xff879ac1
cmp eax, 0x6b4707a
ja 0x1006012e
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x100c1e90]
add eax, dword [0x100c1e94]
add eax, 0xa61ae4a3
xor eax, 0x2dadfc82
xor eax, 0xee445b2d
mov esi, 0x39d75959
xor edx, edx
div esi
mov esi, 0x633b90f7
xor edx, edx
div esi
xor eax, 0x67c453c1
imul eax, eax, 0xf7472c2
imul eax, eax, 0x75b68af
mov esi, 0x7bb51d51
xor edx, edx
div esi
and eax, 0x72c77cc7
and eax, 0xaa378297
and eax, 0x54c7c31f
mov esi, 0x71d92242
xor edx, edx
div esi
imul eax, eax, 0x165f9100
add eax, 0xa8d2b067
add eax, 0xc060a7a3
and eax, 0x111bb4f5
add eax, 0x5d2c341d
imul eax, eax, 0x6f6af188
sub eax, 0x64dde9ef
xor eax, 0xda8096c5
or eax, 0xc01aa821
mov esi, 0xb1bc34a0
xor edx, edx
div esi
mov esi, 0xa4bb0023
xor edx, edx
div esi
and eax, 0xe319163d
mov esi, 0xa7c15963
xor edx, edx
div esi
or eax, 0x286b0ad4
imul eax, eax, 0xbc21cf8d
imul eax, eax, 0x971babee
add eax, 0xe5b16337
and eax, 0xcfab3b73
imul eax, eax, 0x4abfb03b
and eax, 0x3d7293f5
mov esi, 0x33ca2108
xor edx, edx
div esi
or eax, 0xdedec382
sub eax, 0x31d3d524
imul eax, eax, 0xb290f864
and eax, 0x6dffefa5
sub eax, 0xe7359aed
imul eax, eax, 0x1f4d8e18
imul eax, eax, 0xe6225119
imul eax, eax, 0xd589a0f6
and eax, 0x116f2a1e
xor eax, 0x6726e6a7
or eax, 0x2336fd94
add eax, 0x9ff7e14a
mov esi, 0xd8da4dcc
xor edx, edx
div esi
sub eax, 0xfac52bb8
add eax, 0xc44b47c
imul eax, eax, 0x2884cc1d
add eax, 0xa4b6efaf
add eax, 0x80977228
imul eax, eax, 0x9afa25a1
and eax, 0xc869e6d8
sub eax, 0x607fae64
or eax, 0xde32c139
xor eax, 0xc2ce936a
and eax, 0x648ee50b
add eax, 0xcd4230fc
add eax, 0xaa072fb4
imul eax, eax, 0x201dec27
imul eax, eax, 0x8ec9556f
sub eax, 0xdd438a6b
xor eax, 0x419583b4
mov esi, 0x6bb2aacb
xor edx, edx
div esi
mov edx, dword [ebp - 0x1c]
add eax, 0xc5c27fe7
xor eax, 0x7b2b82a1
sub eax, 0x32182423
or eax, 0xda6deaa7
or eax, 0x33b38e05
or eax, 0x899d806b
and eax, 0x7ec3d85f
mov ecx, dword [ecx]
mov edx, dword [edx]
shl edx, 1
add ecx, edx
mov dword [ebp - 0x28], ecx
cmp eax, 0x6646abac
jb 0x1006012e
mov eax, dword [ebp - 0x28]
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret 4
mov ecx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [eax], ecx
jmp 0x1005f630
jmp 0x1005f81a
sub esp, 4
mov dword [esp], recv
call fcn.10060520
jmp 0x1005fbb1
jmp 0x1005ff2d