Function at 0x41fc60
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov eax, 0x15fc
call fcn.00408550
push eax
mov dword [ebp - 0x1c], esp
sub esp, 0x800
mov esi, esp
push eax
mov edi, esp
push eax
mov eax, esp
sub esp, 0x400
mov ecx, esp
push eax
mov dword [ebp - 0x44], esp
sub esp, 0x10
mov dword [ebp - 0x80], esp
mov dword [ebp - 0x38], eax
sub esp, 0x18
mov dword [ebp - 0x40], esp
mov dword [ebp - 0x28], ecx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x1608], 0x43f041fc
mov dword [ebp - 0x1604], 0x47014501
mov dword [ebp - 0x1600], 0x4bf94901
mov dword [ebp - 0x15fc], 0x4ffc4df8
mov dword [ebp - 0x15f8], 0xb30eb109
mov dword [ebp - 0x15f4], 0xb705b501
mov dword [ebp - 0x15f0], 0xbb08b9fd
mov dword [ebp - 0x15ec], 0xbdbc
mov byte [ebp - 0x15e8], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x70
xor cl, byte [ebp + eax - 0x1608]
add cl, 0xd0
mov byte [ebp + eax - 0x1608], cl
inc eax
cmp eax, 0x21
jne case.default.0x41fd3e
lea eax, [ebp - 0x4c]
lea ecx, [ebp - 0x1608]
push 0
push 0
push 0x20019
push eax
mov dword [ebp - 0x20], ecx
push ecx
call fcn.0043c760
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x4439f0]
jmp dword [0x443a0c]
jmp eax
xor eax, eax
cmp edi, dword [ebp - 0x60]
setb al
jmp dword [eax*4 + 0x443a30]
mov esi, dword [ebp - 0x5c]
mov eax, esi
inc eax
lea eax, [esi + esi + 2]
jns 0x41fd82
mov eax, 0xffffffff
push eax
call fcn.00408630
add esp, 4
mov dword [ebp - 0x84], esi
lea ecx, [ebp - 0x84]
push ecx
mov dword [ebp - 0x58], eax
push eax
push edi
push dword [ebp - 0x4c]
call fcn.0043c880
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443a40]
jmp dword [0x443af0]
lea eax, [ebp - 0x50]
push dword [ebp - 0x4c]
push 0
push 0x20019
push eax
push dword [ebp - 0x58]
call fcn.0043c760
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443a48]
jmp dword [0x443af0]
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x284], 0xc3abc18d
mov dword [ebp - 0x280], 0xc754c5a7
mov dword [ebp - 0x27c], 0xcb59c9a7
mov dword [ebp - 0x278], 0xcfa8cda3
mov dword [ebp - 0x274], 0xf38ef164
mov dword [ebp - 0x270], 0xf79ff583
mov dword [ebp - 0x26c], 0xfb9ef996
mov dword [ebp - 0x268], 0xff69fd93
mov dword [ebp - 0x264], 0xe3c2e173
mov dword [ebp - 0x260], 0xe783e5a9
mov dword [ebp - 0x25c], 0xeb79e97b
mov dword [ebp - 0x258], 0xef89ed8d
mov dword [ebp - 0x254], 0x137c1179
mov dword [ebp - 0x250], 0x17361573
mov dword [ebp - 0x24c], 0x1b8f196b
mov dword [ebp - 0x248], 0x1f8d1d7e
mov dword [ebp - 0x244], 0x3910199
mov dword [ebp - 0x240], 0x7630590
mov dword [ebp - 0x23c], 0xb760965
mov dword [ebp - 0x238], 0xf9c0d7c
mov dword [ebp - 0x234], 0x3354315f
mov dword [ebp - 0x230], 0x375a355d
mov dword [ebp - 0x22c], 0x3ba9395d
mov dword [ebp - 0x228], 0x3f673d40
mov dword [ebp - 0x224], 0x23752173
mov dword [ebp - 0x220], 0x27652571
mov dword [ebp - 0x21c], 0x2b6c296e
mov dword [ebp - 0x218], 0x2f7a2d7c
mov dword [ebp - 0x214], 0x53015101
mov dword [ebp - 0x210], 0x57075505
mov dword [ebp - 0x20c], 0x5b3e5909
mov dword [ebp - 0x208], 0x5f1c5d0f
mov dword [ebp - 0x204], 0x431a4118
mov dword [ebp - 0x200], 0x47164505
mov dword [ebp - 0x1fc], 0x4b1b4918
mov dword [ebp - 0x1f8], 0x4f1a4d1c
mov dword [ebp - 0x1f4], 0x73207132
mov dword [ebp - 0x1f0], 0x77207535
mov dword [ebp - 0x1ec], 0x7b2d792e
mov dword [ebp - 0x1e8], 0x7f027d2a
mov word [ebp - 0x1e4], 0x6160
mov dword [ebp - 0x1e2], 0
mov eax, 0xace22a50
mov ecx, 0x531dd5af
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [ebp + eax + 0x531dd32c]
mov edi, ecx
and edi, 0x4004d02f
mov edx, eax
and edx, 0xace00bd0
or edx, edi
xor edx, esi
mov ebx, edx
and ebx, 0x6f
add ebx, ebx
xor edx, 0xbf
xor ebx, 0x5e
sub ebx, edx
mov byte [ebp + eax + 0x531dd32c], bl
inc eax
dec ecx
cmp eax, 0xace22af6
jne 0x41ffa0
lea edi, [ebp - 0x3dc]
lea eax, [ebp - 0x284]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea ebx, [ebp - 0x1e4]
mov eax, ebx
lea edi, [ebp - 0x33c]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [ebp - 0x284], 0x43eb410d
mov dword [ebp - 0x280], 0x47d445e7
mov dword [ebp - 0x27c], 0x4bd949e7
mov dword [ebp - 0x278], 0x4fe84de3
mov dword [ebp - 0x274], 0xb30eb124
mov dword [ebp - 0x270], 0xb71fb503
mov dword [ebp - 0x26c], 0xbb1eb916
mov dword [ebp - 0x268], 0xbf29bd13
mov dword [ebp - 0x264], 0xa3c2a133
mov dword [ebp - 0x260], 0xa712a5ea
mov dword [ebp - 0x25c], 0xabe9a914
mov dword [ebp - 0x258], 0xaf3cad39
mov dword [ebp - 0x254], 0x93379102
mov dword [ebp - 0x250], 0x9702953a
mov dword [ebp - 0x24c], 0x9b3f992e
mov dword [ebp - 0x248], 0x9f0d9d0e
mov dword [ebp - 0x244], 0x832d8129
mov dword [ebp - 0x240], 0x873a852a
mov dword [ebp - 0x23c], 0x8b23893f
mov dword [ebp - 0x238], 0x8f2a8d22
mov dword [ebp - 0x234], 0xf365f15f
mov dword [ebp - 0x230], 0xf796f567
mov dword [ebp - 0x22c], 0xfb5ff9b5
mov dword [ebp - 0x228], 0xff6dfd6f
mov dword [ebp - 0x224], 0xe345e141
mov dword [ebp - 0x220], 0xe748e54d
mov dword [ebp - 0x21c], 0xeb8ae94f
mov dword [ebp - 0x218], 0xef7bed5f
mov dword [ebp - 0x214], 0xd341d172
mov dword [ebp - 0x210], 0xd745d54d
mov dword [ebp - 0x20c], 0xdb7fd94c
mov dword [ebp - 0x208], 0xdf62dd71
mov dword [ebp - 0x204], 0xc350c170
mov dword [ebp - 0x200], 0xc760c56b
mov dword [ebp - 0x1fc], 0xcb66c961
mov dword [ebp - 0x1f8], 0xcf5dcd69
mov dword [ebp - 0x1f4], 0x337d318c
mov dword [ebp - 0x1f0], 0x37a235a1
mov dword [ebp - 0x1ec], 0x3b953994
mov dword [ebp - 0x1e8], 0x3f953d93
mov dword [ebp - 0x1e4], 0x237b219c
mov dword [ebp - 0x1e0], 0x27712577
mov dword [ebp - 0x1dc], 0x2b69297d
mov dword [ebp - 0x1d8], 0x2f682d6a
mov dword [ebp - 0x1d4], 0x13461140
mov dword [ebp - 0x1d0], 0x17451545
mov dword [ebp - 0x1cc], 0x1b4b1949
mov dword [ebp - 0x1c8], 0x1fba1d4d
mov dword [ebp - 0x1c4], 0x3400153
mov dword [ebp - 0x1c0], 0x75e055c
mov dword [ebp - 0x1bc], 0xb5a0949
mov dword [ebp - 0x1b8], 0xf5f0d5c
mov dword [ebp - 0x1b4], 0x73267120
mov dword [ebp - 0x1b0], 0x77247536
mov dword [ebp - 0x1ac], 0x7b2c7939
mov dword [ebp - 0x1a8], 0x7f297d2a
mov dword [ebp - 0x1a4], 0x63de6136
mov word [ebp - 0x1a0], 0x6564
mov dword [ebp - 0x19e], 0
mov eax, 0x4d70
nop
nop
nop
movzx edx, byte [ebp + eax - 0x4ff4]
mov ecx, eax
or ecx, edx
lea esi, [eax - 0x4d00]
or esi, eax
and esi, edx
sub ecx, esi
mov edx, ecx
and edx, 0xcd
mov esi, ecx
and esi, 2
mov edi, esi
xor edi, 2
imul edi, edx
or edx, 2
imul edx, esi
xor ecx, 0xcf
add ecx, edi
add ecx, edx
inc cl
mov byte [ebp + eax - 0x4ff4], cl
inc eax
cmp eax, 0x4e5a
jne 0x420260
lea edi, [ebp - 0x4c2]
lea eax, [ebp - 0x284]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [ebp - 0x1a0]
lea edi, [ebp - 0x3de]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [ebp - 0x284], 0x33db31e5
mov dword [ebp - 0x280], 0x3fcc3ddf
mov dword [ebp - 0x27c], 0x3bc939cf
mov dword [ebp - 0x278], 0xc728c533
mov dword [ebp - 0x274], 0xc326c13c
mov dword [ebp - 0x270], 0xcf20cd1b
mov dword [ebp - 0x26c], 0xcb23c926
mov dword [ebp - 0x268], 0xd73bd537
mov dword [ebp - 0x264], 0xd3e3d134
mov dword [ebp - 0x260], 0xdfe8ddef
mov dword [ebp - 0x25c], 0xdb3ed9e8
mov dword [ebp - 0x258], 0xe71be533
mov dword [ebp - 0x254], 0xe316e11c
mov dword [ebp - 0x250], 0xef19ed1b
mov dword [ebp - 0x24c], 0xeb0ee903
mov dword [ebp - 0x248], 0xf704f524
mov dword [ebp - 0x244], 0xf31cf107
mov dword [ebp - 0x240], 0xff0afd15
mov dword [ebp - 0x23c], 0xfb09f915
mov dword [ebp - 0x238], 0x87518560
mov dword [ebp - 0x234], 0x837e817d
mov dword [ebp - 0x230], 0x8f798d78
mov dword [ebp - 0x22c], 0x8b61897f
mov dword [ebp - 0x228], 0x97af9570
mov dword [ebp - 0x224], 0x93ad91a3
mov dword [ebp - 0x220], 0x9f5d9da1
mov dword [ebp - 0x21c], 0x9b549956
mov dword [ebp - 0x218], 0xa79aa594
mov dword [ebp - 0x214], 0xa391a191
mov dword [ebp - 0x210], 0xaf9fad9d
mov dword [ebp - 0x20c], 0xab46a999
mov dword [ebp - 0x208], 0xb774b587
mov dword [ebp - 0x204], 0xb38ab188
mov dword [ebp - 0x200], 0xbf8ebd7d
mov dword [ebp - 0x1fc], 0xbb8bb988
mov dword [ebp - 0x1f8], 0x477a4574
mov dword [ebp - 0x1f4], 0x43704182
mov dword [ebp - 0x1f0], 0x4f704d8d
mov dword [ebp - 0x1ec], 0x4b754976
mov dword [ebp - 0x1e8], 0x57b2556a
mov word [ebp - 0x1e4], 0x5150
mov byte [ebx + 4], 0
mov word [ebx + 2], 0
xor eax, eax
nop
nop
movzx edx, byte [ebp + eax - 0x284]
lea esi, [eax + 0x74]
mov ecx, 0x8b
sub ecx, eax
xor ecx, esi
and ecx, edx
xor ecx, esi
add cl, 0xbc
mov byte [ebp + eax - 0x284], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0xa5
jb 0x420480
lea edi, [ebp - 0x33a]
lea eax, [ebp - 0x284]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [ebp - 0x1e4]
lea edi, [ebp - 0x29a]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [ebp - 0x284], 0x73db71a5
mov dword [ebp - 0x280], 0x7fcc7ddf
mov dword [ebp - 0x27c], 0x7bc979cf
mov dword [ebp - 0x278], 0x47e845f3
mov dword [ebp - 0x274], 0x43e641fc
mov dword [ebp - 0x270], 0x4fe04d9b
mov dword [ebp - 0x26c], 0x4be349e6
mov dword [ebp - 0x268], 0x57fb55f7
mov dword [ebp - 0x264], 0x53a351f4
mov dword [ebp - 0x260], 0x5fa85da0
mov dword [ebp - 0x25c], 0x5bfe59a8
mov dword [ebp - 0x258], 0x279b25f3
mov dword [ebp - 0x254], 0x2396219c
mov dword [ebp - 0x250], 0x2f992d9b
mov dword [ebp - 0x24c], 0x2b8e2983
mov dword [ebp - 0x248], 0x378435e4
mov dword [ebp - 0x244], 0x339c3187
mov dword [ebp - 0x240], 0x3f8a3d95
mov dword [ebp - 0x23c], 0x3b893995
mov dword [ebp - 0x238], 0x7d105a0
mov dword [ebp - 0x234], 0x3be01bd
mov dword [ebp - 0x230], 0xfb90db8
mov dword [ebp - 0x22c], 0xba109bf
mov dword [ebp - 0x228], 0x17ef15b0
mov dword [ebp - 0x224], 0x13ed11e3
mov dword [ebp - 0x220], 0x1fdd1de1
mov dword [ebp - 0x21c], 0x1bd419d6
mov dword [ebp - 0x218], 0xe71ae514
mov dword [ebp - 0x214], 0xe311e111
mov dword [ebp - 0x210], 0xef1fed1d
mov dword [ebp - 0x20c], 0xeb46e919
mov dword [ebp - 0x208], 0xf734f507
mov dword [ebp - 0x204], 0xf30af108
mov dword [ebp - 0x200], 0xff0efd3d
mov dword [ebp - 0x1fc], 0xfb0bf908
mov dword [ebp - 0x1f8], 0xc73ac534
mov dword [ebp - 0x1f4], 0xc330c102
mov dword [ebp - 0x1f0], 0xcf30cd0d
mov dword [ebp - 0x1ec], 0xcb35c936
mov dword [ebp - 0x1e8], 0xd772d52a
mov word [ebp - 0x1e4], 0xd1d0
mov dword [ebp - 0x1e2], 0
mov eax, 0x709494
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [ebp + eax - 0x709718]
mov esi, eax
xor esi, 0x300088
mov ecx, eax
xor ecx, 0x3a306088
or ecx, esi
xor ecx, edx
lea edx, [ecx + ecx]
and edx, 0x36
xor edx, 0x10
xor ecx, 0x93
add ecx, edx
inc cl
mov byte [ebp + eax - 0x709718], cl
inc eax
cmp eax, 0x70953a
jne 0x420690
lea edx, [ebp - 0x606]
lea eax, [ebp - 0x284]
mov edi, edx
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [ebp - 0x1e4]
mov ecx, 1
lea edi, [ebp - 0x566]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [ebp - 0x284], 0x51e54f03
mov dword [ebp - 0x280], 0x55e053f5
mov dword [ebp - 0x27c], 0x59e357e5
mov dword [ebp - 0x278], 0x5dfc5be9
mov dword [ebp - 0x274], 0xa1025fe8
mov dword [ebp - 0x270], 0xa504a3f1
mov dword [ebp - 0x26c], 0xa90da702
mov dword [ebp - 0x268], 0xad0dab0d
mov dword [ebp - 0x264], 0xb1ddaff0
mov dword [ebp - 0x260], 0xb5dcb3c7
mov dword [ebp - 0x25c], 0xb9eab7c4
mov dword [ebp - 0x258], 0xbd0dbbe9
mov dword [ebp - 0x254], 0x8112bf08
mov dword [ebp - 0x250], 0x85338331
mov dword [ebp - 0x24c], 0x89da8729
mov dword [ebp - 0x248], 0x8d388bd8
mov dword [ebp - 0x244], 0x91288f3d
mov dword [ebp - 0x240], 0x953e933b
mov dword [ebp - 0x23c], 0x99239733
mov dword [ebp - 0x238], 0x9dcb9bc4
mov dword [ebp - 0x234], 0xe12a9f2b
mov dword [ebp - 0x230], 0xe553e34c
mov dword [ebp - 0x22c], 0xe94be755
mov dword [ebp - 0x228], 0xed91ebb4
mov dword [ebp - 0x224], 0xf197ef99
mov dword [ebp - 0x220], 0xf5b7f387
mov dword [ebp - 0x21c], 0xf9b0f7b2
mov dword [ebp - 0x218], 0xfd8efb88
mov dword [ebp - 0x214], 0xc18bff8f
mov dword [ebp - 0x210], 0xc5b1c3b3
mov dword [ebp - 0x20c], 0xc962c7b7
mov dword [ebp - 0x208], 0xcd88cbbd
mov dword [ebp - 0x204], 0xd1b6cfb4
mov dword [ebp - 0x200], 0xd5a2d393
mov dword [ebp - 0x1fc], 0xd9a5d7a4
mov dword [ebp - 0x1f8], 0xddaedba8
mov dword [ebp - 0x1f4], 0x21acdf9e
mov dword [ebp - 0x1f0], 0x25542363
mov dword [ebp - 0x1ec], 0x295f2752
mov dword [ebp - 0x1e8], 0x2d762b5e
mov word [ebp - 0x1e4], 0x2f2c
mov byte [ebx + 6], 0
mov dword [ebx + 2], 0
xor eax, eax
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, eax
and edi, 0xda
mov esi, ecx
xor esi, 0xd43a716d
add esi, edi
lea edi, [esi*2 + 1]
mov ebx, esi
sub ebx, edi
mov edi, esi
not edi
lea edi, [edi + esi*2]
inc edi
lea edi, [ebx + edi*2]
inc edi
movzx ebx, byte [ebp + ecx - 0x284]
and edi, ebx
or esi, ebx
lea ebx, [esi + esi]
not ebx
add ebx, esi
or ebx, edi
mov esi, 0xdadbc8dd
sub esi, ebx
mov edi, esi
and edi, 1
xor esi, 1
lea ebx, [esi + edi*2]
mov byte [ebp + ecx - 0x284], bl
inc ecx
add eax, 2
cmp ecx, 0xa7
jne 0x4208b0
lea eax, [ebp - 0x564]
lea esi, [ebp - 0x284]
mov ecx, 0x28
mov edi, eax
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea esi, [ebp - 0x1e4]
lea edi, [ebp - 0x4c4]
mov ecx, 1
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea ecx, [ebp - 0x3dc]
mov dword [ebp - 0x298], ecx
lea ecx, [ebp - 0x4c2]
mov dword [ebp - 0x294], ecx
lea ecx, [ebp - 0x33a]
mov dword [ebp - 0x290], ecx
mov dword [ebp - 0x28c], edx
mov dword [ebp - 0x288], eax
xor ebx, ebx
mov eax, dword [case.0x41fd3e.26]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp ebx, 0x14
setne al
jmp dword [eax*4 + 0x443a60]
mov eax, dword [ebp + ebx - 0x298]
mov dword [ebp - 0x78], 0x11ce1fcc
mov dword [ebp - 0x74], 0x15c213c0
mov dword [ebp - 0x70], 0x9c617c4
mov dword [ebp - 0x6c], 0xde20bd8
mov word [ebp - 0x68], 0xf0c
lea ecx, [ebp - 0x66]
mov byte [ecx + 2], 0
mov word [ecx], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0xc5
xor dl, byte [ebp + ecx - 0x78]
add dl, 0x27
mov byte [ebp + ecx - 0x78], dl
inc ecx
cmp ecx, 0x15
jne 0x4209e0
movzx ecx, word [eax]
lea edx, [ebp - 0x284]
test cx, cx
je 0x420a21
add eax, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x420a10
mov word [edx], 0
movzx eax, word [ebp - 0x78]
test ax, ax
je 0x420a51
lea ecx, [ebp - 0x76]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x420a40
mov word [edx], 0
mov cx, 0x31
mov eax, dword [case.0x41fd3e.31]
mov dword [ebp - 0x2c], edx
jmp case.0x41fd3e.29
jmp eax
xor eax, eax
cmp cx, 0x35
setb al
jmp dword [eax*4 + 0x443a78]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x284], 0x888b8a8d
mov dword [ebp - 0x280], 0
mov ecx, 0x23
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [ebp + ecx - 0x2a7]
mov edx, esi
and edx, 0x50
add edx, edx
xor esi, ecx
xor esi, 0xaf
sub edx, esi
mov byte [ebp + ecx - 0x2a7], dl
inc ecx
cmp ecx, 0x2b
jne 0x421040
mov ecx, dword [0x4497f8]
test ecx, ecx
je 0x421098
mov edx, dword [ebp - 0x284]
xor esi, esi
mov edi, dword [0x4497fc]
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x421090
inc esi
cmp ecx, esi
jne 0x421080
jmp 0x421098
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x4210a1
mov edi, dword [ebp - 0x54]
jmp dword [0x443af0]
push eax
push 4
push ecx
push dword [0x449800]
call fcn.00438810
add esp, 0x10
mov edi, dword [ebp - 0x54]
jmp dword [0x443af0]
mov eax, dword [ebp - 0x20]
mov word [eax], 0
mov ebx, dword [ebp - 0x34]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x443a38]
movzx ebx, word [ebp - 0x1608]
xor esi, esi
test bx, bx
je 0x42112b
lea eax, [ebp - 0x1606]
mov ecx, ebx
jmp 0x4210fc
inc esi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x42112b
cmp cx, 0x7f
jbe 0x4210f0
movzx edx, cx
cmp edx, 0x7ff
ja 0x421120
add esi, 2
jmp 0x4210f1
cmp cx, 0xffff
je 0x4210f1
add esi, 3
jmp 0x4210f1
mov dword [ebp - 0x14], esi
lea eax, [esi + 1]
push eax
call fcn.00408630
add esp, 4
mov edi, eax
mov dword [ebp - 0x10], eax
test bx, bx
je 0x421274
mov edi, dword [ebp - 0x10]
cmp dword [ebp - 0x14], 0
je 0x421274
lea edx, [ebp - 0x1608]
mov ecx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, bx
lea esi, [edx + 2]
cmp bx, 0x7f
ja 0x421190
mov byte [edi], bl
lea eax, [edi + 1]
jmp 0x421220
cmp ebx, 0x7ff
ja 0x4211c0
cmp ecx, 2
jb 0x4211c0
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [edi], al
and bl, 0x3f
or bl, 0x80
lea eax, [edi + 2]
mov byte [edi + 1], bl
jmp 0x421220
mov eax, ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x42123a
cmp ecx, 4
jb 0x42123a
shl ebx, 0xa
movzx esi, word [edx + 2]
add edx, 4
lea eax, [ebx + esi]
add eax, 0xfca02400
mov ebx, eax
shr ebx, 0x12
add bl, 0xf0
mov byte [edi], bl
mov ebx, eax
shr ebx, 0xc
and bl, 0x3f
or bl, 0x80
mov byte [edi + 1], bl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 2], al
mov bl, 0x3f
mov eax, esi
sub bl, al
and bl, 0x3f
xor bl, 0xbf
lea eax, [edi + 4]
mov byte [edi + 3], bl
mov esi, edx
nop
nop
nop
nop
nop
add ecx, edi
sub ecx, eax
mov edx, esi
mov edi, eax
movzx ebx, word [edx]
test bx, bx
je 0x421274
test ecx, ecx
jne 0x421170
jmp 0x421274
movzx eax, ax
cmp eax, 0xdc00
jne 0x421248
mov edx, esi
jmp 0x421228
cmp ecx, 3
jb 0x421270
mov eax, ebx
shr eax, 0xc
or al, 0xe0
mov byte [edi], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 1], al
and bl, 0x3f
or bl, 0x80
lea eax, [edi + 3]
mov byte [edi + 2], bl
jmp 0x421220
mov eax, edi
jmp 0x421220
mov byte [edi], 0
mov edx, dword [ebp - 0x7c]
mov dword [edx], 0x859a9be3
mov dword [edx + 4], 0x99898a87
mov dword [edx + 8], 0x84808283
mov dword [edx + 0xc], 0x818de6c1
mov dword [edx + 0x10], 0x948b8a98
mov dword [edx + 0x14], 0x8c88efc9
mov dword [edx + 0x18], 0xaaaeac96
mov dword [edx + 0x1c], 0xbdb2f5b5
mov dword [edx + 0x20], 0xbb0
xor eax, eax
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x47
xor cl, byte [edx + eax]
add cl, 0x9d
mov byte [edx + eax], cl
inc eax
cmp eax, 0x24
jne 0x4212c0
mov ecx, dword [ebp + 8]
push dword [ebp - 0x14]
mov esi, dword [ebp - 0x10]
push esi
push edx
call fcn.004094e0
mov ebx, eax
jmp dword [0x443af8]
and bl, 1
jmp 0x4212fc
xor ebx, ebx
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [ebp - 0x5c]
lea ecx, [ebp - 0x60]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [ebp - 0x4c]
call fcn.0043cb50
add esp, 0x24
lea eax, [ebp - 0x5c]
lea ecx, [ebp - 0x60]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [ebp - 0x4c]
call fcn.0043cb50
add esp, 0x24
jmp dword [0x443a10]
not eax
shr eax, 0x1f
mov dword [ebp - 0x18], esi
jmp dword [eax*4 + 0x443a18]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x34], 0
mov eax, dword [case.0x41fd3e.13]
xor edi, edi
jmp case.0x41fd3e.11
int3
std
inc ecx
add dl, bh
adc al, byte [edx]
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
outsd dx, dword [esi]
adc eax, dword [edx]
push es
adc eax, dword [edx]
and eax, 0x4a004213
adc eax, dword [edx]
push es
adc eax, dword [edx]
cli
adc al, byte [edx]
pop ecx
adc eax, dword [edx]
pushal
std
inc ecx
add byte [eax - 3], ah
inc ecx
add byte [edx - 3], ah
inc ecx
add byte [eax - 3], ah
inc ecx
add byte [eax + edx - 0x28effbe], bh
inc ecx
add ch, dh
adc al, byte [edx]
aad 0x10
inc edx
add byte [ebp + edi*8 - 0x245ffbf], dh
inc ecx
add bh, bl
std
inc ecx
add ch, ah
std
inc ecx
add byte [eax - 0x6fffbdf7], dl
or dword [edx], eax
nop
or dword [edx], eax
xchg edx, eax
or dword [edx], eax
sbb edx, dword [eax]
inc edx
add byte [ecx + 0x70004209], ah
or al, byte [edx]
jo 0x443a78
inc edx
add byte [edx + 0xa], dh
inc edx
add byte [eax + 0xa], dh
inc edx
add byte [esi], cl
push cs
adc byte [edx], al
or byte [edx], 0x42
add al, al
or al, byte [edx]
mov byte [edx], cl
inc edx
add al, al
or al, byte [edx]
in eax, dx
or al, byte [edx]
or al, byte fs:[edx]
stc
or al, byte [edx]
push eax
or eax, dword [edx]
xor byte [ebx], cl
inc edx
add byte [eax + 0xb], dl
inc edx
add byte [edi + 0xb], dh
inc edx
add byte [eax + 0xf], bh
inc edx
add byte [esi - 0x5bffbdf5], al
or eax, dword [edx]
lodsd eax, dword [esi]
or eax, dword [edx]
or al, 0x42
add byte [ebp + ecx + 0xc730042], cl
inc edx
add byte [eax - 0x79ffbdf4], al
or al, 0x42
add byte [eax - 0x6affbdf4], al
or al, 0x42
add byte [ebp + 0x5400420c], ah
cmovb eax, dword [eax]
jns 0x443aec
inc edx
add byte [eax + 0xf], dl
inc edx
add byte [eax + 0xf], dl
inc edx
add byte [edi + ecx + 0x42], dl
add byte [eax + 0xf], dl
inc edx
add byte [ebx - 3], cl
push eax
cmovb eax, dword [eax]
dec ebx
std
inc ecx
add byte [esi - 3], dl
inc ecx
add ah, ch
adc al, byte [edx]
cmc
adc al, byte [edx]
invalid