Function at 0x100638f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x100c3f98]
xor edx, edx
div dword [0x100c3f9c]
and eax, 0xe6c6c0a3
sub eax, 0x633feb24
and eax, 0xb061b529
or eax, 0x4ca4a4e0
add eax, 0xd38fe9ad
sub eax, 0x9681a0ae
xor eax, 0x82ca69fe
and eax, 0x3c0444c2
or eax, 0xee4ba734
add eax, 0xda0b999b
or eax, 0xdfd86448
and eax, 0x5c847d93
imul eax, eax, 0x1ca177d8
sub eax, 0x1527fcb1
imul eax, eax, 0xab4c4e19
sub eax, 0xaea66428
xor eax, 0xab4a2263
and eax, 0xceaf9ba7
and eax, 0x65de903
add eax, 0xcc67afdc
sub eax, 0x85951717
sub eax, 0xd3860620
mov ecx, 0x45934e78
xor edx, edx
div ecx
or eax, 0xc20eb985
add eax, 0xd4ec4ebe
add eax, 0xb7bfc6c8
and eax, 0x5550cf32
imul eax, eax, 0x840cebc1
and eax, 0x88b9381a
or eax, 0x6cfe9b90
mov ecx, 0x81225ba4
xor edx, edx
div ecx
sub eax, 0x3a3ae897
add eax, 0xe47fe754
or eax, 0xadf94032
add eax, 0x777297a2
imul eax, eax, 0x8964664d
and eax, 0x294c3b2c
sub eax, 0x922f9a4d
and eax, 0xeefda985
or eax, 0x7e457a51
and eax, 0x7f9c036c
or eax, 0xe48ace1c
or eax, 0x4f2012d5
mov ecx, 0x3a9a73f2
xor edx, edx
div ecx
add eax, 0x7eafff7b
imul eax, eax, 0x8b2d7fcd
mov ecx, 0xe2cf1227
xor edx, edx
div ecx
and eax, 0x9c189987
xor eax, 0x72fbc965
or eax, 0x7aee6e32
and eax, 0x23e4fd60
or eax, 0x4eac0102
and eax, 0x912267b9
and eax, 0x2b0e4546
imul eax, eax, 0xa610de5
imul eax, eax, 0x973308ab
imul eax, eax, 0xc71feab4
add eax, 0x8904e59e
sub eax, 0x9242636e
or eax, 0xe9fdf876
add eax, 0xf3af3b18
sub eax, 0x93deccda
sub eax, 0xd7e3a6df
mov ecx, 0x6a8c92aa
xor edx, edx
div ecx
add eax, 0x59258af5
imul eax, eax, 0x714ffced
imul eax, eax, 0x342b54eb
mov ecx, 0xe34a8f5d
xor edx, edx
div ecx
imul eax, eax, 0xd2335aec
sub eax, 0x496ac127
and eax, 0x6c62568c
add eax, 0x2d084781
cmp eax, 0x50c53797
jb 0x100641fa
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov eax, 0x133599e4
push eax
mov ecx, esp
mov dword [ebp - 0x24], ecx
push eax
mov edx, esp
push eax
mov ebx, esp
mov dword [ebp - 0x20], ebx
mov dword [ecx], edi
mov dword [edx], esi
mov edx, dword [edx]
mov dword [ebp - 0x1c], edx
cmp dword [ecx], 0
setne cl
mov byte [ebp - 0x15], cl
cmp eax, 0x8e71dbee
jae 0x100641fa
mov al, byte [ebp - 0x15]
test al, 1
jne 0x10063aec
jmp 0x10063e94
mov eax, dword [0x100c3fa8]
xor eax, dword [0x100c3fac]
xor eax, 0xaa713281
mov ecx, 0x91ff25c7
xor edx, edx
div ecx
xor eax, 0x7ab5405
and eax, 0xa5380988
and eax, 0x8563aeec
and eax, 0x8e7af30c
xor eax, 0x5c7fecb6
sub eax, 0xe37e4338
sub eax, 0x380c2b8c
add eax, 0x9865843e
xor eax, 0x53f7936d
add eax, 0xdd435516
imul eax, eax, 0xaa6d7509
imul eax, eax, 0x976dae6
sub eax, 0xd361b829
or eax, 0x79d8b1b7
and eax, 0x4a2879a5
sub eax, 0x1a9030ec
add eax, 0xc2495e07
and eax, 0x400d062a
imul eax, eax, 0xe4a08e64
sub eax, 0x12ff1b4e
mov ecx, 0x29c3234b
xor edx, edx
div ecx
xor eax, 0x5b2f6a91
xor eax, 0xd4913b5
xor eax, 0x737e24b
and eax, 0x87f48754
add eax, 0xa53fc01e
mov ecx, 0x3d9f6004
xor edx, edx
div ecx
xor eax, 0x6058e23a
xor eax, 0x633557a0
add eax, 0x67e758b7
xor eax, 0x90adc024
xor eax, 0xc93c1755
xor eax, 0x9df706d0
or eax, 0x3f907267
imul eax, eax, 0xdf1b7e18
sub eax, 0xfe855d8d
xor eax, 0xd8f93773
xor eax, 0x3da71a1b
mov ecx, 0x68abdbf3
xor edx, edx
div ecx
sub eax, 0xedf9c6f8
imul eax, eax, 0x74fa3aa2
sub eax, 0x98240145
and eax, 0x19ad71da
and eax, 0xf45b6d7b
add eax, 0xe024c83d
mov ecx, 0x25d6ec3e
xor edx, edx
div ecx
and eax, 0x9151c46b
imul eax, eax, 0xa3272c23
mov ecx, 0x11a74fd1
xor edx, edx
div ecx
add eax, 0xcd329ea
and eax, 0x6630c077
and eax, 0x5cac5f60
add eax, 0x7e4c5945
imul eax, eax, 0xe5f08ee4
add eax, 0x365444b
imul eax, eax, 0x2200f6d4
imul eax, eax, 0xf96b1216
mov ecx, 0x81fdc5ad
xor edx, edx
div ecx
or eax, 0xa4a139ca
imul eax, eax, 0xd5560ac7
xor eax, 0xc035b338
or eax, 0x491491ce
imul eax, eax, 0xea9b016
mov ecx, 0x6afde9d0
xor edx, edx
div ecx
imul eax, eax, 0xd5d56a60
and eax, 0xaf454d97
and eax, 0x3675c7d
mov ecx, 0xd744b972
xor edx, edx
div ecx
mov ecx, 0x9557cb08
xor edx, edx
div ecx
or eax, 0x8745fbe5
cmp eax, 0x11b3120e
jbe 0x1006420f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [0x100c3fb0]
and eax, dword [str.n_r_l]
mov esi, 0xa5f2588
xor edx, edx
div esi
xor eax, 0x6ea5af07
or eax, 0xb1a3817d
or eax, 0x2f2f369d
add eax, 0x77612399
sub eax, 0x210ac67d
mov esi, 0xb36a5c54
xor edx, edx
div esi
mov esi, 0x8ebd79fa
xor edx, edx
div esi
add eax, 0xe7273db9
and eax, 0xe9a7ca8
sub eax, 0xc0a64e1a
xor eax, 0x6890af10
sub eax, 0xe5005369
xor eax, 0x76587688
imul eax, eax, 0x8ad64176
or eax, 0x55792152
and eax, 0xc3e11252
sub eax, 0x2f49ded6
and eax, 0x54b031bd
sub eax, 0x471a8159
mov esi, 0x704fa4d4
xor edx, edx
div esi
imul eax, eax, 0x64448e3
imul eax, eax, 0x2576cd52
sub eax, 0x14e42efb
or eax, 0xa6e9d0f9
xor eax, 0x9a63b4ef
xor eax, 0x406811a1
and eax, 0x1a48cd5f
add eax, 0x6155272b
add eax, 0xd57e175d
sub eax, 0x4093ecee
xor eax, 0xfc1b5ad6
and eax, 0x81dd1d1c
mov esi, 0x260616ec
xor edx, edx
div esi
or eax, 0x6895cfa7
and eax, 0xc5e757cb
mov esi, 0x33e1a14f
xor edx, edx
div esi
add eax, 0xaa558fe9
mov esi, 0x55c93572
xor edx, edx
div esi
imul eax, eax, 0x42124b7b
imul eax, eax, 0xa66a9484
add eax, 0x8113ecc5
or eax, 0x34e077d4
imul eax, eax, 0xe5059697
add eax, 0xa596d79c
and eax, 0x2d20db8
mov esi, 0x9158c73a
xor edx, edx
div esi
imul eax, eax, 0x75e461b0
sub eax, 0x629210a0
imul eax, eax, 0x441a6fe5
imul eax, eax, 0x8f9dc2e3
add eax, 0x8cfee22
xor eax, 0x95c309a3
or eax, 0xd7130236
add eax, 0x7e78e13f
add eax, 0x1bfb1b66
mov esi, 0xf0be3414
xor edx, edx
div esi
xor eax, 0xde6a7a54
mov esi, 0x620dc8a5
xor edx, edx
div esi
sub eax, 0x93f897cd
add eax, 0xe460c5c3
add eax, 0x11e31492
sub eax, 0xca0f03a1
mov esi, 0x4a0433c5
xor edx, edx
div esi
add eax, 0xeec1d174
imul eax, eax, 0x7d21507a
mov esi, 0xd3de1bd8
xor edx, edx
div esi
mov edx, eax
mov eax, dword [ebp - 0x24]
or edx, 0x756f1412
and edx, 0xd2f14fc6
imul edx, edx, 0x88b41e4e
imul edx, edx, 0xa52d49f6
add edx, 0x1752b82d
mov dword [ebp - 0x28], edx
mov eax, dword [eax]
mov ecx, dword [ecx + 4]
xor edx, edx
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 0x20]
mov edx, eax
mov eax, dword [ebp - 0x28]
mov dword [ecx], edx
cmp eax, 0x935d950d
je 0x1006420f
jmp 0x10063e94
mov eax, dword [0x100c3fb8]
xor eax, dword [str._rl_Q]
xor eax, 0x68d624e7
xor eax, 0x24c59022
imul eax, eax, 0xa360eb4c
imul eax, eax, 0x22e1310c
or eax, 0xef2fbf6
and eax, 0xea2c45f9
and eax, 0x73cc7b9
and eax, 0xde261180
or eax, 0xaab4f05b
and eax, 0x54d943d8
imul eax, eax, 0xf9328a53
sub eax, 0xb1db51e7
mov ecx, 0xab035b30
xor edx, edx
div ecx
add eax, 0xbc45b895
sub eax, 0xb5897af3
imul eax, eax, 0x7b29480c
add eax, 0xd90461ba
mov ecx, 0xc3fbcd8
xor edx, edx
div ecx
and eax, 0x47b363d2
or eax, 0x6201e776
sub eax, 0x53de5453
imul eax, eax, 0x4800fdba
mov ecx, 0x6c6149f1
xor edx, edx
div ecx
imul eax, eax, 0xcd22d37e
add eax, 0x628821cc
mov ecx, 0xf46e6cef
xor edx, edx
div ecx
or eax, 0x4880c026
mov ecx, 0x33c49119
xor edx, edx
div ecx
and eax, 0x1af9eeea
mov ecx, 0x13870129
xor edx, edx
div ecx
and eax, 0x6892ab69
add eax, 0x21a25856
and eax, 0xe1b9515
mov ecx, 0xe3b87252
xor edx, edx
div ecx
mov ecx, 0xe7c32a81
xor edx, edx
div ecx
mov ecx, 0xa16c9fe2
xor edx, edx
div ecx
sub eax, 0x2e202d2e
and eax, 0xec486c1d
sub eax, 0x7c5234d6
add eax, 0xd324a0ef
xor eax, 0x565c6e98
mov ecx, 0xbeb8679
xor edx, edx
div ecx
xor eax, 0x3772329d
mov ecx, 0x60c53a9e
xor edx, edx
div ecx
and eax, 0x1ba6c0e3
imul eax, eax, 0x9737e5ec
mov ecx, 0x5102bd36
xor edx, edx
div ecx
sub eax, 0x644c9fcb
mov ecx, 0x208fd662
xor edx, edx
div ecx
and eax, 0xdf662606
sub eax, 0x54759a59
and eax, 0x3ea6b47c
or eax, 0x508dc03f
xor eax, 0x95a39add
mov ecx, 0x512605d5
xor edx, edx
div ecx
sub eax, 0x956966f1
sub eax, 0x719c889b
xor eax, 0xa10ce1d3
and eax, 0x36875ed1
sub eax, 0xf7145f55
and eax, 0x7d3b123c
imul eax, eax, 0x1bd75bbf
and eax, 0x3b7fc994
imul eax, eax, 0x63e63c20
imul eax, eax, 0x614f4db8
or eax, 0x3ee8836
or eax, 0xadd7558
and eax, 0x74883e91
or eax, 0x1488974f
add eax, 0x23ebad02
imul eax, eax, 0x6d4d88ef
and eax, 0x1de054a2
cmp eax, 0x6dd34b04
ja 0x10064240
mov eax, dword [0x100c3fc0]
and eax, dword [0x100c3fc4]
imul eax, eax, 0x816a2216
and eax, 0x5a98ea5b
or eax, 0x1ae721d0
sub eax, 0xfceb7afb
mov ecx, 0xb9df0ef7
xor edx, edx
div ecx
sub eax, 0x904a0b46
xor eax, 0xe143ff3c
or eax, 0x8a42f1b
sub eax, 0x4af29710
or eax, 0x6c54dace
and eax, 0xda1c185b
and eax, 0xad51a7c8
or eax, 0x541bd5ab
imul eax, eax, 0xefc260d0
and eax, 0x6d8aba21
xor eax, 0xa0c2150
or eax, 0x408d8f41
and eax, 0x907a5221
xor eax, 0x13b5180c
and eax, 0xf5ae4a7f
or eax, 0x2c0850cb
mov ecx, 0xe9457b26
xor edx, edx
div ecx
imul eax, eax, 0x69a0d0b4
imul eax, eax, 0x4e80f4ee
xor eax, 0x2f07fca5
add eax, 0x8ea3e19e
xor eax, 0x38d10a7e
and eax, 0x66ed6e49
add eax, 0xa639816f
add eax, 0xc88eff66
sub eax, 0xf543d2c8
or eax, 0xf2ad0e16
add eax, 0x27404e26
imul eax, eax, 0xa393418
imul eax, eax, 0x9dd38682
imul eax, eax, 0x4436037a
add eax, 0x3c644ad2
or eax, 0xbb4159e0
imul eax, eax, 0xdac6e58d
sub eax, 0xe0269a20
imul eax, eax, 0x62414460
or eax, 0xc47fca5d
or eax, 0xb3929303
mov ecx, 0x9abea4bd
xor edx, edx
div ecx
sub eax, 0x4c440776
xor eax, 0x43c53c44
xor eax, 0x30de8e67
sub eax, 0xf5e4b400
xor eax, 0xd71dae73
and eax, 0x175ca0ca
mov ecx, 0x853d8ee8
xor edx, edx
div ecx
sub eax, 0xcdecbff7
or eax, 0xbdca3cd
or eax, 0xe559760e
imul eax, eax, 0xc93d6f0c
imul eax, eax, 0x3595297c
and eax, 0xbc6fef9b
or eax, 0x7f6049fc
and eax, 0x4eb10352
xor eax, 0x6576aa69
xor eax, 0x6e72a6bc
and eax, 0x5b726d25
xor eax, 0x7c76c8ad
sub eax, 0xa928cba6
and eax, 0xe8de5d68
sub eax, 0xeac22074
imul eax, eax, 0xde87ab86
or eax, 0x7f80ab
imul eax, eax, 0x9de7f0e3
sub eax, 0x4fe19c72
sub eax, 0x4dd90178
and eax, 0x1a6f9cf7
cmp eax, 0x582fb877
jae 0x10064055
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov ecx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x10]
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [eax], ecx
jmp 0x10063aa5
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ecx + 4]
xor edx, edx
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov dword [eax], ecx
jmp 0x10063c9e
jmp 0x10064055