Function at 0x100aeec0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xb4
mov al, byte [ebp + 0x18]
mov byte [ebp - 0x2d], al
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100b07f0
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov edx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
mov cl, byte [ebp - 0x2d]
push eax
mov eax, esp
mov dword [ebp - 0x40], eax
push eax
mov eax, esp
mov dword [ebp - 0x3c], eax
push eax
mov ebx, esp
mov dword [ebp - 0x68], ebx
push eax
mov esi, esp
mov dword [ebp - 0x64], esi
push eax
mov eax, esp
mov dword [ebp - 0x38], eax
push eax
mov eax, esp
mov dword [ebp - 0x34], eax
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x60], eax
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x58], eax
push eax
mov eax, esp
mov dword [ebp - 0x54], eax
push eax
mov eax, esp
mov dword [ebp - 0x50], eax
push eax
mov eax, esp
mov dword [ebp - 0x4c], eax
push eax
mov eax, esp
mov dword [ebp - 0x48], eax
push eax
mov eax, esp
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x40]
and cl, 1
mov byte [eax], cl
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x28]
mov dword [ebx], eax
mov eax, dword [ebp - 0x34]
mov dword [esi], edi
mov dword [ecx], edx
mov dword [eax], 0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [0x1028a468]
xor eax, dword [0x1028a46c]
xor eax, 0x3df28e6d
mov edi, eax
and edi, 0x362e3e89
mov esi, eax
or esi, 0x362e3e89
xor esi, 0xffffffff
imul esi, edi
mov edi, eax
and edi, 0xc9d1c176
or eax, 0xc9d1c176
imul eax, edi
add eax, esi
sub eax, 0x2d4b4822
add eax, 0xbfbdf8d8
add eax, 0x2d4b4822
mov ecx, dword [ecx]
mov edx, dword [edx]
movsx ecx, byte [ecx + edx]
cmp ecx, 0
setne cl
mov byte [ebp - 0x69], cl
cmp eax, 0x263c3aeb
jbe 0x100aef96
mov al, byte [ebp - 0x69]
test al, 1
jne 0x100af00f
jmp 0x100af088
mov esi, dword [ebp - 0x34]
mov eax, dword [0x1028a478]
and eax, dword [0x1028a47c]
add eax, 0x6705f5ed
mov ecx, 0xb7e8a985
xor edx, edx
div ecx
mov edx, dword [ebp - 0x3c]
and eax, 0xe1e05f89
mov ecx, dword [edx]
mov esi, dword [esi]
movsx ecx, byte [ecx + esi]
mov edx, dword [edx]
movsx edx, byte [edx]
cmp ecx, edx
sete cl
mov byte [ebp - 0x6a], cl
cmp eax, 0x7218f627
jae 0x100af00f
mov al, byte [ebp - 0x6a]
test al, 1
jne 0x100af063
jmp 0x100af06d
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
sub ecx, 0xffffffff
mov dword [eax], ecx
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
add ecx, 0x2414483e
add ecx, 1
sub ecx, 0x2414483e
mov dword [eax], ecx
jmp 0x100aef96
mov dword [ebp - 0x10], 0xffffffff
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x68]
mov edx, dword [0x1028a4a8]
imul edx, dword [0x1028a4ac]
add edx, 0x727f5064
mov edi, edx
xor edi, 0xffffffff
and edi, 0x3702c14c
mov esi, edx
and esi, 0xc8fd3eb3
imul esi, edi
mov edi, edx
and edi, 0x3702c14c
or edx, 0x3702c14c
imul edx, edi
add edx, esi
sub edx, 0x6c30f007
mov dword [ebp - 0x70], edx
mov eax, dword [eax]
xor edx, edx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.10084280
mov ecx, dword [ebp - 0x58]
call fcn.10037610
mov eax, dword [ebp - 0x70]
cmp eax, 0xf1f66595
jae 0x100b0042
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x10], 1
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.1003de40
add esp, 4
mov dword [ebp - 0x74], eax
jmp 0x100af128
mov ecx, dword [0x1028a4b0]
xor ecx, dword [0x1028a4b4]
sub ecx, 0x9c022af4
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xfc29e9b3
xor eax, 0xffffffff
xor ecx, 0xffffffff
or ecx, 0xfc29e9b3
and eax, ecx
xor eax, 0xffffffff
xor eax, 0xbfcc4de5
cmp eax, 0xd555acb9
jbe 0x100b006c
mov esi, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x58]
call fcn.10027aa0
mov edx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [edx], esi
mov dword [ecx], 0xfffffffe
mov dword [eax], 1
mov ecx, dword [0x1028a4c0]
and ecx, dword [0x1028a4c4]
mov eax, ecx
xor eax, 0xd455bde2
xor eax, 0xffffffff
and eax, 0xd455bde2
shl eax, 1
sub eax, 0xd455bde2
sub ecx, eax
mov eax, ecx
and eax, 0xd1e7d2db
xor ecx, 0xffffffff
and ecx, 0x2e182d24
or eax, ecx
or eax, 0x9b6bfcb0
xor eax, 0xffffffff
cmp eax, 0x1d6ddd24
jae 0x100b0093
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov byte [edx], 0
mov dword [ecx], 0
mov dword [eax], 0
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
cmp eax, dword [ecx]
jae 0x100afdd1
mov eax, dword [0x1028a4d8]
sub eax, dword [0x1028a4dc]
mov ecx, 0x5d9c9979
xor edx, edx
div ecx
xor eax, 0x96969cb
imul eax, eax, 0x27efb883
cmp eax, 0x96bd27c7
ja 0x100af1f8
jmp 0x100af227
mov ecx, dword [ebp - 0x3c]
mov eax, dword [0x1028a4e8]
xor edx, edx
div dword [0x1028a4ec]
mov edx, dword [ebp - 0x48]
mov esi, eax
xor esi, 0xcfbc6acf
mov eax, esi
and eax, 0x70fac709
xor esi, 0x70fac709
or eax, esi
xor eax, 0x89841e4f
mov ecx, dword [ecx]
mov edx, dword [edx]
movsx ecx, byte [ecx + edx]
cmp ecx, 0
setne cl
mov byte [ebp - 0x75], cl
cmp eax, 0x95ca4ed6
ja 0x100b00b0
mov cl, byte [ebp - 0x75]
xor eax, eax
test cl, 1
mov byte [ebp - 0x76], al
jne 0x100af288
jmp 0x100af2d9
mov eax, dword [0x1028a4f0]
xor edx, edx
div dword [0x1028a4f4]
or eax, 0x4f7d2e8d
mov ecx, eax
and ecx, 0xc88f6ae7
mov edx, eax
xor edx, 0x37709518
add eax, edx
sub eax, ecx
sub eax, 0x8f2f1ee4
cmp eax, 0x9cb6afd8
jbe 0x100b00b5
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x48]
mov eax, dword [ecx]
mov edx, dword [edx]
movsx eax, byte [eax + edx]
mov ecx, dword [ecx]
movsx ecx, byte [ecx]
cmp eax, ecx
setne al
mov byte [ebp - 0x76], al
mov al, byte [ebp - 0x76]
mov byte [ebp - 0x77], al
mov ecx, dword [0x1028a500]
sub ecx, dword [0x1028a504]
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x620808b
add ecx, eax
mov eax, ecx
and eax, 0x1a966142
xor ecx, 0x1a966142
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x9dd88659
and eax, 0x622779a6
sub eax, ecx
cmp eax, 0x8f0f02d7
jae 0x100b00ba
mov eax, dword [0x1028a508]
imul eax, dword [0x1028a50c]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x62376053
and eax, 0x9dc89fac
sub eax, ecx
mov ecx, 0x71c05122
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, eax
add ecx, 0xd18e68ee
xor eax, eax
sub eax, ecx
cmp eax, 0x2ccb2ed9
je 0x100af327
mov al, byte [ebp - 0x77]
test al, 1
jne 0x100af377
jmp 0x100af386
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100af227
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100846f0
movsx eax, byte [eax]
cmp eax, 0
je 0x100af3d1
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100846f0
mov ecx, eax
mov eax, dword [ebp - 0x48]
movsx esi, byte [ecx]
mov edx, dword [eax]
mov ecx, edx
and ecx, esi
or edx, esi
add ecx, edx
mov dword [eax], ecx
jmp 0x100afd91
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov eax, dword [ecx]
mov edi, dword [edx]
mov edx, dword [esi]
add edx, 0xc91fcafa
add edx, edi
sub edx, 0xc91fcafa
mov dword [esi], edx
movsx eax, byte [eax + edx]
mov ecx, dword [ecx]
movsx ecx, byte [ecx]
cmp eax, ecx
je 0x100af451
mov eax, dword [0x1028a520]
sub eax, dword [0x1028a524]
xor ecx, ecx
sub ecx, eax
add ecx, 0x97403cdb
xor eax, eax
sub eax, ecx
imul eax, eax, 0x8e2ec20f
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x864a70bc
add eax, ecx
cmp eax, 0x1ddf3215
je 0x100b00bf
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov ecx, dword [ecx]
movsx eax, byte [eax + ecx]
cmp eax, 0
jne 0x100af64c
mov eax, dword [0x1028a530]
add eax, dword [0x1028a534]
sub eax, 0x172468b7
sub eax, 0x397700c
add eax, 0x172468b7
xor eax, 0x3574399
xor eax, 0x5b1d7b7
cmp eax, 0x125f0c49
jb 0x100b00c4
mov ecx, dword [ebp - 0x50]
mov eax, dword [0x1028a538]
add eax, dword [0x1028a53c]
mov esi, 0x167c489d
xor edx, edx
div esi
xor eax, 0xd80f3163
mov esi, eax
and esi, 0x3e156c14
mov edx, eax
or edx, 0x3e156c14
xor edx, 0xffffffff
imul edx, esi
mov esi, eax
and esi, 0xc1ea93eb
or eax, 0xc1ea93eb
imul eax, esi
add eax, edx
cmp dword [ecx], 0x7f
setb cl
mov byte [ebp - 0x78], cl
cmp eax, 0x7d39ed3
je 0x100af480
mov al, byte [ebp - 0x78]
test al, 1
jne 0x100af4e8
jmp 0x100af576
mov ecx, dword [0x1028a540]
mov eax, dword [0x1028a544]
xor eax, 0xffffffff
sub eax, 0xffffffff
sub ecx, eax
mov eax, ecx
or eax, 0x7fa272dd
xor ecx, 0xffffffff
or ecx, 0x805d8d22
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x721fff1d
shl ecx, 1
xor eax, 0x721fff1d
add eax, ecx
mov ecx, eax
xor ecx, 0x64220b7b
and eax, 0x9bddf484
shl eax, 1
sub eax, ecx
cmp eax, 0xdc488b46
jbe 0x100b00c9
mov ecx, dword [ebp - 0x50]
mov eax, dword [0x1028a548]
imul eax, dword [0x1028a54c]
add eax, 0x8abc5a97
sub eax, 0xe4df6984
sub eax, 0x526ed4b4
mov ecx, dword [ecx]
mov dword [ebp - 0x7c], ecx
cmp eax, 0xe04a55cc
ja 0x100af53d
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x80], eax
jmp 0x100af57e
mov eax, 0x7f
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x84], eax
mov eax, dword [0x1028a560]
and eax, dword [0x1028a564]
or eax, 0xc50e2d25
mov ecx, eax
and ecx, 0x408fba71
xor ecx, 0xffffffff
add eax, 0x408fba71
add eax, 1
add eax, ecx
imul eax, eax, 0x77fdbddf
cmp eax, 0x8e33c376
ja 0x100b00ce
mov ecx, dword [ebp - 0x60]
mov eax, dword [0x1028a568]
xor edx, edx
div dword [0x1028a56c]
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x8e2b3e54
and edx, 0x71d4c1ab
or eax, edx
xor eax, 0x7711f886
mov esi, 0x2c773e7a
xor edx, edx
div esi
mov edx, dword [ebp - 0x84]
mov edi, eax
mov eax, dword [ebp - 0x44]
mov esi, edi
xor esi, 0xffffffff
and esi, 0x3678e81
and edi, 0xfc98717e
or esi, edi
xor esi, 0x4812161
mov dword [ebp - 0x88], esi
mov bl, dl
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100846f0
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x88]
mov byte [esi], bl
mov edx, dword [edx]
mov dword [ecx], edx
cmp eax, 0x481e90fa
ja 0x100b00ce
jmp 0x100afd1d
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100a5710
add esp, 8
mov byte [ebp - 0x89], al
jmp 0x100af67a
mov eax, dword [0x1028a580]
and eax, dword [0x1028a584]
mov edx, eax
xor edx, 0xffffffff
and edx, 0xea87d4b9
mov ecx, eax
and ecx, 0x15782b46
imul ecx, edx
mov edx, eax
and edx, 0xea87d4b9
or eax, 0xea87d4b9
imul eax, edx
add eax, ecx
mov edx, eax
and edx, 0x3951f180
mov ecx, eax
or ecx, 0x3951f180
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc6ae0e7f
or eax, 0xc6ae0e7f
imul eax, edx
add eax, ecx
sub eax, 0x238bdc85
cmp eax, 0xa7adb002
jae 0x100b00fc
mov eax, dword [0x1028a588]
xor edx, edx
div dword [0x1028a58c]
mov ecx, 0xe1af8f12
xor edx, edx
div ecx
sub eax, 0x19eb845a
and eax, 0xbb525703
cmp eax, 0x3c948e7e
jb 0x100af6e5
mov al, byte [ebp - 0x89]
test al, 1
jne 0x100afa78
jmp 0x100af723
mov eax, dword [0x1028a590]
xor eax, dword [0x1028a594]
imul eax, eax, 0xc7077984
and eax, 0x70373bbc
sub eax, 0x40a9152c
cmp eax, 0x780e455d
jb 0x100b0101
mov eax, dword [ebp - 0x40]
test byte [eax], 1
je 0x100af88a
mov eax, dword [0x1028a5a0]
xor edx, edx
div dword [0x1028a5a4]
mov edx, eax
mov ecx, edx
xor ecx, 0xffffffff
mov eax, ecx
and eax, 0xafb956c2
and edx, 0x5046a93d
or eax, edx
xor eax, 0x5a93f42
or ecx, 0x55ef967f
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
xor ecx, 0x609ebb5b
and eax, 0x9f6144a4
shl eax, 1
sub eax, ecx
xor eax, 0xac1652e8
cmp eax, 0x97be2c86
jb 0x100b0106
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
mov ecx, dword [ecx]
mov edx, dword [edx]
movsx ecx, byte [ecx + edx]
mov dword [ebp - 0x90], ecx
mov ecx, dword [eax]
mov dword [ebp - 0x10], 0
call fcn.100a5a10
mov byte [ebp - 0x8a], al
jmp 0x100af7d9
mov eax, dword [0x1028a5b0]
xor eax, dword [0x1028a5b4]
xor eax, 0x3df8757a
sub eax, 0xda0f4a67
add eax, 0x869cf5b0
cmp eax, 0x99f2480d
ja 0x100b0112
mov ecx, dword [ebp - 0x90]
mov dl, byte [ebp - 0x8a]
mov eax, dword [0x1028a5b8]
mov edi, dword [0x1028a5bc]
mov esi, eax
and esi, edi
shl esi, 1
add eax, edi
sub eax, esi
mov edi, eax
and edi, 0xad57d4dc
mov esi, eax
or esi, 0xad57d4dc
xor esi, 0xffffffff
imul esi, edi
mov edi, eax
and edi, 0x52a82b23
or eax, 0x52a82b23
imul eax, edi
add eax, esi
or eax, 0x5baff0cb
mov esi, eax
xor esi, 0xffffffff
and esi, 0xdb4141f3
and eax, 0x24bebe0c
sub eax, esi
movsx edx, dl
cmp ecx, edx
setne cl
mov byte [ebp - 0x91], cl
cmp eax, 0x88c28548
jae 0x100af7fe
mov al, byte [ebp - 0x91]
test al, 1
jne 0x100afa78
jmp 0x100afc79
mov eax, dword [0x1028a5c0]
xor edx, edx
div dword [0x1028a5c4]
mov ecx, eax
add ecx, 0x5eda8d17
xor ecx, 0xc80626b6
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0x10073cb4
xor eax, 0xffffffff
cmp eax, 0x3f2af5f3
jbe 0x100b0117
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x5c]
mov eax, dword [0x1028a5c8]
xor edx, edx
div dword [0x1028a5cc]
mov edx, dword [ebp - 0x48]
mov edi, eax
xor edi, 0xffffffff
or edi, 0xe6f27a48
xor edi, 0xffffffff
or eax, 0x190d85b7
xor eax, 0xffffffff
or edi, eax
xor edi, 0xffffffff
mov eax, edi
and eax, 0x5014cd70
or edi, 0x5014cd70
add eax, edi
or eax, 0xe61c80da
mov esi, dword [esi]
mov dword [ebp - 0x98], esi
mov ecx, dword [ecx]
mov edx, dword [edx]
mov cl, byte [ecx + edx]
mov byte [ebp - 0x92], cl
cmp eax, 0xfa24bcc5
ja 0x100b0117
mov ecx, dword [ebp - 0x98]
mov al, byte [ebp - 0x92]
mov dword [ebp - 0x10], 0
sub esp, 4
movsx edx, al
mov eax, esp
mov dword [eax], edx
call fcn.100b01b0
mov byte [ebp - 0x99], al
jmp 0x100af954
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x5c]
mov dl, byte [ebp - 0x99]
movsx edx, dl
mov dword [ebp - 0xa4], edx
mov ecx, dword [ecx]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [eax]
call fcn.100a5a10
mov byte [ebp - 0x9a], al
jmp 0x100af983
mov ecx, dword [ebp - 0xa0]
mov al, byte [ebp - 0x9a]
sub esp, 4
movsx edx, al
mov eax, esp
mov dword [eax], edx
call fcn.100b01b0
mov byte [ebp - 0xa5], al
jmp 0x100af9a9
mov ecx, dword [0x1028a5d0]
xor ecx, dword [0x1028a5d4]
mov eax, ecx
xor eax, 0xe7e18bc5
xor eax, 0xffffffff
and eax, 0xe7e18bc5
shl eax, 1
sub eax, 0xe7e18bc5
sub ecx, eax
mov eax, ecx
xor eax, 0x280a50b5
xor eax, 0xffffffff
and eax, 0x280a50b5
shl eax, 1
sub eax, 0x280a50b5
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
or eax, 0x2c3ac3e5
and ecx, 0x2c3ac3e5
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x6ec30bfd
jbe 0x100b011c
mov ecx, dword [ebp - 0xa4]
mov dl, byte [ebp - 0xa5]
mov esi, dword [0x1028a5d8]
xor eax, eax
sub eax, dword [0x1028a5dc]
sub esi, eax
sub esi, 0x1aba78c7
sub esi, 0xf5937071
mov eax, esi
xor eax, 0xffffffff
and eax, 0xb7de6692
and esi, 0x4821996d
or eax, esi
movsx edx, dl
cmp ecx, edx
setne cl
mov byte [ebp - 0xa6], cl
cmp eax, 0x24327a84
je 0x100afa12
mov al, byte [ebp - 0xa6]
test al, 1
jne 0x100afa78
jmp 0x100afc79
mov eax, dword [0x1028a5e0]
xor edx, edx
div dword [0x1028a5e4]
mov edx, eax
add edx, 0x95f2fce7
mov eax, edx
xor eax, 0xffffffff
and eax, 0x478e3a3f
and edx, 0xb871c5c0
sub edx, eax
mov ecx, edx
xor ecx, 0xffffffff
mov eax, ecx
and eax, 0x9db04679
and edx, 0x624fb986
or eax, edx
xor eax, 0xe066f774
or ecx, 0x82294ef2
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x1138a266
jb 0x100b0121
mov eax, dword [ebp - 0x50]
cmp dword [eax], 0x7f
jae 0x100afbb9
mov eax, dword [0x1028a5f0]
add eax, dword [0x1028a5f4]
imul eax, eax, 0xdbd3d824
sub eax, 0x10415971
mov edx, eax
and edx, 0xd2bdab04
mov ecx, eax
or ecx, 0xd2bdab04
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x2d4254fb
or eax, 0x2d4254fb
imul eax, edx
add eax, ecx
cmp eax, 0xec0a27ab
ja 0x100b0126
mov ecx, dword [ebp - 0x50]
mov eax, dword [0x1028a5f8]
mov edx, dword [0x1028a5fc]
mov esi, eax
and esi, edx
or eax, edx
xor eax, 0xffffffff
or esi, eax
mov edx, esi
xor edx, 0xffffffff
and esi, 0xc13939b9
mov eax, edx
and eax, 0x3ec6c646
imul eax, esi
mov esi, edx
and esi, 0xc13939b9
or edx, 0xc13939b9
imul edx, esi
add edx, eax
mov eax, edx
xor eax, 0x3c0b459e
and eax, edx
mov esi, eax
and esi, 0x6587a90f
mov edx, eax
or edx, 0x6587a90f
xor edx, 0xffffffff
imul edx, esi
mov esi, eax
and esi, 0x9a7856f0
or eax, 0x9a7856f0
imul eax, esi
add eax, edx
mov ecx, dword [ecx]
mov dword [ebp - 0xac], ecx
cmp eax, 0x59486ebe
ja 0x100afb23
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xb0], eax
jmp 0x100afc41
mov eax, dword [0x1028a600]
add eax, dword [0x1028a604]
mov ecx, eax
xor ecx, 0x4e3ccdba
xor ecx, 0xffffffff
and ecx, 0x4e3ccdba
shl ecx, 1
sub ecx, 0x4e3ccdba
sub eax, ecx
add eax, 0x5d894f32
or eax, 0xb77d74f2
cmp eax, 0x81fd4f8e
jbe 0x100b012b
mov eax, dword [0x1028a608]
mov edx, dword [0x1028a60c]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
and eax, 0x535f5230
sub eax, 0x959a4e86
sub eax, 0xf3d936dc
add eax, 0x959a4e86
add eax, 0xfd3c17ef
cmp eax, 0xc14bd02c
ja 0x100b012b
mov eax, 0x7f
mov dword [ebp - 0xb0], eax
jmp 0x100afc41
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0xb4]
mov byte [ebp - 0xb5], dl
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100846f0
mov cl, byte [ebp - 0xb5]
mov byte [eax], cl
jmp 0x100afd18
mov esi, dword [0x1028a620]
mov edx, dword [0x1028a624]
mov eax, esi
xor eax, 0xffffffff
and eax, 0x599bb649
and esi, 0xa66449b6
mov ecx, edx
xor ecx, 0xffffffff
and ecx, 0x599bb649
and edx, 0xa66449b6
or eax, esi
or ecx, edx
xor eax, ecx
imul ecx, eax, 0xb764027c
or ecx, 0x90f37f0b
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0xe40511c4
xor eax, 0xffffffff
cmp eax, 0x25ed8494
jb 0x100b0130
mov ecx, dword [ebp - 0x4c]
mov eax, dword [0x1028a628]
xor edx, edx
div dword [0x1028a62c]
mov edx, eax
and edx, 0x8e66e587
shl edx, 1
xor eax, 0x8e66e587
add eax, edx
mov esi, 0x119732a8
xor edx, edx
div esi
imul eax, eax, 0x6c8ec5f9
mov byte [ecx], 1
cmp eax, 0xda270305
je 0x100afcd5
jmp 0x100afd18
jmp 0x100afd1d
mov eax, dword [0x1028a638]
or eax, dword [0x1028a63c]
mov ecx, 0xd809b7c2
xor edx, edx
div ecx
mov edx, eax
and edx, 0x9410f2a4
mov ecx, eax
or ecx, 0x9410f2a4
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x6bef0d5b
or eax, 0x6bef0d5b
imul eax, edx
add eax, ecx
mov edx, eax
and edx, 0xf70305d8
mov ecx, eax
or ecx, 0xf70305d8
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x8fcfa27
or eax, 0x8fcfa27
imul eax, edx
add eax, ecx
cmp eax, 0x309b2e0b
je 0x100b013b
jmp 0x100afd91
mov eax, dword [0x1028a640]
xor edx, edx
div dword [0x1028a644]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xcc607730
add eax, ecx
add eax, 0xf1e4afba
xor eax, 0xcfeb1bb5
cmp eax, 0x4795ef4f
je 0x100b0140
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100af1e8
mov eax, dword [ebp - 0x4c]
test byte [eax], 1
je 0x100afe1e
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
mov ecx, dword [eax]
mov dword [ebp - 0x10], 0
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100a5710
add esp, 8
mov byte [ebp - 0xb6], al
jmp 0x100afe0b
mov al, byte [ebp - 0xb6]
test al, 1
jne 0x100afe1e
jmp 0x100afe78
mov eax, dword [0x1028a650]
xor eax, dword [0x1028a654]
and eax, 0x2b544c8f
or eax, 0x159c2e04
imul eax, eax, 0x863af030
cmp eax, 0x661b7aec
jb 0x100b014f
mov eax, dword [0x1028a658]
or eax, dword [0x1028a65c]
sub eax, 0xf7e921c5
xor eax, 0x4a0a82d7
add eax, 0x20b237e3
add eax, 0x5346e30f
sub eax, 0x20b237e3
cmp eax, 0x85a1c3d2
je 0x100afe44
jmp 0x100aff84
mov eax, dword [0x1028a660]
xor edx, edx
div dword [0x1028a664]
imul ecx, eax, 0x348fc813
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x17c2a433
and ecx, 0xe83d5bcc
or eax, ecx
xor eax, 0x9578fb01
mov edx, eax
and edx, 0x6ae73ca7
mov ecx, eax
or ecx, 0x6ae73ca7
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x9518c358
or eax, 0x9518c358
imul eax, edx
add eax, ecx
cmp eax, 0xf4909859
jae 0x100b0154
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x50]
mov edx, dword [ecx]
inc edx
mov dword [ecx], edx
mov ecx, dword [eax]
call fcn.100a5d00
jmp 0x100afeec
mov eax, dword [0x1028a670]
xor edx, edx
div dword [0x1028a674]
add eax, 0xc0f49719
imul ecx, eax, 0x29acea95
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x3d05b4e0
and ecx, 0xc2fa4b1f
or eax, ecx
xor eax, 0xa6b1e9dd
cmp eax, 0xef715f6a
jbe 0x100b0159
mov ecx, dword [ebp - 0x54]
mov eax, dword [0x1028a678]
imul eax, dword [0x1028a67c]
add eax, 0x3449ba50
add eax, 0x5c296182
sub eax, 0x3449ba50
mov edx, eax
xor edx, 0xffffffff
and edx, 0x2c334b4b
xor eax, 0xffffffff
and eax, 0x2c334b4b
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov eax, edx
and eax, 0xe30f95dd
or edx, 0xe30f95dd
add eax, edx
mov dword [ecx], 0xffffffff
cmp eax, 0x840cf35c
jbe 0x100aff26
jmp 0x100af187
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x54]
mov ebx, dword [0x1028a688]
mov edi, dword [0x1028a68c]
mov edx, ebx
xor edx, 0xffffffff
and edx, 0x97f3154f
and ebx, 0x680ceab0
mov esi, edi
xor esi, 0xffffffff
and esi, 0x97f3154f
and edi, 0x680ceab0
or edx, ebx
or esi, edi
xor edx, esi
sub edx, 0x27915b5c
add edx, 0xa295c2e2
add edx, 0x27915b5c
mov edi, edx
and edi, 0xdc38fccc
xor edx, 0xdc38fccc
or edi, edx
mov esi, edi
xor esi, 0xffffffff
mov edx, esi
and edx, 0x2d3f190a
and edi, 0xd2c0e6f5
or edx, edi
xor edx, 0x4d6cd779
or esi, 0x9fac318c
xor esi, 0xffffffff
or edx, esi
mov dword [ebp - 0xbc], edx
mov eax, dword [eax]
mov dword [ebp - 0xc0], eax
call fcn.100061b0
mov eax, dword [ebp - 0xbc]
cmp eax, 0x3519bbf5
je 0x100aff84
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0x18]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
xor edx, edx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.10084280
mov ecx, dword [ebp - 0x58]
call fcn.10037610
jmp 0x100af08f
mov esi, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x58]
call fcn.10027aa0
mov edx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [edx], esi
mov dword [ecx], 0xfffffffe
mov dword [eax], 1
jmp 0x100af165
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov byte [edx], 0
mov dword [ecx], 0
mov dword [eax], 0
jmp 0x100af1d0
jmp 0x100af227
jmp 0x100af2be
jmp 0x100af327
jmp 0x100af43a
jmp 0x100af480
jmp 0x100af53d
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x84]
mov bl, dl
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100846f0
mov ecx, dword [ebp - 0x44]
mov edx, eax
mov eax, dword [ebp - 0x54]
mov byte [edx], bl
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x100af5bd
jmp 0x100af6e5
jmp 0x100af749
mov dword [ebp - 0x10], 0
jmp 0x100af7a9
jmp 0x100af7fe
jmp 0x100af8c2
jmp 0x100afa12
jmp 0x100aface
jmp 0x100afb23
jmp 0x100afbf4
mov eax, dword [ebp - 0x4c]
mov byte [eax], 1
jmp 0x100afcd5
jmp 0x100afd1d
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100afdc2
jmp 0x100afe44
jmp 0x100afed5
mov eax, dword [ebp - 0x54]
mov dword [eax], 0xffffffff
jmp 0x100aff26