Function at 0x11a5b32
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x21e8
call fcn.0118c950
mov dword [esp + 0x11e8], 0xe95ceb58
mov dword [esp + 0x11ec], 0xeda7efa3
mov dword [esp + 0x11f0], 0xd167d3a3
mov dword [esp + 0x11f4], 0xd560d764
mov dword [esp + 0x11f8], 0xd966db6b
mov dword [esp + 0x11fc], 0xdd6bdf63
mov dword [esp + 0x1200], 0xc174c397
mov word [esp + 0x1204], 0xc7c0
mov dword [esp + 0x1206], 0
mov dword [esp + 0xa78], 0
mov eax, dword [esp + 0xa78]
cmp eax, 0x21
ja 0x11a4c63
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xa78]
mov ecx, dword [esp + 0xa78]
movzx ecx, byte [esp + ecx + 0x11e8]
mov edx, eax
xor edx, 0xac493d57
and eax, 0x2c493d57
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x78]
add al, 0x4d
mov ecx, dword [esp + 0xa78]
mov byte [esp + ecx + 0x11e8], al
inc dword [esp + 0xa78]
mov eax, dword [esp + 0xa78]
cmp eax, 0x22
jb 0x11a4c10
lea eax, [esp + 0x30]
lea ebp, [esp + 0x11e8]
push 0
push 0
push 0x20019
push eax
push ebp
call fcn.011c2150
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x11c8e54]
lea esi, [esp + 0x60]
jmp dword [0x11c8e60]
lea eax, [esp + 0x2c]
push 0
push 0
push 0
push 0
push esi
push eax
push 0
push 0
push dword [esp + 0x50]
call fcn.011c25b0
add esp, 0x24
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esp + 0x2c]
push 0
push 0
push 0
push 0
push esi
push eax
push 0
push 0
push dword [esp + 0x50]
call fcn.011c25b0
add esp, 0x24
jmp dword [0x11c8e68]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x11c8e6c]
jmp dword [0x11c8e7c]
xor ebx, ebx
jmp 0x11a66fb
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x48], 0
cmp ecx, dword [esp + 0x2c]
setb al
xor edi, edi
jmp dword [eax*4 + 0x11c8e84]
mov word [ebp], 0
mov ebx, dword [esp + 0x48]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x11c8e8c]
movzx edx, word [esp + 0x11e8]
test dx, dx
je 0x11a64e6
xor ecx, ecx
lea eax, [esp + 0x11e8]
jmp 0x11a64c0
mov esi, dword [esp + 0x60]
mov eax, esi
inc eax
lea eax, [esi + esi + 2]
jns 0x11a4d73
mov eax, 0xffffffff
push eax
call fcn.0118c9f0
add esp, 4
mov ebx, eax
mov dword [esp + 0x5c], esi
lea eax, [esp + 0x5c]
push eax
push ebx
push edi
push dword [esp + 0x3c]
call fcn.011c2280
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x11c8ea4]
jmp dword [0x11c8f34]
lea eax, [esp + 0x50]
push dword [esp + 0x30]
push 0
push 0x20019
push eax
push ebx
call fcn.011c2150
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x11c8eac]
jmp dword [0x11c8f34]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x78], 0x73db71a5
mov dword [esp + 0x7c], 0x7fcc7ddf
mov dword [esp + 0x80], 0x7bc979cf
mov dword [esp + 0x84], 0x47e845f3
mov dword [esp + 0x88], 0x43e641fc
mov dword [esp + 0x8c], 0x4fe74d93
mov dword [esp + 0x90], 0x4be649fe
mov dword [esp + 0x94], 0x57e955e3
mov dword [esp + 0x98], 0x53b251e3
mov dword [esp + 0x9c], 0x5ff35d89
mov dword [esp + 0xa0], 0x5be959eb
mov dword [esp + 0xa4], 0x27892585
mov dword [esp + 0xa8], 0x23942189
mov dword [esp + 0xac], 0x2fce2d83
mov dword [esp + 0xb0], 0x2b9729fb
mov dword [esp + 0xb4], 0x37853596
mov dword [esp + 0xb8], 0x33813189
mov dword [esp + 0xbc], 0x3f933d80
mov dword [esp + 0xc0], 0x3b9e398d
mov dword [esp + 0xc4], 0x7b405d4
mov dword [esp + 0xc8], 0x3ac01b7
mov dword [esp + 0xcc], 0xfba0da5
mov dword [esp + 0xd0], 0xbb909a5
mov dword [esp + 0xd4], 0x17ef15b0
mov dword [esp + 0xd8], 0x13ed11e3
mov dword [esp + 0xdc], 0x1fdd1de1
mov dword [esp + 0xe0], 0x1bd419d6
mov dword [esp + 0xe4], 0xe71ae514
mov dword [esp + 0xe8], 0xe311e111
mov dword [esp + 0xec], 0xef1fed1d
mov dword [esp + 0xf0], 0xeb46e919
mov dword [esp + 0xf4], 0xf734f507
mov dword [esp + 0xf8], 0xf30af108
mov dword [esp + 0xfc], 0xff0efd3d
mov dword [esp + 0x100], 0xfb0bf908
mov dword [esp + 0x104], 0xc73ac534
mov dword [esp + 0x108], 0xc330c102
mov dword [esp + 0x10c], 0xcf30cd0d
mov dword [esp + 0x110], 0xcb35c936
mov dword [esp + 0x114], 0xd772d52a
mov word [esp + 0x118], 0xd1d0
lea eax, [esp + 0x118]
mov byte [eax + 4], 0
mov word [eax + 2], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa4
ja 0x11a5025
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
mov edx, eax
xor edx, 0x8a50ef94
and eax, 0xa50ef94
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0x1c
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa5
jb 0x11a4fd0
mov dword [esp + 0x38], ebx
lea edi, [esp + 0xe7a]
lea eax, [esp + 0x78]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edx, [esp + 0x118]
mov eax, edx
mov ecx, 1
lea edi, [esp + 0xf1a]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x78], 0xb1658f43
mov dword [esp + 0x7c], 0xb520b355
mov dword [esp + 0x80], 0xb923b725
mov dword [esp + 0x84], 0xbd5cbb29
mov dword [esp + 0x88], 0xa142bf28
mov dword [esp + 0x8c], 0xa549a359
mov dword [esp + 0x90], 0xa942a74a
mov dword [esp + 0x94], 0xad33ab39
mov dword [esp + 0x98], 0x518eaf39
mov dword [esp + 0x9c], 0x55a6539e
mov dword [esp + 0xa0], 0x599357a8
mov dword [esp + 0xa4], 0x5dc85bcf
mov dword [esp + 0xa8], 0x41b95fce
mov dword [esp + 0xac], 0x45d643ae
mov dword [esp + 0xb0], 0x49a147b2
mov dword [esp + 0xb4], 0x4ddf4bda
mov dword [esp + 0xb8], 0x71df4fa7
mov dword [esp + 0xbc], 0x758e739e
mov dword [esp + 0xc0], 0x799d778d
mov dword [esp + 0xc4], 0x7d9e7b96
mov dword [esp + 0xc8], 0x61e77fed
mov dword [esp + 0xcc], 0x654263f5
mov dword [esp + 0xd0], 0x698167ab
mov dword [esp + 0xd4], 0x6dff6bfd
mov dword [esp + 0xd8], 0x11876f8f
mov dword [esp + 0xdc], 0x15fc13fb
mov dword [esp + 0xe0], 0x193617fd
mov dword [esp + 0xe4], 0x1d8d1bed
mov dword [esp + 0xe8], 0x18b1ffe
mov dword [esp + 0xec], 0x597039b
mov dword [esp + 0xf0], 0x9e10790
mov dword [esp + 0xf4], 0xdf60be7
mov dword [esp + 0xf8], 0x319c0ffc
mov dword [esp + 0xfc], 0x35d433a1
mov dword [esp + 0x100], 0x39da37df
mov dword [esp + 0x104], 0x3daf3bdf
mov dword [esp + 0x108], 0x21cf3fc0
mov dword [esp + 0x10c], 0x25b623b7
mov dword [esp + 0x110], 0x29b727c8
mov dword [esp + 0x114], 0x2dc72bb9
mov dword [esp + 0x118], 0xd1f52fd0
mov dword [esp + 0x11c], 0xd50bd305
mov dword [esp + 0x120], 0xd913d703
mov dword [esp + 0x124], 0xdd1cdb1e
mov dword [esp + 0x128], 0xc10adf0c
mov dword [esp + 0x12c], 0xc517c313
mov dword [esp + 0x130], 0xc915c717
mov dword [esp + 0x134], 0xcd2ecb1b
mov dword [esp + 0x138], 0xf10ccf19
mov dword [esp + 0x13c], 0xf52af328
mov dword [esp + 0x140], 0xf926f737
mov dword [esp + 0x144], 0xfd29fb28
mov dword [esp + 0x148], 0xe12aff2c
mov dword [esp + 0x14c], 0xe530e322
mov dword [esp + 0x150], 0xe930e727
mov dword [esp + 0x154], 0xed33eb3e
mov dword [esp + 0x158], 0x9112ef3a
mov word [esp + 0x15c], 0x9390
mov byte [edx + 0x4a], 0
mov dword [edx + 0x46], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xea
ja 0x11a5360
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x878]
mov eax, dword [esp + 0x878]
movzx edx, byte [esp + eax + 0x78]
add ecx, 0xbf7db35d
mov eax, ecx
and eax, edx
xor ecx, edx
lea ecx, [ecx + eax*2]
mov edx, ecx
not edx
and edx, eax
add edx, eax
not eax
and eax, ecx
sub eax, edx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0x2f
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xeb
jb 0x11a5300
lea edi, [esp + 0xf1c]
lea eax, [esp + 0x78]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x15c]
mov ecx, 1
lea edi, [esp + 0x1000]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x78], 0x23bb21dd
mov dword [esp + 0x7c], 0x27b425c7
mov dword [esp + 0x80], 0xdb49d947
mov dword [esp + 0x84], 0xdf38dd43
mov dword [esp + 0x88], 0xd33ed144
mov dword [esp + 0x8c], 0xd730d52b
mov dword [esp + 0x90], 0xcb53c92e
mov dword [esp + 0x94], 0xcf2bcd2f
mov dword [esp + 0x98], 0xc313c12c
mov dword [esp + 0x9c], 0xc718c517
mov dword [esp + 0xa0], 0xfb16f928
mov dword [esp + 0xa4], 0xff6bfd03
mov dword [esp + 0xa8], 0xf36ef164
mov dword [esp + 0xac], 0xf769f56b
mov dword [esp + 0xb0], 0xeb06e973
mov dword [esp + 0xb4], 0xef7ced1c
mov dword [esp + 0xb8], 0xe304e17f
mov dword [esp + 0xbc], 0xe77ae57d
mov dword [esp + 0xc0], 0x9b09997d
mov dword [esp + 0xc4], 0x9f619d70
mov dword [esp + 0xc8], 0x93069105
mov dword [esp + 0xcc], 0x97099508
mov dword [esp + 0xd0], 0x8b118917
mov dword [esp + 0xd4], 0x8f478d60
mov dword [esp + 0xd8], 0x83558153
mov dword [esp + 0xdc], 0x87458551
mov dword [esp + 0xe0], 0xbb7cb97e
mov dword [esp + 0xe4], 0xbf6abd6c
mov dword [esp + 0xe8], 0xb361b161
mov dword [esp + 0xec], 0xb767b565
mov dword [esp + 0xf0], 0xab4ea979
mov dword [esp + 0xf4], 0xaf6cad7f
mov dword [esp + 0xf8], 0xa36aa168
mov dword [esp + 0xfc], 0xa776a565
mov dword [esp + 0x100], 0x5b8b5988
mov dword [esp + 0x104], 0x5f8a5d8c
mov dword [esp + 0x108], 0x53805192
mov dword [esp + 0x10c], 0x57805595
mov dword [esp + 0x110], 0x4b9d499e
mov dword [esp + 0x114], 0x4fa24d9a
mov word [esp + 0x118], 0x4140
lea eax, [esp + 0x118]
mov byte [eax + 4], 0
mov word [eax + 2], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa4
ja 0x11a55df
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
mov edx, eax
xor edx, 0x62ee4378
mov esi, eax
xor esi, 0x1d11bc87
or eax, 0x62ee4378
and eax, esi
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0xa8
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa5
jb 0x11a5580
lea edi, [esp + 0x1146]
lea eax, [esp + 0x78]
mov ebx, edi
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x118]
mov ecx, 1
lea edi, [esp + 0x11e6]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x78], 0x91059f23
mov dword [esp + 0x7c], 0x95009335
mov dword [esp + 0x80], 0x89039705
mov dword [esp + 0x84], 0x8d2c8b19
mov dword [esp + 0x88], 0x81228f18
mov dword [esp + 0x8c], 0x85248331
mov dword [esp + 0x90], 0x791d8722
mov dword [esp + 0x94], 0x7ddd7bdd
mov dword [esp + 0x98], 0x71ad7fd0
mov dword [esp + 0x9c], 0x75ac73a4
mov dword [esp + 0xa0], 0x69da77a4
mov dword [esp + 0xa4], 0x6dfd6bd9
mov dword [esp + 0xa8], 0x61f26ff8
mov dword [esp + 0xac], 0x65f363f1
mov dword [esp + 0xb0], 0x59ca67f9
mov dword [esp + 0xb4], 0x5dc85be8
mov dword [esp + 0xb8], 0x51f85fcd
mov dword [esp + 0xbc], 0x55ce53cb
mov dword [esp + 0xc0], 0x49c357f3
mov dword [esp + 0xc4], 0x4dfb4be4
mov dword [esp + 0xc8], 0x41da4fdb
mov dword [esp + 0xcc], 0x45d343dc
mov dword [esp + 0xd0], 0x39db47d5
mov dword [esp + 0xd4], 0x3df13b94
mov dword [esp + 0xd8], 0x31f73fe9
mov dword [esp + 0xdc], 0x35f733e7
mov dword [esp + 0xe0], 0x29f037f2
mov dword [esp + 0xe4], 0x2dfe2bf8
mov dword [esp + 0xe8], 0x21fb2fff
mov dword [esp + 0xec], 0x25f123f3
mov dword [esp + 0xf0], 0x198227f7
mov dword [esp + 0xf4], 0x1dd81bcd
mov dword [esp + 0xf8], 0x11d61fd4
mov dword [esp + 0xfc], 0x15c213d3
mov dword [esp + 0x100], 0x9c517c4
mov dword [esp + 0x104], 0xdde0bd8
mov dword [esp + 0x108], 0x1dc0fce
mov dword [esp + 0x10c], 0x5d403c3
mov dword [esp + 0x110], 0xf9cf07d2
mov dword [esp + 0x114], 0xfd56fb2e
mov word [esp + 0x118], 0xfffc
mov dword [esp + 0x11a], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa5
ja 0x11a5847
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0x5a214265
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
mov ecx, eax
not ecx
and ecx, 0xf9
and eax, 6
sub eax, ecx
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa6
jb 0x11a57f0
lea eax, [esp + 0x10a4]
lea edx, [esp + 0x78]
mov ecx, 0x28
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edx, [esp + 0x118]
mov ecx, 1
lea edi, [esp + 0x1144]
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x78], 0x13fb11e5
mov dword [esp + 0x7c], 0x1f8c1dff
mov dword [esp + 0x80], 0x1b89198f
mov dword [esp + 0x84], 0x7e80593
mov dword [esp + 0x88], 0x3e6019c
mov dword [esp + 0x8c], 0xfe00dfb
mov dword [esp + 0x90], 0xbe309e6
mov dword [esp + 0x94], 0x37db35d7
mov dword [esp + 0x98], 0x33e331d4
mov dword [esp + 0x9c], 0x3fe83de1
mov dword [esp + 0xa0], 0x3bde39e8
mov dword [esp + 0xa4], 0x27bb25d3
mov dword [esp + 0xa8], 0x23b621bc
mov dword [esp + 0xac], 0x2fb92dbb
mov dword [esp + 0xb0], 0x2bce29c3
mov dword [esp + 0xb4], 0xd744d524
mov dword [esp + 0xb8], 0xd33cd147
mov dword [esp + 0xbc], 0xdf4add35
mov dword [esp + 0xc0], 0xdb49d935
mov dword [esp + 0xc4], 0xc731c520
mov dword [esp + 0xc8], 0xc35ec15d
mov dword [esp + 0xcc], 0xcf59cd58
mov dword [esp + 0xd0], 0xcb21c95f
mov dword [esp + 0xd4], 0xf72ff510
mov dword [esp + 0xd8], 0xf32df123
mov dword [esp + 0xdc], 0xff3dfd21
mov dword [esp + 0xe0], 0xfb34f936
mov dword [esp + 0xe4], 0xe73ae534
mov dword [esp + 0xe8], 0xe331e131
mov dword [esp + 0xec], 0xef3fed3d
mov dword [esp + 0xf0], 0xeb06e939
mov dword [esp + 0xf4], 0x97549547
mov dword [esp + 0xf8], 0x934a9148
mov dword [esp + 0xfc], 0x9f4e9d5d
mov dword [esp + 0x100], 0x9b4b9948
mov dword [esp + 0x104], 0x875a8554
mov dword [esp + 0x108], 0x83508142
mov dword [esp + 0x10c], 0x8f508d4d
mov dword [esp + 0x110], 0x8b558956
mov dword [esp + 0x114], 0xb752b56a
mov word [esp + 0x118], 0xb1b0
lea ecx, [esp + 0x118]
mov byte [ecx + 6], 0
mov dword [ecx + 2], 0
mov dword [esp + 0x878], 0
mov ecx, dword [esp + 0x878]
cmp ecx, 0xa6
ja 0x11a5ac8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x878]
mov edx, dword [esp + 0x878]
movzx edx, byte [esp + edx + 0x78]
mov esi, ecx
xor esi, 0xd64534c4
and ecx, 0xd64534c4
lea ecx, [esi + ecx*2]
xor ecx, edx
mov dword [esp + 0xa78], ecx
mov ecx, dword [esp + 0xa78]
add cl, 0x2c
mov edx, dword [esp + 0x878]
mov byte [esp + edx + 0x78], cl
inc dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
cmp ecx, 0xa7
jb 0x11a5a70
lea edx, [esp + 0x1002]
lea esi, [esp + 0x78]
mov edi, edx
mov ecx, 0x28
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea esi, [esp + 0x118]
lea edi, [esp + 0x10a2]
mov ecx, 1
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea ecx, [esp + 0xe7a]
mov dword [esp + 0x64], ecx
lea ecx, [esp + 0xf1c]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
xor ecx, ecx
nop
nop
mov eax, dword [case.0x11a4c84.26]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x11c8ec4]
mov eax, dword [esp + ecx + 0x64]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x78], 0x715e0f5c
mov dword [esp + 0x7c], 0x75227320
mov dword [esp + 0x80], 0x79267724
mov dword [esp + 0x84], 0x7dc27b28
mov word [esp + 0x88], 0x7f7c
mov dword [esp + 0x8a], 0
mov dword [esp + 0x878], 0
mov ecx, dword [esp + 0x878]
cmp ecx, 0x15
ja 0x11a5bf5
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x878]
mov edx, dword [esp + 0x878]
movzx edx, byte [esp + edx + 0x78]
mov esi, ecx
xor esi, 0x29e004bd
and ecx, 0x29e004bd
lea ecx, [esi + ecx*2]
xor ecx, edx
mov dword [esp + 0xa78], ecx
mov ecx, dword [esp + 0xa78]
add cl, 0x4f
mov edx, dword [esp + 0x878]
mov byte [esp + edx + 0x78], cl
inc dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
cmp ecx, 0x16
jb 0x11a5ba0
movzx ecx, word [eax]
lea esi, [esp + 0x878]
test cx, cx
je 0x11a5c21
add eax, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], cx
add esi, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x11a5c10
mov word [esi], 0
movzx eax, word [esp + 0x78]
test ax, ax
je 0x11a5c51
lea ecx, [esp + 0x7a]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x11a5c40
mov word [esi], 0
mov di, 0x31
xor eax, eax
cmp di, 0x35
setb al
mov dword [esp + 0x40], esi
jmp dword [eax*4 + 0x11c8ecc]
mov word [esi - 2], di
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x878]
push dword [esp + 0x50]
push 0
push 0x20019
push eax
push ecx
call fcn.011c2150
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x11c8ee4]
mov eax, dword [0x11c8edc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [esp + 0x50]
mov word [esp + 0x78], 0x605
mov byte [esp + 0x7a], 7
mov dword [esp + 0x7b], 0
mov dword [esp + 0x878], 0
mov ecx, dword [esp + 0x878]
cmp ecx, 6
ja 0x11a6426
nop
mov ecx, dword [esp + 0x878]
mov edx, dword [esp + 0x878]
movzx edx, byte [esp + edx + 0x78]
mov esi, ecx
xor esi, 0x3ae8cac1
and ecx, 0x3ae8cac1
lea ecx, [esi + ecx*2]
lea esi, [ecx + edx]
and ecx, edx
mov edx, esi
xor edx, ecx
add edx, ecx
not ecx
and ecx, esi
add ecx, ecx
sub ecx, edx
mov dword [esp + 0xa78], ecx
mov ecx, dword [esp + 0xa78]
add cl, 0x3b
mov edx, dword [esp + 0x878]
mov byte [esp + edx + 0x78], cl
inc dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
cmp ecx, 7
jb 0x11a63c0
mov ecx, dword [0x11cd3c4]
test ecx, ecx
je 0x11a6460
mov edx, dword [esp + 0x78]
xor esi, esi
mov edi, dword [0x11cd3c8]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x11a6450
inc esi
cmp ecx, esi
jne 0x11a6440
jmp 0x11a6460
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x11a6488
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
jmp dword [0x11c8f34]
push eax
push 1
push dword [0x11cd3cc]
push ecx
call fcn.011be4e0
add esp, 0x10
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
jmp dword [0x11c8f34]
add edi, ecx
movzx edx, word [eax + 2]
add eax, 2
mov ecx, edi
test dx, dx
je 0x11a64ec
cmp eax, ebp
jae 0x11a64ea
movzx esi, dx
cmp esi, 0x800
mov edx, 3
sbb edx, 0
mov edi, 1
cmp esi, 0x80
jb 0x11a64b0
mov edi, edx
jmp 0x11a64b0
xor edi, edi
jmp 0x11a64ec
mov edi, ecx
lea eax, [edi + 1]
mov dword [esp + 8], eax
push eax
call fcn.0118c9f0
add esp, 4
mov esi, eax
lea eax, [esp + 0x11e8]
cmp eax, ebp
setb al
mov dword [esp + 0x10], esi
test edi, edi
jle 0x11a65e5
mov esi, dword [esp + 0x10]
test al, al
je 0x11a65e5
mov esi, dword [esp + 0x10]
lea eax, [esi + edi]
mov dword [esp + 4], eax
add dword [esp + 8], esi
lea edx, [esp + 0x11ea]
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, word [edx - 2]
test bx, bx
je 0x11a65e5
cmp bx, 0x7f
ja 0x11a6560
mov byte [esi], bl
mov ecx, 1
jmp 0x11a65d0
mov eax, esi
not eax
add eax, dword [esp + 8]
cmp eax, 2
jb 0x11a65a0
movzx ecx, bx
cmp ecx, 0x7ff
ja 0x11a65a0
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [esi], al
and bl, 0x3f
or bl, 0x80
mov byte [esi + 1], bl
mov ecx, 2
jmp 0x11a65d0
xor ecx, ecx
cmp eax, 3
jb 0x11a65d0
movzx ecx, bx
mov eax, ecx
shr eax, 0xc
or al, 0xe0
mov byte [esi], al
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [esi + 1], cl
and bl, 0x3f
or bl, 0x80
mov byte [esi + 2], bl
mov ecx, 3
nop
nop
nop
add esi, ecx
cmp esi, dword [esp + 4]
jae 0x11a65e5
lea eax, [edx + 2]
cmp edx, ebp
mov edx, eax
jb 0x11a6540
mov byte [esi], 0
mov dword [esp + 0x78], 0xdddadbb3
mov dword [esp + 0x7c], 0xc9d9dadf
mov dword [esp + 0x80], 0xccd0d2d3
mov dword [esp + 0x84], 0xf1f58e91
mov dword [esp + 0x88], 0xecebeae8
mov dword [esp + 0x8c], 0xe4f887a9
mov dword [esp + 0x90], 0xeae6e4ee
mov dword [esp + 0x94], 0xe5e2bdfd
mov dword [esp + 0x98], 0x6be0
mov byte [esp + 0x9c], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0x24
ja 0x11a66d0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
mov edx, eax
xor edx, 0x873f8493
and eax, 0x73f8493
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
mov ecx, eax
xor ecx, 0xdf
and eax, 0x20
add eax, eax
sub eax, ecx
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0x25
jb 0x11a6670
lea eax, [esp + 0x78]
mov ecx, dword [esp + 0x21fc]
push edi
mov esi, dword [esp + 0x14]
push esi
push eax
call fcn.0118d680
mov ebx, eax
jmp dword [0x11c8f3c]
and bl, 1
mov eax, ebx
add esp, 0x21e8
pop esi
pop edi
pop ebx
pop ebp
ret
dec esp
sbb al, byte [ecx]
test byte [edx + ebx + 1], 0x95
dec esp
sbb al, byte [ecx]
ror byte [edx + ebx + 1], 0xc0
dec esp
sbb al, byte [ecx]
in al, 0x4c
sbb al, byte [ecx]
invalid