Function at 0x10034311
Capabilities:
Encode data using xor

Disassembly:
call fcn.1002cad0
lea esp, [esp + 0x48]
ja 0x10033607
rcr al, 4
sub ebx, edi
shr al, cl
add ebx, esp
movzx edi, cl
shl al, cl
test ax, sp
adc al, ch
mov edi, ebx
rcr al, cl
mov al, 0x2e
pushfd
pushfd
mov word [esp + 4], ax
repne scasb al, byte es:[edi]
pushfd
lea esp, [esp + 0xc]
jne 0x1002034d
cwde
jmp 0x10033ce8
stosb byte es:[edi], al
pushfd
pushfd
mov bl, 2
lea esp, [esp + 0x28]
pushal
mov byte [esp + 8], dl
pushfd
lea esp, [esp + 0x24]
call fcn.1003079c
call fcn.10030664
rcl bl, cl
bswap bx
mov bx, word [esi]
pushfd
call fcn.10033cc6
mov byte [esp], cl
push dword [esp]
adc dl, dl
lea esp, [esp + 0x44]
pushal
jmp 0x10032757
mov dword [esp + 0x3c], 0x65392789
push 0x29c95e1d
pushfd
mov word [esp], bp
lea esp, [esp + 0x44]
jmp 0x10036457
jb 0x1002c616
push 0xdac635e2
pushfd
mov byte [esp + 4], bl
mov esp, esi
pushfd
lea esp, [esp + 4]
jmp 0x10033889
jmp 0x1002c570
inc bh
test si, 0x484f
cmc
movzx bx, bl
mov bx, word [esi]
push 0xc28bfd81
jmp 0x1002c583
xchg bl, al
lodsb al, byte [esi]
test si, 0x6dab
neg al
cmc
je 0x10030eb3
ror al, 4
sar bl, cl
xor al, 0x70
not bl
dec bl
pushal
inc al
setae bl
jmp 0x10020221
bt ax, dx
clc
cmp dword [esi], 0
call fcn.1002d6f1
push dword [esp]
lea esp, [esp + 0xc]
jne 0x10033889
neg si
pushal
cmc
sub si, bx
mov ecx, edi
jmp 0x1003442e
lea esp, [esp + 0x14]
jne 0x1003142e
pushal
mov dword [esp + 0x1c], edi
pushal
push ebp
jmp 0x100335c1
push edx
push 0x9e3cd2b
mov esp, esi
pushal
pushal
lea esp, [esp + 0x40]
jmp 0x1003389e
shr ebx, 0xc
clc
cmp ebx, 1
mov byte [esp], dl
call fcn.1002f5a5
invalid
push 0x664c8352
call 0x10031cd5
or dword [esi - 0x18], 0xffffffb5
push esi
add byte [eax], al
pushfd
je 0x1002c652
mov esi, 0xef3ee975
xchg edi, eax
jge 0x1002c618
or eax, 0x41ce2788
add byte [ebx - 0x40df6aee], dl
bound ebx, qword [ebp + 0x1174d9b8]
adc al, 0x69
xchg dword [esi], ecx
push cs
mov ch, 0xf8
or eax, 0xba8b84d8
aaa
bound eax, qword [ebx]
push esp
xor bh, cl
push 0x854e175c
inc eax
int1
test dword [eax - 0xf], eax
cmp byte [esi - 0x5f], dl
mov bl, 0xee
ljmp 0xa8f5
stc
cmc
cmp edi, ebx
jmp 0x10034306
pushal
pushal
lodsb al, byte [esi]
jmp 0x100342d2
pushal
mov byte [esp], 0xdb
mov dword [ebp - 8], ecx
push 0xe890fc2f
pushfd
mov byte [esp + 4], bl
pushfd
lea esp, [esp + 0x2c]
jmp 0x100321b8
lea esp, [esp + 0x24]
call fcn.1003079c
jmp 0x10030831
mov al, byte [ecx]
call 0x10034242
pushfd
test dx, 0x721b
pushal
xor al, al
call fcn.10032fb4
push dword [esp + 0xc]
push dword [edi]
pop dword [esp + 0x20]
clc
bt di, dx
cmp edi, ebx
mov byte [esp], 0xb3
call fcn.10032cd0
mov edi, dword [esp + 8]
call 0x1002ffc7
pushal
lea esp, [esp + 0x20]
jae 0x1002f591
call fcn.10020606
sub al, 0xdf
add edi, 1
rcl al, 1
mov al, byte [edi]
cmc
call fcn.10034216
add esi, 2
pushal
push dword [esp]
push dword [esp + 8]
dec ecx
pushfd
push 0xc6368fc9
push 0x34066001
lea esp, [esp + 0x3c]
jne 0x100206f1
pushal
pushal
push esp
lea esp, [esp + 0x44]
jmp 0x10032335
lea esi, [esp + 0x20]
mov dword [esp + 4], 0x12b3e93f
sub edi, 4
jmp 0x1002fe5f
stc
ror al, 4
rcl bl, 7
stc
xor bl, 4
xor al, 0x70
dec bl
mov bl, 0xcd
dec bl
dec bl
inc al
pushal
mov bl, byte [esp + 0xc]
call 0x100317b9
add byte [eax], al
push ebx
je 0x10030f20
imul ebp, dword [ebp + 0x50], 0x746e696f
jb 0x10030ee5
jmp 0x10031c51
invalid
cmp al, 0xb3
mov fs, word [ecx + 0x10f07a7a]
mov edx, dword [esi - 0x2f]
jo 0x10030f10
sub byte [ecx], 0xd0
mov edi, dword [edx]
aad 0x78
xchg dword [esi + 0xe0ff4ad], edx
dec ebp
pop esp
jg 0x10030f7c
cmp dh, byte [ecx - 0x3b]
jge 0x10030f45
xor dh, byte [edx + 0x47bd3ebb]
scasd eax, dword es:[edi]
mov ebx, 0xaf47bd3e
mov esp, esi
loop 0x10030f50
adc dword [0x29361390], ecx
xor byte [ebx + 0x76], bh
nop
adc esi, dword [esi]
sub dword [eax], esi
jnp 0x10030fcd
shr ebx, 0x9b
wait
and dword [edx], ecx
inc esi
inc esi
fcom qword [ecx]
int3
or byte [edi + 0x1facfd3e], ah
retf 0xece5
push esi
pop es
daa
mov byte [0x4d4aa4a9], al
je 0x10030f6e
or byte [ebx - 0x730eae7e], ah
xchg dword [edx - 0x73], edx
test al, 0x73
inc edx
imul eax, dword [ebx - 0x59a6c182], 0x3a872d7c
pop es
push esi
mov bh, 0x65
or byte [edx - 0x76fb100e], ah
push ebp
jo 0x10030f59
mov ebp, 0x4c4b64f9
push 0x5898eeb
int1
pushal
dec esi
imul eax, dword [0xe78a3456], 0xfb3370ed
iretd
das
in al, dx
salc
test dword [eax], edx
int 0xcf
out 0x6f, al
xchg edx, eax
popfd
sal byte [ebp - 0x1639cc88], 0xac
mov byte [edi - 0x2b4ed155], ch
aad 0
mov eax, dword [0xd049c6f2]
setb byte [0xc1a66744]
loopne 0x10030ff0
cmpsb byte [si], byte es:[di]
shl eax, 0xfb
xchg esi, eax
xchg edx, eax
lodsd eax, dword [esi]
leave
xor byte [esi - 3], 0x1e
xor dword [edx], edi
std
clc
xor al, 0xc
and al, 0x47
sbb byte [0x6fcf], 2
cmc
sbb byte [ebx + 0x5a], cl
jno 0x1003108d
ret
lodsd eax, dword [esi]
sub dword [ecx + 0x77], 0x60
dec esi
inc ecx
ret 0xac0c
ror al, cl
not al
rol al, cl
jmp 0x1002fdfd
invalid
invalid
invalid
movzx eax, al
push 0x4258278f
mov dword [esp], ebx
call fcn.1002f749
call fcn.10034207
mov bl, 0xec
stosb byte es:[edi], al
not bl
mov bl, ch
push 0x45a5b2e3
mov bl, 2
lea esp, [esp + 0x28]
jbe 0x10032899
pushfd
push esp
lea esp, [esp + 8]
call fcn.1003079c
pushal
call fcn.10032760
lea esp, [esp + 0x28]
ja 0x1002034d
pushal
imul edx, edx, 0xa
pushal
jmp 0x100330a6
pushfd
mov dword [esp], 0x1b7ec0c1
inc al
pushal
bt bx, bx
stc
bt di, 9
mov byte [ecx], al
push dword [esp]
call fcn.10031122
lea ebp, [edx + 0x7955ea5a]
call fcn.1002feab
add byte [eax], al
push edi
imul esp, dword [ebp + 0x43], 0x54726168
outsd dx, dword [esi]
dec ebp
jne 0x10031cf6
je 0x10031cf5
inc edx
jns 0x10031d03
add byte gs:[eax - 1], ah
xor al, 0x24
lea esp, [esp + 0x24]
jae 0x10033889
clc
test bh, 3
bt ebx, 0x14
test edi, 0x7020c3eb
add ecx, 1
jmp 0x1002f96d
and byte [eax - 0x7d], dh
rol dword [ecx], 0xe9
mov eax, 0x8dffffdc
lea esp, [esp + 0x34]
je 0x10033889
call fcn.10033b51
add byte [eax], al
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
jo 0x10031d2c
jb 0x10031d32
push ebx
je 0x10031d42
imul ebp, dword [esi + 0x67], 0x6e680057
mov byte [0xf489cbb9], al
pushal
lea esp, [esp + 0x20]
jmp 0x10033889
invalid
adc dl, byte [ebp + 0x1b70e338]
sub ch, cl
push ss
push esp
jge 0x10031cec
jg 0x10031d18
leave
jl 0x10031cf4
jle 0x10031d1c
fcom dword [ebx - 0xa]
sbb dword [eax + 0x6a3bdc11], ebp
salc
test al, 0x11
fdivr qword [ebx]
push 0xffffffffffffffd6
sal byte [edi], 1
pushal
neg dword [esi]
or eax, 0xa112f8d5
stosb byte es:[edi], al
sal dword [edx + 0x23], 1
ret
jp 0x10031cab
adc al, 0x5f
jbe 0x10031d37
ljmp 0xcec2:0x9b8a3f21
mov ebx, dword [edi - 0x22]
invalid
sbb eax, 0xaf080db9
push 0xee126f68
adc eax, 0x29510c16
jo 0x10031d8c
dec ecx
sbb eax, 0xc91e22db
je 0x10031ce9
ljmp 0xd049:0x8b96ebe4
jmp 0x10031d29
btr ecx, ebx
bt edi, 0xb
test dl, 0xc1
sub di, di
mov ecx, dword [ebp - 8]
bswap esi
pushal
shrd edi, ebx, cl
add ecx, dword [ebp - 4]
ror esi, 0xa
shr ecx, 1
rcr di, cl
xor si, sp
rol di, cl
mov edi, dword [ebx + ecx*4]
sar si, 1
rcl si, 0xd
add edi, eax
push dword [esp]
mov esi, dword [ebp + 0xc]
lea esp, [esp + 0x24]
pushfd
pushal
call fcn.10032829
add byte [eax], al
inc edi
je 0x10032255
jns 0x10032277
je 0x1003226b
insd dword es:[edi], dx
push esp
imul ebp, dword [ebp + 0x65], 0x69467341
insb byte es:[edi], dx
push esp
imul ebp, dword [ebp + 0x65], 0x24648d00
xor byte [edi], cl
test dword [eax], edi
loopne 0x1003221d
jmp [eax + 0x5a]
push eax
jb 0x100322c8
arpl word [ebp + 0x73], sp
jae 0x1003225e
add byte [eax], al
push esp
insb byte es:[edi], dx
jae 0x100322aa
jb 0x100322cb
add byte gs:[ebx + 0x3112a3f0], bh
adc dh, byte [ecx]
sbb eax, 0xc4a674b4
les ecx, [ebx + 0x238cd91e]
loop 0x100322d3
and esp, edx
pop ecx
in al, 0xaf
dec edx
add dword [edi + ecx*8 - 0x69ee110e], edi
imul edx, esi, 0x8adbb2d3
cmp eax, 0xbfc5a836
jne 0x1003230f
popfd
cmp dword [eax + 0x76455a6], ebp
push ss
cmp dword [esi - 0x736588a7], edi
nop dword [ecx + 0x17]
mov edx, 0xde5b8736
invalid
iretd
invalid
ja 0x100322c4
dec esp
mov dword [edi + 0x3e6aa296], ecx
inc ecx
outsb dx, byte [esi]
xor dword [esi + 0x47], 0x6bd8ca59
invalid
and al, 0x28
je 0x10034491
dec ax
sar ax, 4
xor ebx, ebx
test ebx, 0xdf1d23f6
pushal
aad 0x98
sal eax, cl
mov eax, edx
stc
clc
shr eax, 0x10
sub esp, 0xffffffe0
jmp 0x1002c4e0
dec al
mov bl, 2
mov al, 0x28
call fcn.10033ff4
invalid
pushfd
pushfd
push dword [esp + 0x28]
ret 0x2c
jmp 0x10032fcf
call fcn.1003079c
push eax
pushal
lea esp, [esp + 0x24]
jae 0x10023b2c
bt ecx, esi
stc
xor ecx, ecx
pushal
lea esp, [esp + 0x20]
call fcn.1003079c
pushfd
lea esp, [esp + 4]
jae 0x100200b9
push 0x9bc46639
stc
clc
pushal
sub eax, eax
jmp 0x1002fb4d
add edx, eax
pushfd
mov word [esp + 0xc], 0xf378
pushfd
mov word [esp], 0x3f6e
lea esp, [esp + 0x48]
jmp 0x10030861
mov dword [esp + 0x3c], ebx
lea esp, [esp + 0x3c]
jg 0x10033bc8
call fcn.10033c7c
jmp 0x100205e6
cmp cl, dh
clc
test dl, cl
sub edi, 4
test cl, dl
push dword [edi]
stc
bt edi, edx
jae 0x1002d6ba
cmp edi, ebx
pushfd
pushfd
push 0x4655a498
mov word [esp], bp
lea esp, [esp + 0xc]
ja 0x10033607
shr al, 3
rcl al, 3
sub ebx, edi
movzx di, bl
shrd di, bp, cl
bts di, sp
add di, bx
add ebx, esp
bt bp, 0xd
setb al
mov edi, ebx
sal al, cl
xor al, 0xdf
ror al, 6
rcl al, 7
mov al, 0x2e
bt ebx, 0x14
repne scasb al, byte es:[edi]
pushal
lea esp, [esp + 0x20]
jne 0x1002034d
lahf
movzx ax, al
bswap ax
mov byte [edi - 1], 0
lahf
jmp 0x10031724
xor dx, 0xef46
sal dl, cl
rcl dh, 3
push 0x20248422
sub eax, eax
lea esp, [esp + 4]
pushal
movsx bx, al
movzx si, cl
call fcn.1002f83c
add byte [eax], al
push ebp
outsb dx, byte [esi]
jb 0x10033917
imul esi, dword [bp + di + 0x74], 0x6c437265
popal
jae 0x10033930
inc ecx
add byte [eax], al
add byte [eax + 0x65], cl
popal
jo 0x1003390c
jb 0x1003392d
add byte gs:[eax], al
add byte [ebx + 0x6c], al
outsd dx, dword [esi]
jae 0x10033936
dec eax
popal
outsb dx, byte [esi]
insb byte es:[edi], dx
add byte gs:[eax], al
add byte [edi + 0x65], al
je 0x10033921
jne 0x10033952
jb 0x10033947
outsb dx, byte [esi]
je 0x10033935
jb 0x10033956
arpl word [ebp + 0x73], sp
jae 0x100338ec
push esp
push 0x72702065
outsd dx, dword [esi]
arpl word [ebp + 0x64], sp
jne 0x1003396a
and byte gs:[ebp + 0x6e], ah
je 0x10033970
jns 0x10033920
jo 0x10033971
imul ebp, dword [esi + 0x74], 0x20632520
arpl word [edi + 0x75], bp
insb byte es:[edi], dx
and byte fs:[esi + 0x6f], ch
je 0x10033933
bound esp, qword [ebp + 0x20]
insb byte es:[edi], dx
outsd dx, dword [esi]
arpl word [ecx + 0x74], sp
and byte fs:[ecx + 0x6e], ch
and byte [eax + ebp*2 + 0x65], dh
and byte [ecx + edi*2 + 0x6e], ah
je 0x1003398b
and byte gs:[ecx + edi*2 + 0x6e], ah
popal
insd dword es:[edi], dx
imul esp, dword [ebx + 0x20], 0x6b6e696c
and byte [ecx + ebp*2 + 0x62], ch
insb byte es:[edi], dx
imul ebp, dword [esi + 0x6b], 0x62696c20
imul esp, dword [eax], 0x6c
imul esp, dword [edx + 0x72], 0x20797261
and eax, 0x73
jb 0x10033998
popal
jb 0x100339b2
and byte [0x73], ah
dec edi
jo 0x100339a7
outsb dx, byte [esi]
inc esi
imul ebp, dword [ebp + 0x4d], 0x69707061
outsb dx, byte [esi]
push edi
add bh, al
inc esp
dec ebp
popal
jo 0x100339bb
imul ebp, dword [esi + 0x67], 0x44c70057
and al, 8
popal
and dl, bl
ror byte [eax - 0x63fbdb84], cl
fcmovbe st(0), st(2)
mov byte [esp + 4], bh
pushfd
mov byte [esp + 8], 0x73
mov word [esp], bx
lea esp, [esp + 0xc]
jmp 0x100357a9
pushal
mov byte [esp], dh
pushal
mov dword [esp + 0x40], 0x7a3edccb
jmp 0x10020332
and al, 0x40
retf
test al, 0xa8
inc edi
salc
jno 0x1003399d
stosd dword es:[edi], eax
cmp bh, cl
mov word [ebx], ss
mov edx, 0x322f3c85
xor edx, esi
cmp al, 0x2f
xor dh, byte [ebx]
salc
sbb ah, byte [edi - 0x54740ce1]
and al, byte [ebp + 0x2a]
jle 0x10033977
jle 0x10033977
outsb dx, byte [esi]
outsb dx, byte [esi]
cmp dword [ebp + 0x381c85e5], esi
int3
inc ebp
mov al, 0xde
invalid
wait
scasb al, byte es:[edi]
rcl dword [eax]
aas
jne 0x1003394b
mov edi, 0x60d2afae
invalid
call fcn.1002d804
sti
aaa
out dx, al
pop ebp
and bh, dl
push 0x25
mov al, byte [0x7455d64b]
aas
inc edx
aaa
push edx
pushfd
mov bh, byte [ecx + 0x61a60655]
mov dl, 0xa6
fst dword [edi]
ror dword ds:[edx + 0x5d], 0xc6
jmp 0x7ad07e8e
and ebx, 0xfff
bt bx, bx
add dword [edi + ebx], edx
add esp, 8
pushfd
cmp bp, cx
pushfd
jmp 0x10030a6d
mov ah, bh
not ah
mov byte [edi - 1], 0
aam 0xc6
inc edi
inc dword [eax]
mov ah, bl
not al
mov ah, bl
push ebx
bswap eax
movsx ax, cl
lea eax, [0x10034147]
pushal
call fcn.10031884
in al, 0xe6
add al, 0x27
jbe 0x10033d5b
daa
aam 0x96
mov edi, 0x73b8056e
out 0x8d, al
xor al, 0xaf
cmp ah, ch
mov al, byte [0xf7b91617]
and bh, byte [ebp + 0xd]
xchg edi, eax
dec ebx
dec esi
ja 0x10033d11
or dword [0xfb459c10], edx
js 0x10033cce
wait
mov esp, 0x2959cacc
std
test al, 0xeb
fisub dword [ebp - 0x35807a8a]
sti
or cl, byte [ebx - 0x70cee799]
mov eax, 0xfa91fb4
jp 0x10033d10
dec edi
add dword [esi], 6
xor dword [eax + ebp*8 + 0x39], ecx
sub eax, 0x8ee3383c
jecxz 0x10033ceb
mov dl, bh
push ecx
jl 0x10033d32
inc esp
loope 0x10033d58
cli
add eax, edx
jne 0x10033d9a
int3
add al, 0x9b
jmp 0x10033d39
push esp
lea esp, [esp + 4]
je 0x10033889
sub ch, 0x6d
sar cl, cl
pushfd
cmp cl, cl
add edx, eax
xor ch, bl
rol ecx, cl
or cx, sp
sar cl, cl
mov ecx, dword [esi + 0x7c]
cmp al, 0xe6
add ecx, edx
test al, dl
mov word [esp], 0x8f6b
mov dword [ebp - 0x10], ecx
mov ch, byte [esp]
or cl, 0x18
xor cl, bh
bsf cx, di
mov ecx, dword [ebp + 0xc]
push 0x5d3f4917
cmp dl, al
pushfd
mov dword [esp + 8], 0x6f6eef12
cmp ecx, 0xffff
pushfd
pushfd
lea esp, [esp + 0x14]
jbe 0x100317b4
cmc
movzx bx, cl
and ch, dh
bts ebx, 1
mov edi, dword [edx + 0x24]
rol cl, cl
sal bh, 4
add edi, eax
cmp si, si
sal bh, 1
pushfd
stc
mov ebx, dword [edx + 0x20]
cmp bp, ax
setl cl
add ebx, eax
sar cx, cl
sub cx, bx
and cx, cx
mov dword [ebp - 8], 0
bsr cx, bp
call fcn.10030be2
mov esi, dword [eax + 0x3c]
cmp cl, dl
movzx dx, cl
adc dh, 0xb7
add esi, eax
sar dl, cl
call fcn.10033431
pushfd
cmp sp, si
add ecx, 1
pushfd
test ah, ah
push dword [esp + 0xc]
jmp 0x1002c509
neg al
push 0xbfa311d7
push dword [esp + 4]
call 0x10031fc6
jmp 0x10034011
pushal
call fcn.1002f701
call fcn.1002fe33
call fcn.1002f744
add byte [eax], al
inc edi
je 0x10034369
outsd dx, dword [esi]
jne 0x1003438c
dec eax
popal
outsb dx, byte [esi]
insb byte es:[edi], dx
inc ebp
js fcn.10034381
add byte [ebx - 0x1cfed73c], al
jmp 0x100343d3
add byte [eax], al
inc esp
imul esi, dword [ebx + 0x70], 0x68637461
dec ebp
jae 0x100343ea
popal
push edi
add al, ch
mov cl, 0xfa
invalid
call 0x10033e32
and al, 9
in eax, dx
arpl word [esi], sp
lea esp, [esp + 4]
jmp 0x1002022a
mov edi, ebx
call fcn.10033c22
mov byte [esp], bl
lea esp, [esp + 0x28]
call fcn.1003079c
pushfd
pushal
pushfd
mov byte [esp + 4], 0x71
lea esp, [esp + 0x28]
inc esp
and al, 4
jno 0x1003437c
and al, 0x28
jae 0x1002f591
xchg bl, al
xchg bl, al
jmp 0x10032357
sub ecx, ebx
sbb si, 0xa5f3
jmp 0x10030aeb
push 0xf046bda5
bswap si
not bl
movsx si, al
mov esi, dword [esp + 4]
not di
jmp 0x100303f1
push 0x916bda86
call fcn.10035042
push 0x95426bfc
call fcn.10035503
pushal
test ebx, 0x5cd64a5f
sub ebp, 2
jmp 0x10036490
pushfd
mov byte [esp + 4], 0x9c
mov word [ebp], ax
push dword [esp + 4]
push ecx
push dword [esp]
lea esp, [esp + 0x30]
jmp 0x10034cda