Function at 0x6f9495
Capabilities:
Encode data using xor

Disassembly:
mov dword [esp + 0x24], eax
popal
inc dword [esp + 8]
pushal
mov ebp, dword [esp]
xchg dx, bx
setb dh
lea eax, [edx*4]
mov ax, 0x57f1
lea esi, [ecx + edx]
lea ebp, [esp + eax]
sete al
mov al, 0x44
bswap ecx
not bh
lea edx, [eax + 0x52c54d6e]
pushal
mov edi, dword [esp + 0xd]
lea esp, [esp + 6]
push word [esp + 7]
lea esp, [esp + 0x1c]
popal
push di
push word [esp]
mov dword [esp], esp
pushfd
lea esp, [esp + 3]
push dword [esp + 1]
lea esp, [esp + 8]
lea esp, [esp]
mov byte [esp], ch
lea esp, [esp]
mov byte [esp], bh
pushal
pop dword [esp + 8]
push ax
lea esp, [esp + 3]
lea esp, [esp + 0x1c]
popfd
ret
call 0x6f8e70
pop eax
ja 0x6f9236
jbe 0x6f9236
sub ecx, 0x6f8d78
mov dword [ecx + 0x6f8b96], eax
mov dword [ecx + 0x6f8b9b], 0x82444ff
mov word [ecx + 0x6f8b9f], 0xc39d
movzx ebx, byte [eax]
add ebx, 0x3704354b
cmp ebx, 0x37043617
pop ss
add al, 0x37
je 0x6f8f09
jne 0x6f8dec
je 0x6f8ea7
pushal
pop es
dec esp
fstp qword [edx - 0x38]
scasd eax, dword es:[edi]
pop edx
in eax, dx
mov eax, 0x24048f66
mov eax, 0xab8492e
push es
adc dword [ecx], 0xba358370
xchg ecx, eax
je 0x6f8f5e
and al, 0x13
or byte [ebp - 0x72fedb9c], cl
and al, 0x20
call int.006f8f85
dec ebx
inc ebp
push edx
dec esi
inc ebp
dec esp
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
add bh, bh
call dword [eax - 0x13da9ae4]
jbe 0x6f910d
ja 0x6f910d
ficom word [edx + ecx*8 - 0x53]
pop esp
loop 0x6f8f68
inc edi
xlatb
mov dl, 0x41
enter 0xffffffffffffef3f, 0xffffffffffffffa7
xchg edi, eax
xor ah, byte [esi - 0x75]
xor al, 0x24
mov edi, dword [esp]
bswap ebx
mov bx, word [esp]
mov bl, 0x34
mov cl, dl
mov ecx, ebx
popal
pushfd
push word [esp]
jmp 0x6f903e
pop word [esp + 1]
lea esp, [esp + 1]
push di
lea esp, [esp]
mov byte [esp + 1], bh
push word [esp + 1]
push dword [esp + 5]
lea esp, [esp + 3]
lea esp, [esp + 8]
popfd
ret
mov dword [esp + 0x24], eax
popal
jle 0x6f92bc
jmp 0x6f92bc
sub eax, 0xec4e1730
jb 0x6f8f73
jae 0x6f8f73
popal
cld
invalid
inc dword [esp + 8]
pushal
not si
bswap esi
push eax
xchg dword [esp], ebp
mov dword [esp], esp
mov ax, 0xcb3
mov si, 0x24e6
lea esp, [esp + 4]
popal
push ebx
pop word [esp]
push word [esp + 1]
push ebp
mov byte [esp + 2], bh
push word [esp + 4]
mov byte [esp + 4], bl
pop word [esp + 1]
push dword [esp + 4]
lea esp, [esp + 9]
lea esp, [esp]
mov byte [esp], ah
lea esp, [esp + 3]
popfd
ret
call 0x6f9321
dec ebx
inc ebp
push edx
dec esi
inc ebp
dec esp
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
add bh, bh
nop
add edi, dword [ebx + 0x137bc85d]
jp 0x6f933c
clc
jns 0x6f9317
mov byte [ebx - 0x32], bh
mov edx, 0x3acfa83a
mov dl, byte [edi]
xlatb
out dx, al
iretd
call fcn.006f935a
popfd
sub al, 5
jo 0x6f939e
in al, dx
rcl edi, 1
adc al, ah
jge 0x6f9364
push ds
jl 0x6f93c9
jle 0x6f934e
imul ecx, dword [esi], 0xfffffffd
jl 0x6f933c
jecxz 0x6f931d
add byte [eax], al
jo 0x6f93ea
mov ebp, 0x5bd9a8fc
pop word [esp + 4]
xchg byte [esp + 6], dh
lea edi, [esi*4]
mov eax, 0x6e591e14
jmp 0x6f9424
not dl
push dword [esp + 3]
lea esi, [ecx*4]
add byte [eax], al
add byte [eax], al
jne 0x6f9371
jmp 0x6f9371
rcl dword [ebx - 0x5c53b1f3]
mov dword [esp + 0x24], eax
popal
inc dword [esp + 8]
pushal
push bp
not ch
push word [esp]
mov ebx, ecx
lea esi, [eax + ebp]
push word [esp + 1]
mov si, cx
xchg di, cx
xchg byte [esp + 2], dl
mov ch, 0xc2
jb 0x6f9395
jae 0x6f9395
cmp byte [ebp + 0x72c7342d], bh
jecxz 0x6f93ac
adc al, byte [ebx]
xchg edx, eax
call 0x6f93ef
pop ecx
sub ecx, 0x6f93ef
mov dword [ecx + 0x6f9578], eax
mov dword [ecx + 0x6f957d], 0x82444ff
mov word [ecx + 0x6f9581], 0xc39d
movzx ebx, byte [eax]
add ebx, 0x702609e1
ja 0x6f9484
jbe 0x6f9484
in eax, dx
outsd dx, dword [esi]
call [edx - 0x30be3a97]
xchg dx, si
bswap cx
push dword [esp + 6]
xchg si, dx
xchg bp, si
mov al, byte [esp + 0xa]
mov dh, byte [esp]
lea esp, [esp + 0xc]
popal
pushfd
push word [esp + 2]
je 0x6f94b5
jmp 0x6f94b5
call 0x6f9458
pop eax
sub eax, 0xc88672ff
call 0xc8f6075e
ja 0x6f930f
jbe 0x6f930f
and bh, ch
dec ebx
jno 0x6f942a
loope 0x6f945a
call 0x6f9476
add byte [eax], al
add byte [eax], al
pop eax
jmp 0x6f96a7
cmp ebx, 0x70260aad
je 0x6f94e8
jne 0x6f93b2
lodsb al, byte [esi]
loop 0x6f94d8
pushal
lea edi, [esi + 0x144d57c3]
mov eax, ebx
mov bp, word [esp]
mov ecx, 0x4dbb6361
jno 0x6f94de
jo 0x6f94de
or eax, 0x8e731486
or dword [edi], edi
mov byte [edx - 0x73], dh
and al, 2
lea esp, [esp + 2]
pop word [esp]
mov word [esp], bp
pushal
push dword [esp + 0x20]
pop word [esp + 0xe]
push word [esp + 0x15]
lea esp, [esp + 2]
lea esp, [esp + 0x24]
popfd
ret
lea edx, [edx + edx]
bswap edi
lea ebx, [eax + 0x9b]
mov ch, byte [esp]
xchg bh, dh
add byte [edx - 0x879dbd4], cl
mov eax, 0x253c6570
seto bl
bswap ebx
not ebp
mov bp, word [esp]
seto dl
xchg dh, bh
mov ax, word [esp]
popal
push bx
mov word [esp], dx
push word [esp + 1]
lea esp, [esp + 3]
mov byte [esp], ch
pushfd
push dword [esp + 4]
mov word [esp + 6], di
lea esp, [esp + 7]
mov word [esp], si
push word [esp + 1]
push word [esp + 1]
lea esp, [esp + 2]
lea esp, [esp + 4]
push 0xd807f24
pushfd
add dword [esp + 4], 0x1b0c1d8c
pushal
mov bp, dx
lea edx, [edi - 0x20e8]
mov si, word [esp]
lea ebp, [ecx + ebp]
not esi
mov bx, 0x787a
not cl
js 0x6f9615
jns 0x6f9615
cmp ecx, edx
mov edx, 0x635c68a0
adc eax, 0x44819c0f
and al, 4
push esi
push esp
cmp dl, byte [esi + 0x60]
pushfd
setb ah
mov bh, ch
lea eax, [edi*4]
mov edx, 0x25c10dc2
pushfd
xchg bl, bh
lea ebx, [edi*4]
mov ebx, dword [esp + 5]
lea esp, [esp + 7]
mov esi, edi
xchg byte [esp], ah
mov edx, 0x4128126b
mov ax, word [esp]
xchg ebp, edx
mov ah, 0xf8
lea esp, [esp]
setnp ah
mov al, cl
mov eax, edi
mov ax, 0x6555
mov ax, bx
mov ecx, 0x4d3b232f
mov esi, ebx
mov edi, esp
lea esp, [esp + 1]
popal
pushal
pop word [esp + 0x17]
mov byte [esp + 6], ah
lea esp, [esp + 0xd]
mov word [esp + 1], sp
lea esp, [esp + 1]
lea esp, [esp + 0x10]
pushal
jle 0x6f9453
jmp 0x6f9453
mov ah, al
mov bp, word [esp]
mov eax, dword [esp]
mov edx, 0x2ec225f8
not al
mov bp, word [esp]
lea ebx, [esp - 0x71a2]
mov si, word [esp]
lea ecx, [edi*4]
xchg ebx, ecx
popal
pushfd
push word [esp]
pop word [esp]
push esi
mov dword [esp + 3], edi
pushfd
mov byte [esp + 7], dh
push word [esp + 4]
lea esp, [esp + 2]
lea esp, [esp + 0xc]
pushal
jbe 0x6f9471
ja 0x6f9471
mov byte [0xc766033d], al
and dword [ecx - 0x62ff9070], 0x18b60fc3
add ebx, 0x2beb6d25
cmp ebx, 0x2beb6df1
je 0x6f96e5
jne 0x6f9223
wait
or dword [edi + 0x3b], ecx
out dx, eax
call 0x6f9699
pop eax
jns 0x6f9777
js 0x6f9777
pop esp
sub eax, 0xeb594c8b
js 0x6f9e4b
jmp 0x6f9e4b
je 0x6f970b
add ecx, dword [ecx + 0xf662414]
iretd
and al, 0x8d
and al, 4
mov byte [esp], al
mov byte [esp], cl
mov word [esp], sp
mov byte [esp], dl
lea esp, [esp + 1]
lea esp, [esp + 1]
pushal
jle 0x6f8e6b
jg 0x6f8e6b
xlatb
dec eax
call 0x6f9739
pop ecx
sub ecx, 0x6f9739
jbe 0x6f97a9
jmp 0x6f97a9
add dword [esp + 8], 1
pushal
not bh
mov esi, dword [esp]
setne ch
seto dh
lea esi, [edx + ebp]
setg ch
mov ch, byte [esp]
jae 0x6f97ee
jb 0x6f97ee
lcall 0xe881, 0xc459d2a4
cdq
xchg esi, eax
outsd dx, dword [esi]
add byte [ecx - 0xdc88b40], al
pop es
sub eax, 0x6f9699
add eax, 0x7f23774
pop ebx
mov dword [ebx], eax
add dword [ebx], 0xf87d609d
mov ebx, dword [ebx]
pop dword [ebx]
jb 0x6f9734
jmp 0x6f9734
mov byte [ecx + 0x6f9545], 0xe9
mov dword [ecx + 0x6f9546], 0x202
popal
jle 0x6f974c
jg 0x6f974c
jl 0x6f97bb
push 0x8644fa0f
cmp edi, eax
invalid
mov esi, 0x4e7771d2
mov bh, cl
lea esi, [ecx + 0x1edc]
bswap edx
lea eax, [0x55cc25b6]
jl 0x6f99a4
jge 0x6f99a4
jnp 0x6f97bf
fild qword [ebx]
in al, dx
not dx
mov al, bh
lea edx, [edx - 0x6db6]
bswap ebx
jno 0x6f97c7
jo 0x6f97c7
jmp 0x6f986d
call 0x6f9820
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx - 0x43b4abcb], cl
imul ecx, dword [ebp - 0x3c03db9c], 0xffffff83
add al, 0x24
push es
ja 0x6f9694
mov esi, dword [0x6bbc4b54]
lea esp, [esp - 4]
ret
jmp 0x6f9694
call 0x6f984a
sal dword [ebx], cl
cmpsd dword [esi], dword es:[edi]
mov dh, 0x51
mov byte [0x683c7023], al
lahf
cmp edi, dword [esi + 0x500a48fb]
jl 0x6f98d8
jge 0x6f98d8
popal
aas
test al, 0x95
ret
call 0x6f986c
push ebp
push ebx
inc ebp
push edx
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
add bh, bh
nop
jg 0x6f980c
fcompi st(5)
jno 0x6f9835
jo 0x6f9835
call 0x6f987b
pop eax
jbe 0x6f98b1
ja 0x6f98b1
or al, 0x8f
pop ds
jp 0x6f980e
and ebp, dword [ebx - 0x41177e72]
push edi
or dh, dh
jbe 0x6f985c
ja 0x6f985c
push cs
ror byte [ecx], 0xe8
sldt word [eax]
add byte [eax], al
add byte [eax], al
add byte [ebx - 0x54be83c3], cl
adc al, 0x8d
and al, 0xfc
call 0x6f98a9
add byte [eax], al
add byte [eax], al
mov edi, dword [0x14ab417c]
lea esp, [esp - 4]
ret
sub eax, 0x6f987b
add eax, 0xc504f39
pop ebx
mov dword [ebx], eax
add dword [ebx], 0xf41f4961
mov ebx, dword [ebx]
js 0x6f992a
jns 0x6f992a
dec esp
invalid
call fcn.00481c49
push eax
jmp 0x6f9895
call 0x6f98e7
pop ecx
sub ecx, 0x6f98e7
mov byte [ecx + 0x6f996c], 0xe9
jmp 0x6f9933
add dword [esp + 8], 1
popfd
lea esp, [esp + 4]
push dword [esp]
lea esp, [esp + 8]
jne 0x6f989e
je 0x6f989e
xchg ebp, eax
adc eax, 0xab1fec85
dec ebx
enter 0x395e, 0xffffffffffffffc8
jg 0x6f9985
pop dword [ebx]
jl 0x6f98e2
jmp 0x6f98e2
mov dword [ecx + 0x6f996d], 0xffffff97
popal
jmp 0x6f9908
mov dh, 9
popal
lea esp, [esp + 1]
bswap bx
xchg byte [esp + 2], bh
jo 0x6f9a12
jno 0x6f9a12
add byte [edi], 0x97
add dword [edx + 0x1f4c309c], edi
sbb eax, 0x61cd0fee
bswap ebp
popal
pushal
push dword [esp + 0x16]
pop dword [esp + 5]
mov word [esp + 0x1c], bx
push edx
push word [esp + 0xc]
lea esp, [esp + 6]
push word [esp + 4]
pop word [esp + 5]
push word [esp + 4]
mov word [esp + 0x14], di
mov dword [esp + 0x1a], edi
push dword [esp + 0xc]
lea esp, [esp + 2]
lea esp, [esp + 0x24]
popfd
lea esp, [esp + 4]
push dword [esp]
lea esp, [esp + 8]
je 0x6f9815
jne 0x6f9815
call 0x6f9a00
pop eax
jnp 0x6f9c16
jp 0x6f9c16
mov word [esi], gs
invalid
mov ecx, ebp
mov word [esp + 1], dx
lea edi, [edi - 0x385b]
xchg word [esp], di
mov dword [esp], ebx
mov word [esp + 1], ax
mov word [esp + 2], sp
xchg word [esp + 1], ax
mov cx, bp
bswap ecx
not dh
bswap ax
mov dword [esp], eax
pushal
setns dl
xchg di, dx
lea esp, [esp + 1]
lea esp, [esp + 0x24]
popal
pushal
push dword [esp + 0xa]
push word [esp + 0x18]
mov word [esp + 0x14], bp
push di
mov byte [esp + 0x1d], cl
mov byte [esp + 0xe], bl
lea esp, [esp + 0x18]
mov byte [esp + 6], bl
lea esp, [esp + 3]
mov dword [esp + 6], edx
lea esp, [esp + 1]
lea esp, [esp + 0xc]
push 0x68d07d66
pushfd
add dword [esp + 4], 0x765375b1
pushal
mov al, bl
mov di, 0x235c
setns bl
mov esi, dword [esp]
not ah
lea edi, [edx*4]
xchg dx, ax
push esi
pop bp
setle dh
mov edi, edx
lea esp, [esp]
mov ah, 0x2e
xchg edi, edx
lea esp, [esp + 1]
xchg ebp, eax
mov bl, byte [esp]
xchg cx, di
lea ebx, [edx*4]
push eax
mov ax, di
mov dh, al
setb dl
lea ebp, [esp + edi]
xchg dword [esp], edx
mov ebp, 0x639c7720
xchg byte [esp + 2], dh
xchg bp, bx
not di
lea esp, [esp + 1]
lea esp, [esp + 4]
popal
pushfd
mov word [esp], dx
pop word [esp]
lea esp, [esp + 1]
mov byte [esp], dl
mov byte [esp], cl
mov byte [esp], dl
pushfd
lea esp, [esp + 1]
lea esp, [esp + 4]
pushal
je 0x6f99fb
jmp 0x6f99fb
call fcn.006f9b41
inc ebp
dec ebx
ret
mov dword [esp + 0x24], eax
popal
jge 0x6f9bcf
jl 0x6f9bcf
invalid
call dword [eax - 0x3bb145ef]
jb 0x6f9b26
jae 0x6f9b26
xor al, 0xbe
sub al, 0x4b
invalid
inc dword [esp + 8]
pushal
push bx
xchg di, cx
mov word [esp], bp
xchg ebx, eax
lea ebx, [ebp*4]
jmp 0x6f9d13
call 0x6f9c05
push ebp
push ebx
inc ebp
push edx
xor esi, dword [edx]
insb byte es:[edi], dx
xor ch, byte [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
add byte [ecx - 0x57], dh
jo 0x6f9bb0
jbe 0x6f9bff
push 0xd
cld
dec edx
ret 0xd747
sub eax, 0xc47777b5
jno 0x6f9bf5
jo 0x6f9bf5
cmp ebx, 0x25c83337
je 0x6f9c84
jne 0x6f9b70
jo 0x6f9c20
add ax, si
inc eax
dec esi
int 0x5d
and al, 0xd7
pushal
shl eax, 1
mov word [esp + 1], cx
push dword [esp + 2]
pop word [esp + 3]
push word [esp]
push edi
push word [esp + 3]
mov byte [esp + 4], bh
pop dword [esp + 2]
mov byte [esp + 4], ch
pop dword [esp]
lea esp, [esp + 2]
lea esp, [esp + 4]
popfd
ret
push dx
mov dword [esp], ebp
pop word [esp]
sets dh
mov di, bp
jle 0x6f9d95
mov cs, word [ecx + eax]
add byte [eax], al
jg 0x6f9d95
add al, 0x6a
in al, 0x60
pushal
not al
mov edi, 0x227b3b94
mov ax, 0x59eb
bswap edi
lea esi, [ebx*4]
xchg al, bh
xchg ebp, eax
push ebp
setae ch
pop dx
lea esi, [ebx*4]
lea ebp, [edi*4]
mov eax, dword [esp]
not ch
xchg dl, bh
jg 0x6f9c74
jle 0x6f9c74
movsd dword es:[edi], dword [esi]
and dword [ecx + 0x5a9f23d0], esi
adc ch, byte [esi]
push edx
clc
xchg bx, bp
mov dx, word [esp]
mov ax, si
bswap ax
mov si, word [esp]
mov edi, dword [esp]
bswap eax
mov si, 0x3e3b
bswap edi
mov esi, 0x7bf319bd
lea ebx, [ebx - 0x3792]
not dx
popal
push edx
jnp 0x6f9c3d
jp 0x6f9c3d
dec esi
movsd dword es:[edi], dword [esi]
xchg bh, ah
bswap bx
mov cl, bl
xchg word [esp], cx
bswap ebp
lea edi, [ecx + ebp]
push word [esp + 1]
pop edx
xchg dl, al
mov ch, byte [esp]
setb dl
bswap esi
jmp 0x6f9cd7
call 0x6f9d60
cmp dword [edx + 0x5bf009f5], ebx
jg 0x6f9d58
mov eax, dword fs:[0xe10779c0]
add cl, 0x4b
fstp xword [esi + 0x50d7f94d]
call fcn.00481c49
push eax
jge 0x6f980c
jl 0x6f980c
ret 0x8a8a
mov bh, bl
lea eax, [edi*4]
mov esi, dword [esp]
mov edi, 0x7df728de
jnp 0x6fa18e
jp 0x6fa18e
cmpsd dword [esi], dword es:[edi]
pop esi
mov word [esp], bp
mov dword [esp], ebp
xchg word [esp], si
mov al, ch
lea esi, [eax - 0x1c]
lea ebp, [eax + ecx]
pop cx
setne bh
mov ecx, dword [esp]
pushfd
not ecx
pop di
not bp
lea esp, [esp + 2]
popal
push di
mov word [esp], sp
push word [esp + 1]
pop word [esp]
pushal
mov word [esp + 7], di
lea esp, [esp + 0xe]
mov word [esp + 0xc], ax
mov dword [esp], edx
pop word [esp + 9]
pop dword [esp + 5]
pop dword [esp + 2]
push dword [esp + 5]
lea esp, [esp + 2]
lea esp, [esp + 0xc]
push 0x70525fd7
pushfd
xlatb
pop edi
push edx
jo 0x6f9d96
add dword [esp + 4], 0x54d0250
pushal
mov ch, 0x3e
mov al, bh
mov al, 0x56
lea ebx, [esi + ebp]
mov bx, sp
bswap ax
mov bl, 0x10
mov di, word [esp]
xchg ah, bh
mov ax, word [esp]
mov ebx, dword [esp]
mov bl, dl
lea ebp, [edi + 0x40304343]
mov ebp, dword [esp]
mov eax, 0x412e5a6e
mov bh, ah
bswap bx
jne 0x6f9d75
je 0x6f9d75
ret 0x87ef
call 0x6f9e5d
dec ebx
inc ebp
push edx
dec esi
inc ebp
dec esp
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
add bh, bh
nop
jno 0x6f9df5
xor bl, ch
jne 0x6f9d44
je 0x6f9d44
inc ebp
xchg ebp, edx
mov dh, 0x70
mov al, 0x25
lea ebp, [eax + ecx]
xchg cx, si
mov ebp, dword [esp]
xchg dl, al
mov ecx, dword [esp]
mov ch, byte [esp]
mov ebp, dword [esp]
mov edx, 0x49ff30f2
popal
pushfd
push dx
mov word [esp + 3], dx
push word [esp + 4]
push dword [esp]
push dword [esp]
pop dword [esp + 4]
push dword [esp + 6]
push dword [esp + 4]
push word [esp + 0xd]