Function at 0x427300
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x21e8
call fcn.00408290
mov dword [esp + 0x11e8], 0x693c6b38
mov dword [esp + 0x11ec], 0x6d276f23
mov dword [esp + 0x11f0], 0x71277323
mov dword [esp + 0x11f4], 0x75207724
mov dword [esp + 0x11f8], 0x79267b2b
mov dword [esp + 0x11fc], 0x7d2b7f23
mov dword [esp + 0x1200], 0x81d48337
mov word [esp + 0x1204], 0x8780
mov dword [esp + 0x1206], 0
mov word [esp + 0x120a], 0
xor eax, eax
nop
nop
nop
nop
mov ecx, eax
add cl, 0x67
xor cl, byte [esp + eax + 0x11e8]
add cl, 0xfd
mov byte [esp + eax + 0x11e8], cl
inc eax
cmp eax, 0x24
jne case.default.0x425e3d
lea eax, [esp + 0x30]
lea ebp, [esp + 0x11e8]
push 0
push 0
push 0x20019
push eax
push ebp
call fcn.00440bb0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x44761c]
lea eax, [esp + 0x60]
lea ecx, [esp + 0x48]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x50]
call fcn.00440ff0
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447634]
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x3c], 0
cmp ecx, dword [esp + 0x48]
setb al
xor edi, edi
jmp dword [eax*4 + 0x44763c]
mov word [ebp], 0
mov eax, dword [esp + 0x3c]
mov ecx, eax
and cl, 1
movzx ecx, cl
jmp dword [ecx*4 + 0x447644]
movzx ecx, word [esp + 0x11e8]
xor ebx, ebx
mov edi, 0
test cx, cx
je 0x42756b
xor edi, edi
lea eax, [esp + 0x11ea]
jmp 0x42753c
push ebx
call fcn.004083c0
add esp, 4
inc edi
xor eax, eax
cmp edi, dword [esp + 0x48]
setb al
jmp dword [eax*4 + 0x44763c]
mov esi, dword [esp + 0x60]
mov eax, esi
and eax, 1
mov ecx, esi
xor ecx, 1
lea ecx, [ecx + eax*2]
lea eax, [ecx + ecx]
test ecx, ecx
jns 0x425f27
mov eax, 0xffffffff
push eax
call fcn.004083b0
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.00440d00
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44764c]
jmp dword [0x4476cc]
lea eax, [esp + 0x44]
push dword [esp + 0x30]
push 0
push 0x20019
push eax
push ebx
call fcn.00440bb0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447654]
jmp dword [0x4476cc]
mov dword [esp + 0x34], edi
mov dword [esp + 0x78], 0x39ad3b8f
mov dword [esp + 0x7c], 0x25b82795
mov dword [esp + 0x80], 0x21bf23b5
mov dword [esp + 0x84], 0x2d842fb1
mov dword [esp + 0x88], 0x298e2bb0
mov dword [esp + 0x8c], 0x15811791
mov dword [esp + 0x90], 0x11be1386
mov dword [esp + 0x94], 0x1d871f81
mov dword [esp + 0x98], 0x19fa1b81
mov dword [esp + 0x9c], 0x5ad07ab
mov dword [esp + 0xa0], 0x19f0399
mov dword [esp + 0xa4], 0xda70faf
mov dword [esp + 0xa8], 0x9980b9b
mov dword [esp + 0xac], 0xf516f7a1
mov dword [esp + 0xb0], 0xf169f349
mov dword [esp + 0xb4], 0xfd63ff5e
mov dword [esp + 0xb8], 0xf967fb7b
mov dword [esp + 0xbc], 0xe54de764
mov dword [esp + 0xc0], 0xe146e377
mov dword [esp + 0xc4], 0xed70ef50
mov dword [esp + 0xc8], 0xe940eb7d
mov dword [esp + 0xcc], 0xd542d77f
mov dword [esp + 0xd0], 0xd14fd37f
mov dword [esp + 0xd4], 0xdd19df74
mov dword [esp + 0xd8], 0xd903db01
mov dword [esp + 0xdc], 0xc50bc703
mov dword [esp + 0xe0], 0xc108c30e
mov dword [esp + 0xe4], 0xcd12cf10
mov dword [esp + 0xe8], 0xc917cb13
mov dword [esp + 0xec], 0xb569b717
mov dword [esp + 0xf0], 0xb11eb36b
mov dword [esp + 0xf4], 0xbd70bf6d
mov dword [esp + 0xf8], 0xb962bb64
mov dword [esp + 0xfc], 0xa576a777
mov dword [esp + 0x100], 0xa17da374
mov dword [esp + 0x104], 0xad72af70
mov dword [esp + 0x108], 0xa974ab62
mov dword [esp + 0x10c], 0x954c9767
mov dword [esp + 0x110], 0x914b934e
mov dword [esp + 0x114], 0x9d3a9f4a
mov word [esp + 0x118], 0x9b9c
lea eax, [esp + 0x118]
mov byte [eax + 6], 0
mov dword [eax + 2], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xcb
xor cl, byte [esp + eax + 0x78]
add cl, 9
mov byte [esp + eax + 0x78], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0xa7
jb 0x426170
lea edi, [esp + 0x91c]
lea eax, [esp + 0x78]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x118]
lea edi, [esp + 0x9bc]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x78], 0xf145ffa3
mov dword [esp + 0x7c], 0xf540f355
mov dword [esp + 0x80], 0xc943f745
mov dword [esp + 0x84], 0xcd6ccb79
mov dword [esp + 0x88], 0xc162cf78
mov dword [esp + 0x8c], 0xc579c369
mov dword [esp + 0x90], 0xd962c77a
mov dword [esp + 0x94], 0xdd53db69
mov dword [esp + 0x98], 0xd1bedf69
mov dword [esp + 0x9c], 0xd586d38e
mov dword [esp + 0xa0], 0x2993d778
mov dword [esp + 0xa4], 0x2d982b9f
mov dword [esp + 0xa8], 0x21892f9e
mov dword [esp + 0xac], 0x2596239e
mov dword [esp + 0xb0], 0x39812772
mov dword [esp + 0xb4], 0x3d8f3b8a
mov dword [esp + 0xb8], 0x318f3f87
mov dword [esp + 0xbc], 0x359e338e
mov dword [esp + 0xc0], 0x98d379d
mov dword [esp + 0xc4], 0xdae0bb6
mov dword [esp + 0xc8], 0x1870fbd
mov dword [esp + 0xcc], 0x56203b5
mov dword [esp + 0xd0], 0x19a1075b
mov dword [esp + 0xd4], 0x1daf1bad
mov dword [esp + 0xd8], 0x11a71fbf
mov dword [esp + 0xdc], 0x15ac13ab
mov dword [esp + 0xe0], 0x697617ad
mov dword [esp + 0xe4], 0x6ddd6b3d
mov dword [esp + 0xe8], 0x61db6fce
mov dword [esp + 0xec], 0x65d763eb
mov dword [esp + 0xf0], 0x79c167d0
mov dword [esp + 0xf4], 0x7dd67bc7
mov dword [esp + 0xf8], 0x71cc7f2c
mov dword [esp + 0xfc], 0x75d473c1
mov dword [esp + 0x100], 0x49ca77cf
mov dword [esp + 0x104], 0x4dff4bef
mov dword [esp + 0x108], 0x411f4fe0
mov dword [esp + 0x10c], 0x45f643f7
mov dword [esp + 0x110], 0x59f747f8
mov dword [esp + 0x114], 0x5de75be9
mov dword [esp + 0x118], 0x51155ff0
mov dword [esp + 0x11c], 0x551b5325
mov dword [esp + 0x120], 0xa9135723
mov dword [esp + 0x124], 0xadecabee
mov dword [esp + 0x128], 0xa1daafdc
mov dword [esp + 0x12c], 0xa5d7a3d3
mov dword [esp + 0x130], 0xb9d5a7d7
mov dword [esp + 0x134], 0xbd1ebbcb
mov dword [esp + 0x138], 0xb1fcbfc9
mov dword [esp + 0x13c], 0xb5fab3f8
mov dword [esp + 0x140], 0x89c6b7f7
mov dword [esp + 0x144], 0x8df98bf8
mov dword [esp + 0x148], 0x81fa8ffc
mov dword [esp + 0x14c], 0x85f083c2
mov dword [esp + 0x150], 0x99f087c7
mov dword [esp + 0x154], 0x9dd39bee
mov dword [esp + 0x158], 0x91329fea
mov word [esp + 0x15c], 0x9390
mov dword [esp + 0x15e], 0
mov eax, 0x9c506a55
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x63af9623]
xor ecx, eax
mov edx, ecx
and edx, 1
or ecx, 1
add ecx, edx
add cl, 0x56
mov byte [esp + eax + 0x63af9623], cl
inc eax
cmp eax, 0x9c506b3f
jne 0x426450
lea edi, [esp + 0x9be]
lea eax, [esp + 0x78]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x15c]
lea edi, [esp + 0xaa2]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x78], 0x219d2773
mov dword [esp + 0x7c], 0x3d90239d
mov dword [esp + 0x80], 0x39b33f8d
mov dword [esp + 0x84], 0x35843b89
mov dword [esp + 0x88], 0x319237b8
mov dword [esp + 0x8c], 0xd8c3361
mov dword [esp + 0x90], 0x9b50fb2
mov dword [esp + 0x94], 0x5b50bb5
mov dword [esp + 0x98], 0x17507a0
mov dword [esp + 0x9c], 0x1d74034d
mov dword [esp + 0xa0], 0x19ba1f6c
mov dword [esp + 0xa4], 0x15951b49
mov dword [esp + 0xa8], 0x11a21798
mov dword [esp + 0xac], 0x6da313a1
mov dword [esp + 0xb0], 0x69ca6fd9
mov dword [esp + 0xb4], 0x65d86b38
mov dword [esp + 0xb8], 0x61d867d5
mov dword [esp + 0xbc], 0x7dd663db
mov dword [esp + 0xc0], 0x79f37fc3
mov dword [esp + 0xc4], 0x752b7bdc
mov dword [esp + 0xc8], 0x71fa77fb
mov dword [esp + 0xcc], 0x4dc373c4
mov dword [esp + 0xd0], 0x49fb4ffd
mov dword [esp + 0xd4], 0x45014bec
mov dword [esp + 0xd8], 0x410f4709
mov dword [esp + 0xdc], 0x5d1f430f
mov dword [esp + 0xe0], 0x59005f02
mov dword [esp + 0xe4], 0x55165b28
mov dword [esp + 0xe8], 0x511b5727
mov dword [esp + 0xec], 0xad215323
mov dword [esp + 0xf0], 0xa912afdf
mov dword [esp + 0xf4], 0xa5e8abe5
mov dword [esp + 0xf8], 0xa1eea7ec
mov dword [esp + 0xfc], 0xbdd2a3e3
mov dword [esp + 0x100], 0xb9cdbfcc
mov dword [esp + 0x104], 0xb5f6bbc8
mov dword [esp + 0x108], 0xb1c4b7f6
mov dword [esp + 0x10c], 0x8dfcb3f3
mov dword [esp + 0x110], 0x89c78fc2
mov dword [esp + 0x114], 0x852e8bc6
mov word [esp + 0x118], 0x8784
lea eax, [esp + 0x118]
mov word [eax + 6], 0
mov dword [eax + 2], 0
mov eax, 0xad28a209
mov ecx, 0x52d75df6
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0x52d75e6f]
mov edi, ecx
xor edi, 0x42d54099
mov edx, eax
and edx, 0xa4000099
or edx, edi
xor edx, esi
mov esi, edx
and esi, 0x52
add esi, esi
xor esi, 0x84
xor edx, 0xb4
add edx, esi
inc dl
mov byte [esp + eax + 0x52d75e6f], dl
inc eax
dec ecx
cmp eax, 0xad28a2b1
jne 0x426680
lea edi, [esp + 0x87a]
lea eax, [esp + 0x78]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x118]
lea edi, [esp + 0x91a]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x78], 0x8f378955
mov dword [esp + 0x7c], 0x83348d2b
mov dword [esp + 0x80], 0x87318133
mov dword [esp + 0x84], 0x9b208537
mov dword [esp + 0x88], 0x9f32992c
mov dword [esp + 0x8c], 0x93289d4f
mov dword [esp + 0x90], 0x972f912a
mov dword [esp + 0x94], 0x6bcf9533
mov dword [esp + 0x98], 0x6f9f69c4
mov dword [esp + 0x9c], 0x63906d98
mov dword [esp + 0xa0], 0x67ca6190
mov dword [esp + 0xa4], 0x7bcf65b7
mov dword [esp + 0xa8], 0x7fc279cc
mov dword [esp + 0xac], 0x73c17dcf
mov dword [esp + 0xb0], 0x77da71cf
mov dword [esp + 0xb4], 0x4bfc75a4
mov dword [esp + 0xb8], 0x4ff449fb
mov dword [esp + 0xbc], 0x43fe4df5
mov dword [esp + 0xc0], 0x47f141e5
mov dword [esp + 0xc4], 0x5b8945e8
mov dword [esp + 0xc8], 0x5fea59ed
mov dword [esp + 0xcc], 0x53e15de0
mov dword [esp + 0xd0], 0x57e951e3
mov dword [esp + 0xd4], 0x2be355f8
mov dword [esp + 0xd8], 0x2fe529df
mov dword [esp + 0xdc], 0x23e52dd9
mov dword [esp + 0xe0], 0x27fc21fa
mov dword [esp + 0xe4], 0x3bce25d4
mov dword [esp + 0xe8], 0x3fc939c9
mov dword [esp + 0xec], 0x33c33dcd
mov dword [esp + 0xf0], 0x379231c1
mov dword [esp + 0xf4], 0xbcc35c3
mov dword [esp + 0xf8], 0xfc609c0
mov dword [esp + 0xfc], 0x3f20dcd
mov dword [esp + 0x100], 0x7f701f0
mov dword [esp + 0x104], 0x1bee05f4
mov dword [esp + 0x108], 0x1fe819de
mov dword [esp + 0x10c], 0x13d81ddd
mov dword [esp + 0x110], 0x17dd11da
mov dword [esp + 0x114], 0xeb4615de
mov word [esp + 0x118], 0xe9e8
lea eax, [esp + 0x118]
mov word [eax + 6], 0
mov dword [eax + 2], 0
xor eax, eax
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
and esi, 0x1c4
mov edx, ecx
xor edx, 0xe7e17ee2
add edx, esi
lea esi, [edx + edx]
not esi
add esi, edx
and esi, 0x79
and edx, 0x86
or edx, esi
xor dl, byte [esp + ecx + 0x78]
xor dl, 0x79
add dl, 0x96
mov byte [esp + ecx + 0x78], dl
inc ecx
add eax, 2
cmp ecx, 0xa8
jne 0x4268d0
mov dword [esp + 0x4c], ebx
lea eax, [esp + 0xb46]
lea edx, [esp + 0x78]
mov edi, eax
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edx, [esp + 0x118]
lea edi, [esp + 0xbe6]
mov ecx, 1
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x78], 0x59e55b17
mov dword [esp + 0x7c], 0x5de85ffd
mov dword [esp + 0x80], 0x51e753ed
mov dword [esp + 0x84], 0x55ec57e1
mov dword [esp + 0x88], 0xa906abe0
mov dword [esp + 0x8c], 0xad14aff9
mov dword [esp + 0x90], 0xa11da316
mov dword [esp + 0x94], 0xa51da705
mov dword [esp + 0x98], 0xb9cdbb08
mov dword [esp + 0x9c], 0xbdccbff3
mov dword [esp + 0xa0], 0xb11eb3cc
mov dword [esp + 0xa4], 0xb53db7e1
mov dword [esp + 0xa8], 0x89368b00
mov dword [esp + 0xac], 0x8d3f8f39
mov dword [esp + 0xb0], 0x812e8331
mov dword [esp + 0xb4], 0x853087d0
mov dword [esp + 0xb8], 0x99209b35
mov dword [esp + 0xbc], 0x9d229f27
mov dword [esp + 0xc0], 0x91279327
mov dword [esp + 0xc4], 0x95c7973c
mov dword [esp + 0xc8], 0xe95eeb1f
mov dword [esp + 0xcc], 0xed5fef54
mov dword [esp + 0xd0], 0xe15fe35d
mov dword [esp + 0xd4], 0xe5a9e74c
mov dword [esp + 0xd8], 0xf9b3fb91
mov dword [esp + 0xdc], 0xfdbbffb3
mov dword [esp + 0xe0], 0xf1a8f3a6
mov dword [esp + 0xe4], 0xf582f780
mov dword [esp + 0xe8], 0xc9bfcb83
mov dword [esp + 0xec], 0xcdb9cfbf
mov dword [esp + 0xf0], 0xc166c3bb
mov dword [esp + 0xf4], 0xc580c7b5
mov dword [esp + 0xf8], 0xd992db8c
mov dword [esp + 0xfc], 0xddaedf9f
mov dword [esp + 0x100], 0xd1a5d3ac
mov dword [esp + 0x104], 0xd5a2d7a0
mov dword [esp + 0x108], 0x295c2b92
mov dword [esp + 0x10c], 0x2d642f6f
mov dword [esp + 0x110], 0x216b2366
mov dword [esp + 0x114], 0x258a276a
mov word [esp + 0x118], 0x3b24
lea ecx, [esp + 0x118]
mov byte [ecx + 6], 0
mov dword [ecx + 2], 0
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, ecx
and esi, 0x1de
mov edi, edx
xor edi, 0xbd078cef
mov ebx, esi
and ebx, edi
xor edi, esi
lea ebx, [edi + ebx*2]
xor bl, byte [esp + edx + 0x78]
add bl, 0x55
mov byte [esp + edx + 0x78], bl
inc edx
add ecx, 2
cmp edx, 0xa7
jne case.default.0x426bbd
lea edx, [esp + 0xaa4]
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]
mov ecx, 1
lea edi, [esp + 0xb44]
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea ecx, [esp + 0x91c]
mov dword [esp + 0x64], ecx
lea ecx, [esp + 0x9be]
mov dword [esp + 0x68], ecx
lea ecx, [esp + 0x87a]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
xor ecx, ecx
xor eax, eax
cmp ecx, 0x14
setne al
mov dword [esp + 8], 0
jmp dword [eax*4 + 0x44765c]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x78], 0x9c9d9a9b
lea ecx, [esp + 0x118]
mov byte [ecx - 0x9a], 0
mov word [ecx - 0x9c], 0
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, esi
xor edx, 0x26
lea ecx, [esi + esi]
and ecx, 2
mov ebx, ecx
sub ebx, edx
xor bl, byte [esp + esi + 0x78]
add bl, 0xbe
mov byte [esp + esi + 0x78], bl
xor esi, 1
add esi, ecx
cmp esi, 7
jb 0x426c00
mov ecx, dword [0x44cd58]
test ecx, ecx
mov ebx, dword [esp + 0x4c]
je 0x427500
mov edx, dword [esp + 0x78]
xor esi, esi
mov edi, dword [0x44cd5c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x4274f4
inc esi
cmp ecx, esi
jne 0x426c50
jmp 0x427500
mov edx, dword [esp + 8]
add edx, 4
xor eax, eax
mov ecx, edx
mov dword [esp + 8], edx
cmp edx, 0x14
setne al
jmp dword [eax*4 + 0x44765c]
jmp dword [0x447664]
mov ecx, dword [esp + 0x28]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
jmp dword [eax*4 + 0x447674]
mov dword [esp + 0x28], ecx
mov word [edi - 2], cx
mov esi, dword [esp + 0x44]
jmp dword [0x447680]
inc esi
lea eax, [esp + 0xc]
lea edi, [esp + 0xde8]
lea ecx, [esp + 0x54]
lea edx, [esp + 0x58]
lea ebp, [esp + 0x78]
push eax
push edi
push ecx
push edx
push ebp
push esi
push dword [esp + 0x44]
call fcn.004412d0
add esp, 0x1c
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447694]
test byte [esp + 0x40], 1
sete al
mov edx, dword [esp + 0x54]
cmp edx, 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44769c]
xor eax, eax
cmp edx, 3
sete al
jmp dword [eax*4 + 0x4476bc]
mov dword [esp + 0x50], edx
mov dword [esp], esi
mov dword [esp + 0x10], 0x49d74bf3
mov dword [esp + 0x14], 0x45d747d5
mov dword [esp + 0x18], 0x41d043cf
mov dword [esp + 0x1c], 0xbdbebfcc
mov word [esp + 0x20], 0
mov ecx, 0x2359e5f3
mov edx, 0x5ca61a0c
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx - 0x2359e5e3]
mov esi, edx
and esi, 0x50a41a0c
mov ebx, ecx
and ebx, 0x201965f3
or ebx, esi
xor eax, 0xd3e49a0c
mov esi, eax
and esi, ebx
add eax, ebx
add esi, esi
sub eax, esi
add al, 0x41
mov byte [esp + ecx - 0x2359e5e3], al
inc ecx
dec edx
cmp ecx, 0x2359e605
jne 0x426d80
movzx esi, word [esp + 0x10]
test si, si
je 0x426e0c
lea ebx, [esp + 0x78]
lea edx, [esp + 0x10]
mov ebp, ebx
jmp 0x426de8
movzx esi, word [edx]
test si, si
je 0x426e0c
movzx eax, word [ebx]
test ax, ax
je 0x426e0a
add ebx, 2
add edx, 2
lea ecx, [ebp + 2]
cmp ax, si
je 0x426e02
mov ebp, ecx
mov ebx, ecx
je 0x426de0
lea edx, [esp + 0x10]
jmp 0x426de0
xor ebp, ebp
xor eax, eax
test ebp, ebp
setne al
jmp dword [eax*4 + 0x4476a4]
xor eax, eax
cmp dword [esp + 0x50], 3
sete al
mov esi, dword [esp]
jmp dword [eax*4 + 0x4476bc]
mov dword [esp], esi
mov dword [esp + 0x10], 0x298d2b74
mov dword [esp + 0x14], 0x2d9b2f9d
mov dword [esp + 0x18], 0x31833395
mov dword [esp + 0x1c], 0x35923786
mov word [esp + 0x20], 0x3b34
lea eax, [esp + 0x22]
mov byte [eax + 2], 0
mov word [eax], 0
mov eax, 0x87
mov ecx, pe_nt_image_headers32
nop
movzx esi, byte [esp + eax - 0x77]
mov edx, ecx
xor edx, eax
and edx, esi
xor edx, eax
add dl, 0x5d
mov byte [esp + eax - 0x77], dl
inc eax
dec ecx
cmp eax, 0x9c
jne 0x426e70
movzx esi, word [esp + 0x10]
test si, si
mov ebp, dword [esp + 4]
je 0x426f55
lea ecx, [esp + 0x78]
lea edx, [esp + 0x10]
mov eax, ecx
jmp 0x426ebc
movzx esi, word [edx]
test si, si
je 0x426f5d
movzx edi, word [ecx]
test di, di
je 0x426f5b
add ecx, 2
add edx, 2
lea ebx, [eax + 2]
cmp di, si
je 0x426eda
mov eax, ebx
mov ecx, ebx
je 0x426eb0
lea edx, [esp + 0x10]
jmp 0x426eb0
mov ebp, dword [esp + 4]
mov esi, dword [esp]
jmp dword [0x4476ac]
mov eax, ebp
mov ebp, dword [esp + 0xc]
cmp ebp, 4
jb 0x4270b5
shr ebp, 2
mov ecx, ebp
and ecx, 3
je 0x42704f
xor esi, esi
lea edi, [esp + 0xde8]
mov eax, dword [esp + 4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, word [edi]
xor edx, edx
test bx, bx
setne dl
lea edi, [edi + edx*2]
mov word [eax], bx
add eax, 2
inc esi
cmp ecx, esi
jne 0x426f30
mov ecx, ebp
sub ecx, esi
mov esi, dword [esp]
jmp 0x427055
lea eax, [esp + 0x78]
jmp 0x426f5d
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x4476c4]
mov esi, dword [esp]
inc esi
jmp 0x426cd1
mov edx, dword [esp + 0xc]
cmp edx, 2
mov esi, dword [esp]
jb 0x427036
shr edx, 1
mov ecx, edx
and ecx, 3
je 0x426fc3
xor esi, esi
lea eax, [esp + 0xde8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, word [eax]
xor ebx, ebx
test di, di
setne bl
lea eax, [eax + ebx*2]
mov word [ebp], di
add ebp, 2
inc esi
cmp ecx, esi
jne 0x426fa0
mov ecx, edx
sub ecx, esi
mov esi, dword [esp]
jmp 0x426fcc
lea eax, [esp + 0xde8]
mov ecx, edx
dec edx
cmp edx, 3
jb 0x427036
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, word [eax]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [eax + ebx*2]
mov word [ebp], dx
movzx eax, word [eax + ebx*2]
xor edx, edx
test ax, ax
setne dl
lea edi, [esi + edx*2]
mov word [ebp + 2], ax
movzx eax, word [esi + edx*2]
xor edx, edx
test ax, ax
setne dl
lea esi, [edi + edx*2]
mov word [ebp + 4], ax
movzx edx, word [edi + edx*2]
xor eax, eax
test dx, dx
setne al
mov word [ebp + 6], dx
add ebp, 8
lea eax, [esi + eax*2]
add ecx, 0xfffffffc
jne 0x426fe0
mov esi, dword [esp]
mov word [ebp], 0xa
add ebp, 2
mov dword [esp + 4], ebp
mov al, 1
mov dword [esp + 0x3c], eax
inc esi
jmp 0x426cd1
mov eax, dword [esp + 4]
mov ecx, ebp
dec ebp
cmp ebp, 3
jb 0x4270b5
nop
nop
nop
nop
nop
movzx edx, word [edi]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [edi + ebx*2]
mov word [eax], dx
movzx edx, word [edi + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [esi + ebx*2]
mov word [eax + 2], dx
movzx edx, word [esi + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [edi + ebx*2]
mov word [eax + 4], dx
movzx edi, word [edi + ebx*2]
xor edx, edx
test di, di
setne dl
mov word [eax + 6], di
add eax, 8
lea edi, [esi + edx*2]
add ecx, 0xfffffffc
jne 0x427060
mov esi, dword [esp]
mov dword [eax], 0x20003a
mov ebp, dword [esp + 4]
jmp case.0x42727d.14
mov dword [eax], 0x20003a
jmp dword [0x4476b4]
mov edi, dword [esp + 0xc]
mov eax, ebp
cmp edi, 2
jb 0x4270d0
shr edi, 1
mov ebp, edi
and ebp, 3
je 0x427126
xor esi, esi
lea ecx, [esp + 0xde8]
mov eax, dword [esp + 4]
nop
nop
nop
movzx ebx, word [ecx]
xor edx, edx
test bx, bx
setne dl
lea ecx, [ecx + edx*2]
mov word [eax], bx
add eax, 2
inc esi
cmp ebp, esi
jne 0x427100
mov edx, edi
sub edx, esi
mov ebp, dword [esp + 4]
mov esi, dword [esp]
jmp 0x427135
lea ecx, [esp + 0xde8]
mov ebp, dword [esp + 4]
mov eax, ebp
mov edx, edi
dec edi
cmp edi, 3
jb 0x4270d0
nop
nop
nop
nop
nop
movzx esi, word [ecx]
xor ebx, ebx
test si, si
setne bl
lea edi, [ecx + ebx*2]
mov word [eax], si
movzx ecx, word [ecx + ebx*2]
xor ebx, ebx
test cx, cx
setne bl
lea esi, [edi + ebx*2]
mov word [eax + 2], cx
movzx ecx, word [edi + ebx*2]
xor ebx, ebx
test cx, cx
setne bl
lea edi, [esi + ebx*2]
mov word [eax + 4], cx
movzx esi, word [esi + ebx*2]
xor ecx, ecx
test si, si
setne cl
mov word [eax + 6], si
add eax, 8
lea ecx, [edi + ecx*2]
add edx, 0xfffffffc
jne 0x427140
mov esi, dword [esp]
jmp 0x4270d0
add eax, 4
mov cl, 1
mov dword [esp + 0x40], ecx
inc esi
mov dword [esp + 4], eax
jmp 0x426cd1
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x10], 0x9c9d9a9b
lea ecx, [esp + 0x22]
mov byte [ecx - 0xc], 0
mov word [ecx - 0xe], 0
xor ecx, ecx
nop
nop
nop
nop
mov esi, ecx
xor esi, 0x26
lea edx, [ecx + ecx]
and edx, 2
mov ebx, edx
sub ebx, esi
xor bl, byte [esp + ecx + 0x10]
add bl, 0xbe
mov byte [esp + ecx + 0x10], bl
xor ecx, 1
add ecx, edx
cmp ecx, 7
jb 0x4271e0
mov ecx, dword [0x44cd58]
test ecx, ecx
mov ebp, dword [esp + 4]
je 0x427240
mov edx, dword [esp + 0x10]
xor esi, esi
mov edi, dword [0x44cd5c]
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x427230
inc esi
cmp ecx, esi
jne 0x427220
jmp 0x427240
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne case.default.0x427252
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x28]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov edi, dword [esp + 0x38]
jmp dword [eax*4 + 0x447674]
push eax
push 4
push ecx
push dword [0x44cd60]
call fcn.0043dda0
add esp, 0x10
mov ecx, dword [esp + 0x28]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov edi, dword [esp + 0x38]
jmp dword [eax*4 + 0x447674]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44768c]
mov dword [esp + 4], ebp
mov dword [esp + 0x58], 0x800
mov dword [esp + 0xc], 0x400
xor esi, esi
mov dword [esp + 0x40], 0
jmp 0x426cd1
lea eax, [esp + 0x2c]
lea ecx, [esp + 0xbe8]
push esi
push 0
push 0x20019
push eax
push ecx
call fcn.00440bb0
add esp, 0x14
lea eax, [esp + 0x2c]
lea ecx, [esp + 0xbe8]
push esi
push 0
push 0x20019
push eax
push ecx
call fcn.00440bb0
add esp, 0x14
jmp dword [0x447688]
mov eax, dword [esp + 8]
mov eax, dword [esp + eax + 0x64]
mov dword [esp + 0x78], 0x3320130
mov dword [esp + 0x7c], 0x7360534
mov dword [esp + 0x80], 0xb3a0938
mov dword [esp + 0x84], 0xfd60d3c
mov word [esp + 0x88], 0x1110
lea ecx, [esp + 0x118]
mov word [ecx - 0x8a], 0
mov dword [ecx - 0x8e], 0
mov ecx, 0xbf
lea edx, [esp + 0x78]
nop
nop
nop
nop
nop
movzx esi, byte [edx]
lea edi, [ecx - 0x7138a800]
or edi, esi
and esi, ecx
not edi
add esi, edi
add esi, 0xc9e4bbbf
mov edi, esi
and edi, 1
xor esi, 1
lea ebx, [esi + edi*2]
mov byte [edx], bl
inc edx
dec ecx
cmp ecx, 0xa7
jne 0x427360
movzx edx, word [eax]
lea ecx, [esp + 0xbe8]
test dx, dx
je 0x4273b1
add eax, 2
mov word [ecx], dx
add ecx, 2
movzx edx, word [eax]
add eax, 2
test dx, dx
jne 0x4273a0
mov word [ecx], 0
movzx eax, word [esp + 0x78]
test ax, ax
je 0x4273e1
lea edx, [esp + 0x7a]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], ax
add ecx, 2
movzx eax, word [edx]
add edx, 2
test ax, ax
jne 0x4273d0
mov word [ecx], 0
mov eax, dword [esp + 8]
mov eax, dword [esp + eax + 0x64]
mov dword [esp + 0x78], 0x3320130
mov dword [esp + 0x7c], 0x7360534
mov dword [esp + 0x80], 0xb3a0938
mov dword [esp + 0x84], 0xfd60d3c
mov word [esp + 0x88], 0x1110
lea ecx, [esp + 0x118]
mov word [ecx - 0x8a], 0
mov dword [ecx - 0x8e], 0
lea ecx, [esp + 0x78]
mov edx, 0xbf
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [ecx]
lea edi, [edx - 0x7138a800]
or edi, esi
and esi, edx
not edi
add esi, edi
add esi, 0xc9e4bbbf
mov edi, esi
and edi, 1
xor esi, 1
lea ebx, [esi + edi*2]
mov byte [ecx], bl
inc ecx
dec edx
cmp edx, 0xa7
jne 0x427450
movzx ecx, word [eax]
lea edi, [esp + 0xbe8]
test cx, cx
je 0x4274a1
add eax, 2
mov word [edi], cx
add edi, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x427490
mov word [edi], 0
movzx eax, word [esp + 0x78]
test ax, ax
je 0x4274d1
lea ecx, [esp + 0x7a]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edi], ax
add edi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4274c0
mov word [edi], 0
jmp dword [0x447670]
mov cx, 0x31
xor eax, eax
cmp cx, 0x35
setb al
mov dword [esp + 0x38], edi
jmp dword [eax*4 + 0x447674]
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42750a
nop
nop
nop
nop
mov edi, dword [esp + 0x34]
jmp dword [0x4476cc]
push eax
push 4
push ecx
push dword [0x44cd60]
call fcn.0043dda0
add esp, 0x10
mov edi, dword [esp + 0x34]
jmp dword [0x4476cc]
inc edi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x42756b
cmp cx, 0x7f
jbe 0x427530
movzx edx, cx
cmp edx, 0x7ff
ja 0x427560
add edi, 2
jmp 0x427531
cmp cx, 0xffff
je 0x427531
add edi, 3
jmp 0x427531
mov eax, edi
and eax, 1
mov ecx, edi
xor ecx, 1
lea ebp, [ecx + eax*2]
push ebp
call fcn.004083b0
add esp, 4
mov esi, eax
lea eax, [esp + 0x11e8]
push eax
push ebp
push esi
call fcn.00427690
add esp, 0xc
mov dword [esp + 0x78], 0xb5b6b7e7
mov dword [esp + 0x7c], 0x51c1bebb
mov dword [esp + 0x80], 0x54484e47
mov dword [esp + 0x84], 0x59552a09
mov dword [esp + 0x88], 0x44474640
mov dword [esp + 0x8c], 0x5c402301
mov dword [esp + 0x90], 0x565a5452
mov dword [esp + 0x94], 0x4d461d45
mov word [esp + 0x98], 0xc748
mov dword [esp + 0x9a], 0
mov word [esp + 0x9e], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ebx + 0x78]
lea ecx, [ebx - 0x7c2b7d87]
lea edx, [ebx + 0x79]
and edx, eax
or ecx, eax
sub ecx, edx
add ecx, 0x49e32ac5
mov eax, ecx
and eax, 0x22
xor ecx, 0xa2
lea eax, [ecx + eax*2]
add al, 0x3c
mov byte [esp + ebx + 0x78], al
mov eax, ebx
and eax, 1
xor ebx, 1
lea ebx, [ebx + eax*2]
cmp ebx, 0x28
jb 0x427610
lea eax, [esp + 0x78]
mov ecx, dword [esp + 0x21fc]
push edi
push esi
push eax
call fcn.004092f0
jmp dword [0x4476e4]
push esi
mov esi, eax
call fcn.004083c0
mov eax, esi
add esp, 4
and al, 1
int3
imul eax, dword [edx], 0xffffff8c
insb byte es:[edi], dx
inc edx
add dh, ah
jae 0x4476a9
add byte [eax], al
jae 0x4476ad
add byte [eax], al
jae 0x4476b1
add ah, bl
je 0x4476b5
add byte [eax + 0x6c], dh
insb byte es:[edi], dx
inc edx
add byte [ebp - 0x3fffbd94], dh
jb 0x4476c1
add ch, bl
jb 0x4476c5
add al, al
jb 0x4476c9
add byte [eax - 0x5fffbd8e], dl
insb byte es:[edi], dx
inc edx
add byte [edx + esi*2 + 0x71c00042], bl
inc edx
add byte [esi], al
insd dword es:[edi], dx
inc edx
add byte [ebp*2 + 0x6d400042], ah
inc edx
add byte [edx], bl
outsb dx, byte [esi]
inc edx
add al, dh
outsb dx, byte [esi]
inc edx
add ah, bl
jo 0x4476f1
add ch, bh
outsb dx, byte [esi]
inc edx
add byte [eax - 0x23ffbd8f], ah
jno 0x4476f9
add ah, bl
jo 0x4476fd
add al, dl
insb byte es:[edi], dx
inc edx
add byte [esi], ch
outsb dx, byte [esi]
inc edx
add byte [ebx + 0x6f], ch
outsd dx, dword [esi]
inc edx
add byte [edi + ebp*2 + 0x42], dh
outsd dx, dword [esi]
inc edx
add al, dh
pop esi
inc edx
add cl, bh
pop esi
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx + 0x67004276], al
jbe 0x447729
add byte [esi + esi*2 + 0x42], dh
add byte [eax], al
add byte [eax], al
add byte [esi - 0x6bffbd7f], al
add dword [edx], 0x427b50
xor byte [ebp + 0x42], bh
add dword [edx], 0x428194
push eax
jnp 0x44773d
add byte [eax], dh
jge 0x447741
add dh, bh
jl 0x447745
add byte [eax + 0x7d], dl
inc edx
add byte [ebx - 0x6fffbd7e], bh
jge 0x447751
add byte [ecx + 0x7e], dh
inc edx
add byte [ecx + 0x7e], dh
inc edx
add al, al
jle 0x44775d
add al, dh
jle 0x447761
add byte [ebx - 0x45ffbd7e], bh
jg 0x447769
add byte [ebx - 0x47ffbd7e], bh
add byte [edx], 0xb8
jg 0x447771
add ch, ah
jle 0x447775
add byte [ecx - 0x45ffbd82], dh
add byte [edx], 0x60
jle 0x447781
add byte [ecx], al
add byte [eax], al
add byte [ebx + 0x2c004282], bh
add byte [edx], 0x2c
jge 0x44778d
add byte [eax - 0x7f], dl
inc edx
add byte [ecx], dh
add dword [edx], 0x428131
xor byte [ebp + 0x42], bh
add byte [ebx + 0x64004282], bh
add byte [edx], 0x64
add dword [edx], 0x428180
add byte [ecx - 0x7e79ffbe], 0x42
add byte [ecx + eax*4 - 0x7e56ffbe], dl
inc edx
add byte [eax - 0x5affbd7e], bl
add dword [edx], 0x428186
xchg esp, eax
add dword [edx], 0x4281a9
cwde
add byte [edx], 0xa5
add dword [edx], 0x428298
movsd dword es:[edi], dword [esi]
add byte [edx], 0xa5
add byte [edx], 1
add byte [eax], al
add byte [eax - 0x56ffbd7f], al
mov word [edx], es
inc eax
xchg dword [edx], eax
test eax, 0x5c00428c
xchg dword [edx], eax
iretd