Function at 0x10090c02
Capabilities:
Encode data using xor

Disassembly:
call fcn.1011e48a
leave
ret 4
push ebp
mov ebp, esp
sub esp, 0x84
mov eax, dword [0x10170c30]
xor eax, ebp
mov dword [ebp - 4], eax
pushfd
test byte [0x10090c44], 0xfa
jne 0x10090c45
and al, dh
sal bh, cl
inc ecx
mov ebx, dword [ebx + 0x7444fd17]
inc ebx
js 0x10090c92
cmp al, 0x47
out 0xab, eax
cmp al, 0x38
das
push eax
xor edx, esi
pop ds
insb byte es:[edi], dx
xchg edi, eax
dec edx
sbb bl, bh
or dword [edx - 0x3952f33a], ebx
jae 0x10090bf9
popfd
push esi
mov esi, ecx
lea eax, [esi + 8]
push eax
pushfd
test byte [0x10090c7f], 0xb4
jne 0x10090d80
sbb al, 0x46
jb 0x10090cd6
fbstp tbyte [edx + 0x21]
push edi
fstp xword [ecx]
mov dword [esi], esp
pop es
push edx
xlatb
xlatb
jl 0x10090ce1
or ecx, edi
pop ss
xlatb
xchg ebp, eax
dec ebx
sbb eax, 0xcbaa7cce
sbb esp, dword [edi + 0x363d32cd]
xor al, byte [ecx + 0x77]
out 0xb9, al
fisttp dword [edi - 0x39]
sub eax, 0xf455aaa2
lea esi, [edi]
inc ecx
ja 0x10090c69
mov ecx, 0x2dc74fdb
mov byte [0x8df455aa], al
aaa
stosb byte es:[edi], al
xchg esi, eax
sbb eax, dword ds:[edi]
pop es
lodsd eax, dword [esi]
fmul qword [edx + 0x33]
arpl word es:[eax + 0xe704956], ax
xor al, 0xd3
jl 0x10090c80
loop 0x10090d14
sub al, 0x3b
lea eax, [ecx + 0x59]
imul ecx, dword [edx + 0x26], 0xc18ea1ca
jb 0x10090cf6
dec edi
add dh, byte [ebx + 0x76]
and al, 0x6d
xchg esi, eax
out 0x46, al
jge 0x10090cde
mov edx, 0xc7025121
in al, 0xe3
cdq
aaa
dec eax
push eax
call [ebx + ecx*2 - 0x7b311bfc]
aam 0xc8
jecxz 0x10090ce1
add al, 0xe4
into
test ah, dl
enter 0xee3, 0x6b
jno 0x10090cf7
imul esi, dword [esi], 0x71
and byte [ebx + ecx], ch
sub al, 0xb
inc esi
ja 0x10090cb2
adc ah, byte [edx - 0x4f489982]
mov byte [0xb0b7667e], al
mov bh, 0xb0
or ebx, dword [edx - 0x74]
push 0xffffffffffffffe0
cld
leave
mov ebp, 0x1110d230
stosb byte es:[edi], al
fcom st(1)
sub eax, 0x8aa8281d
mov al, byte [esi + 0xd668356]
xchg ebx, eax
clc
xchg byte [esi - 0x7d], dl
or ax, 0xf893
or edi, dword [ecx + 0x30]
pushal
loopne 0x10090ce9
jb 0x10090ccb
cmp ch, ah
aad 0x8d
inc edi
stc
sub eax, 0x901c6935
or byte [edx - 0x2358a854], bl
dec edi
fidiv dword [ebp - 0x45]
push edi
cmpsd dword [esi], dword es:[edi]
fmul qword [edi - 0x26]
jne 0x10090cd6
mov edx, 0x29716a70
salc
imul ecx, dword [ebx + ebp*2 + 0x27], 0x32
pop eax
lahf
cmp eax, 0xf3192787
adc al, 0xe6
das
les edi, [esi]
xor eax, 0x220e4822
pop ebp
sbb byte [edx], al
insb byte es:[edi], dx
sub dword [edi + 0x60a57654], edx
loop 0x10090d02
out dx, al
call 0x5afe2bd1
push 0xffffffffffffffa3
inc ebx
popfd
imul eax, ebp, 0x52
out dx, al
push ebp
adc al, 0xfc
das
push ebp
lahf
std
pushfd
shr dword [ecx], 0x3e
cmp bh, bh
and eax, 0x66266b7c
test byte [ebx], dh
invalid
popfd
call fcn.1004b712
push eax
push str.Entering_CHYNODE::SendPulse.....To__s
pushfd
test byte [0x10090d97], 0x31
jne 0x10090d98
inc ebp
inc edi
popfd
push 0
push 3
pushfd
test byte [0x10090daf], 0xd2
jne 0x10090eb0
or dword [eax], edx
ror byte [edi], cl
test dword [0xfc000001], eax
cld
mov edx, 0xe4e5eaa4
lea edx, ss:[0xd21a2920]
pushfd
les ebx, [edi - 0x4b]
aad 0xb5
and al, 0xcb
das
sub al, 0xd9
add eax, 0x5dc302e
push ebp
dec edx
xchg ecx, eax
inc ebp
pop ebx
mov al, 0xe8
pop esi
xchg edi, eax
or al, byte [esi + 0x29f93bab]
aad 0x3b
sbb dword [esi + 0x3f6ffc02], ecx
xchg ebx, eax
xchg ebp, eax
dec ebx
jb 0x10090da2
cwde
push ebx
mov al, byte [0xd690a7e5]
lds ebx, [eax]
aam 0x9c
adc edi, dword [esi - 0x50]
dec esp
jo 0x10090dfe
mov eax, dword [0x8f0e3cf5]
push 0x6b
cmp al, 0xe
invalid
or eax, 0xa424bf3a
push dword [ebx + 0x46]
jae 0x10090e4c
outsd dx, dword [esi]
and ebp, edx
dec esp
add dl, cl
out dx, al
pop ebp
arpl word [ebp + 0xc], ax
test eax, 0xbfa2cf8c
jno 0x10090e96
arpl word [ebx], si
mov bl, 0x53
pop esi
pop es
call 0xc5187291
xor al, 0xb
pop eax
cmp esp, ecx
dec eax
cmpsd dword [esi], dword es:[edi]
imul edi, dword [ecx + 0x2f], 0x776d07a
out dx, al
imul esp, eax, 0xffffffc7
mov ecx, esp
adc al, 0xa9
xchg edx, eax
mov dh, 0xec
sub edi, dword [ebp + 0x9d86daa]
fsubr st(4)
mov bl, 0xcd
sbb al, 0x8d
jle 0x10090df9
lea edi, [esi - 0x52]
scasb al, byte es:[edi]
push edi
cwde
scasb al, byte es:[edi]
inc edx
inc eax
pop ebx
sahf
pop ecx
pop esp
dec eax
push esi
sub eax, 0x31725c46
pause
sahf
jnp 0x10090ec0
fmul qword [0x6d8e4018]
or al, 0x24
dec ecx
and edx, esp
add eax, 0x8ff045ba
sub al, 0xe5
inc ebx
pop edi
nop
inc byte [eax - 0x2f081ac1]
loop 0x10090e04
shl dl, 1
xchg cl, cl
leave
xor ebp, ebx
jle 0x10090e7b
movsb byte es:[edi], byte [esi]
add dword [ebx + 0x6e55c67c], 0x8cbf5a8d
push esi
test byte [edx - 0x50edc9e2], al
xchg esp, eax
cdq
lodsd eax, dword [esi]
xchg esp, eax
adc edx, 0x164573ab
push es
add dword [eax + edi*8], 0xab059314
mov bh, 0x92
call 0x527b0890
sti
popal
popfd
call fcn.10049c0c
add esp, 0x14
lea ecx, [ebp - 0x84]
call fcn.100595a5
push 0x5d
lea eax, [esi + 0x6eb]
push eax
pushfd
test byte [0x10090f82], 0x4f
jne 0x10090f83
loope 0x10090e48
cld
jmp [edx + 0x5d]
pop ebp
out dx, eax
rcr dword [edi], 1
push cs
daa
jnp 0x10090ef2
fst qword [edx - 0x55]
sbb byte [edx + 0x771e7a06], ch
pop es
push 0xffffffffffffff97
xchg ebx, eax
std
pop ebp
push 0x16
imul esp, esp, 0x5d
add eax, 0x52f20592
dec esi
pop ds
cmp byte [ecx - 0x70], cl
fsubr dword [edi + 0x67ffb973]
aam 0x4e
sal dword [eax + edx*4 + 0xcc38f5c], cl
mov esi, 0xcaf32637
out 0xb9, eax
push ss
inc esi
not byte [eax]
or byte [edi - 0x42], ch
movsd dword es:[edi], dword [esi]
fld dword [ebp + ecx*8 + 0x5f6ab2d]
push ds
invlpg byte cs:[ecx + 0x13]
mov eax, 0x88338f6e
lodsd eax, dword [esi]
push edx
sbb ebp, dword [ecx]
xor dword [eax + 0x1e], 0x47
mov ebx, ebp
mov edi, 0x5b009b38
pop ebx
adc ah, byte [edi + 0x4b]
rep movsd dword es:[edi], dword ss:[esi]
pushal
adc dword [ebx], eax
or bl, byte [ebx - 0x2bffd505]
xor bl, byte [0x5572038e]
dec dword [ebp + 0x64ef0ed0]
nop
mov edx, 0x6a7c7d1e
aas
mov ah, 0x51
ror dword [ecx + 0x594c450c], 0x77
int3
popfd
lea eax, [ebp - 0x67]
pushfd
test byte [0x10090fbb], 0x99
jne 0x10090fbc
sub esp, dword [edi - 0x288e86c6]
cmpsd dword [esi], dword es:[edi]
cmp bh, byte [ecx + 0x71]
xlatb
dec ebx
sub dword [ecx + 0x7d], ebp
stosb byte es:[edi], al
sti
outsb dx, byte [esi]
lds edi, [ebp - 0x59f11d40]
mov dh, 0x60
fisubr word [edi]
fstpnce st(5), st(0)
xor al, 0xca
pop esp
jae 0x10090fb7
mov ah, 0x9f
or eax, 0xa3b5ac39
lodsb al, byte [esi]
mov ch, 0xa3
sal dword [eax - 0x4b1d5cb3], 1
dec ebx
dec ebp
mov dword [0x9d4bb4e2], eax
popfd
push eax
pushfd
test byte [0x10091098], 0x3b
jne 0x10091099
and byte [ecx + 0x2a], bh
cmp byte [esi - 0x5d], ah
cmp ah, bl
enter 0xffffffffffffe9b5, 0x11
add ch, ch
jbe 0x10090f90
je 0x10091039
mov ch, 0x1b
jb 0x10091026
test edi, eax
lodsb al, byte [esi]
xchg edi, eax
mov dword [edi], esp
aam 0xb
nop
and eax, 0x3f75e5cd
cmp esp, esi
mov ecx, 0xd7542ac4
cmp eax, 0xb66ac9aa
cli
adc esi, dword [esi]
xchg al, ah
ror dword [ebp + 0x386c662], 0x6e
cdq
mov edi, eax
push eax
or eax, dword [edx]
dec eax
inc esi
mov ah, 0xf2
mov ch, 0xf7
cmp edi, dword [ebp + 0xf053760]
js 0x10090fb2
pushfd
add al, 0x26
enter 0xffffffffffff88ee, 0xfffffffffffffff1
xor dword [esi + eax*4 + 0x12], edx
push esp
xchg byte [edx], dl
adc cl, byte [ebx + 0x7dcfbfa9]
sti
mov ebp, dword [ecx + 0x657dcfbf]
sti
xchg ah, bh
pop edi
arpl word [edi], bx
cli
adc ch, byte [eax]
push ss
sahf
loopne 0x100910b3
jns 0x1009109c
popal
mov eax, dword [ebx + 0x68]
or eax, 0x4384820b
mov dh, 0xb5
insb byte es:[edi], dx
add esp, ebp
movsd dword es:[edi], dword [esi]
scasd eax, dword es:[edi]
sub ch, byte [edi]
psubsb mm6, qword [ebx]
leave
push eax
adc dl, ah
int1
int1
arpl di, cx
fldenv [eax]
mov dword [ebp + 0x2d99fb73], eax
inc esi
and byte [eax], 0x32
in al, dx
cmp al, 0x23
lea esi, [eax - 0x2501b0e1]
outsd dx, dword [esi]
pop esi
cmp esi, esi
cmp cl, byte [0xb919ba80]
mov esi, fs
mov word [edx - 0x5a4cfcfc], cs
jae 0x10091086
and byte [esi + eax*4 + 6], cl
insd dword es:[edi], dx
adc dh, byte [ebp - 0x64]
jne 0x10091024
add eax, 0x3c79cb3f
mov fs, ebp
add edi, dword [ecx + 0x243d706b]
xchg edi, eax
lea esp, [edx - 0x72]
popfd
call fcn.1011d7d0
add esp, 0xc
pushfd
test byte [0x10091156], 0xa7
jne 0x10091157
invalid
push cs
add ecx, dword [edi + 0x46]
inc esi
ror dword [ebx - 0x6a23e57d], cl
pop ss
or esp, 0xfffffffd
enter 0x7045, 0xffffffffffffffab
add dword [edi + 0x4a0989f2], 0xb103d61f
sbb edx, dword [esp + edx + 0x5c]
bound edi, qword [ebx]
xchg bl, cl
push ebx
pop eax
xchg esi, eax
xchg byte [esi + 0x1c4ee56], cl
sub byte [ecx - 0x49], bh
push 0xa
xchg byte [0x8d3a94db], ch
sbb ebp, dword [ebx + 0x142e8b35]
add byte [ecx], bl
aam 0x78
mov esi, 0x66468bfe
sbb dword [0xcc88b52], 0x4ffdd9f7
push edx
fcomp dword [esi]
movsb byte es:[edi], byte [esi]
push eax
scasb al, byte es:[edi]
test byte [edi], bl
sub ebx, dword [0x677030da]
cmp byte [eax - 0x4aad4525], dh
adc dword [edx], ebp
push 0xb89a02be
adc dword [ebp - 0x4dfdca7f], 0xffffffab
in eax, dx
cmp ecx, dword [ebp + edi*4 - 0x1ca63ed2]
popal
out 0x1d, al
in eax, dx
cmc
enter 0xffffffffffffc3b5, 0x40
pushfd
daa
mov ah, 0xb4
mov esp, 0xcd9ffac3
jl 0x10091197
stosd dword es:[edi], eax
pop ebx
xchg ebx, eax
in al, 0xed
mov ch, 0x38
mov bl, 0x3b
push ds
sub dword [eax], esp
lodsd eax, dword [esi]
pop ebx
jnp 0x100911a3
lodsd eax, dword [esi]
insb byte es:[edi], dx
cmp al, bl
push edx
popfd
cmp dword [esi + 0x28f], 0
jne 0x10091168
mov dword [ebp - 0xa], 1
cmp dword [esi + 0x61], 0
pushfd
test byte [0x1009118e], 0x16
jne 0x1009128f
inc edx
add ebp, ecx
pop esp
pop edi
dec esp
and bl, byte [edi]
sar byte [esi - 0x22], 0xda
popfd
fisubr dword [ecx - 0x76]
sub dword [edx - 4], eax
sub eax, 0x6d6c49a2
inc ecx
adc dword [ebp + 0x4e], esi
sbb ebp, dword [ebx]
dec esp
mov ecx, 0x33f65c71
sub ecx, dword [ecx + edi*4 + 0x71]
pop esp
div byte [ebx]
mov eax, dword [0x1cb07ee0]
loopne 0x100911f5
sub ecx, dword [ecx - 4]
out 0x1d, eax
pop edi
invalid
stosd dword es:[edi], eax
je 0x1009122e
scasb al, byte es:[edi]
cmp ch, al
pushal
popal
push cs
imul ecx, esi, 0xffffffa1
js 0x100911fb
pop ebp
and dword [ebx], edi
xlatb
pop edi
jg 0x10091182
xor ebx, dword [0x9edc5857]
xchg ecx, eax
mov dl, 0x12
pop edx
jg 0x1009117e
test byte [edi + 0x1d6caf9e], al
jg 0x100911ba
inc esp
jnp 0x10091262
push 0xffffffffffffffa1
xlatb
popal
aas
mov ah, 0xec
xor byte [esi - 0xd97f992], dl
imul esp, ebx, 0xe0cc2569
je 0x1009126d
xchg ebx, eax
adc eax, 0x9839348a
cmp ecx, dword [ebx]
sub bl, bh
popfd
test al, 0xe5
jnp 0x100911eb
dec edi
and al, 0x15
aam 0x19
loop 0x10091249
shld dword [eax + 0x693ba960], ebx, 0xe5
add al, 9
fisttp word [esi + ebx*8]
pushal
test eax, 0x4e5693b
or edi, ebx
or al, 0xde
loop 0x10091288
dec ebx
dec edx
xor eax, 0xa0c80bed
cdq
cmp eax, 0xef9fab89
lahf
out dx, eax
je 0x100911e6
cdq
push ecx
push ss
inc ebp
cmp dword [edi + 0x70f5e5f2], 0x6f
jns 0x100911cd
inc esi
inc esi
aad 0x94
xchg ebp, eax
cmpsd dword [esi], dword es:[edi]
sub edi, eax
push ebx
sbb eax, 0x6ab40a43
jns 0x100911e3
add dword [esi + 0x6e6fbf53], eax
mov ebp, 0xe5f60b8d
std
cdq
in eax, dx
push ebp
mov ah, 0xb
rcl dword [esi + ebp + 0x26]
and edi, ebx
shl edi, 1
loopne 0x1009126b
inc dword [edi - 0x209e3e92]
scasd eax, dword es:[edi]
xchg dword [esi - 0x3f], ebp
popal
fild qword [edi + 0x3143d0e4]
int3
outsb dx, byte [esi]
shl dword [ecx - 0x21], 0xaf
in al, 0xd0
inc ebx
xor esp, ecx
salc
cmp byte [edi], 0
call 0x8734aeb6
jg 0x1009127b
add al, ch
xor eax, 0x7f772b9c
clc
inc edi
xor al, 0xd5
ror esi, cl
jbe 0x10091230
dec esp
inc esi
lahf
jl 0x10091217
popfd
jne 0x10091296
or dword [ebp - 0xa], 2
push 0x7e
lea eax, [ebp - 0x84]
push eax
lea eax, [esi + 4]
pushfd
test byte [0x1009135f], 4
jne 0x10091360
pop esp
inc edi
in eax, 0x4a
xchg esp, eax
pop ecx
mov ebp, dword [ebp + 0x69a75496]
push edi
push edx
mov ch, 0x32
mov dh, ch
push ebp
sal edi, 0x36
mov dl, 0
xlatb
cli
leave
movsd dword es:[edi], dword [esi]
xchg ecx, eax
mov dh, 0x26
xor cl, byte [eax - 0x59]
ror dword [ebx + esi - 0x2a9debe6], 0x63
jne 0x10091310
and al, 0x2e
leave
jbe 0x1009130d
inc ecx
adc dword [ebx], ebp
popal
xor al, 0x14
in al, dx
and eax, 0xe03d72e3
out dx, al
fld dword cs:[ebp + 0x30]
test dword [edi - 0x7297b69b], ebx
std
sar dword [ebp*8 + 0x4328f896], cl
dec ebp
out 0x1d, al
dec esi
sub eax, 0x7d9f5b79
mov esi, ebx
jno 0x1009130c
fidiv word [ecx - 4]
mov ah, bh
xor eax, 0xb549b942
xchg esi, eax
pop eax
stc
push edx
movsd dword es:[edi], dword [esi]
adc dword [eax + 0x4f], ecx
sub eax, 0xae67fa54
jb 0x1009137b
jae 0x10091364
xchg ebp, eax
xor dword [edx + esi*4], 0xae0bd1c3
sbb dword [ebx - 0xf], 0xd5f71b50
scasb al, byte es:[edi]
les eax, [eax - 0x36938356]
fsincos
stc
sbb byte [edx - 0x4f61cdba], bh
xor eax, 0xe705695e
clc
cld
adc al, byte [esi - 0x404c2cb0]
das
jnp 0x100913ca
bound edx, qword [ebx - 0x780dac58]
popfd
push eax
mov ecx, esi
call fcn.1008fc59
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
pushfd
test byte [0x1009139f], 0x5f
jne 0x100914a0
add byte [eax], al
aas
pop ebp
int 0x64
xchg bl, dh
nop
mov dh, 0x57
cmc
mov cl, byte [eax]
pop edi
jle 0x1009131f
test eax, 0xa8342951
xchg ebp, eax
arpl si, bx
add byte [edi - 0x4e5f1ea1], 0xe0
sub dword [edi - 0x29], 0x37c263f5
jb 0x100913aa
clc
stosd dword es:[edi], eax
jecxz 0x10091419
mov ecx, ebx
cmp al, 0x28
movsb byte es:[edi], byte [esi]
bnd jae 0x1009134f
retf
adc al, 0xed
or byte [ecx], al
push 0x10c16cc3
cmp dword [ebp + 0x4d6cf531], ecx
sub eax, ebx
push cs
pop es
inc edx
jnp 0x10091369
xlatb
rol byte [ecx + 0x23], 0x38
and edi, dword [eax]
std
or ch, byte [edi + 0xd]
xchg ecx, eax
xchg esi, eax
xor byte [edi - 0x10], al
cmp al, 0xea
lea eax, [edi]
and edx, dword [ebx]
cmpsb byte [esi], byte es:[edi]
out dx, eax
inc eax
and ecx, ebp
sahf
sbb ecx, dword [eax]
cwde
cmp dword [esi - 0x7b7d1f13], ecx
js 0x10091447
mov edx, 0xacee4cae
sahf
cmp dword [esi - 0x725131d4], ecx
pushfd
div byte [esi]
mov dl, byte [ebx + 0x7e5c314e]
shl dword [ebx + 0x22], 0xf5
ficomp word [0x7fdcaa3f]
cmpsd dword [esi], dword es:[edi]
pop esp
leave
mov esi, 0x3377c937
adc eax, dword [eax - 0x52]
popal
mov dh, 0x86
and dword [ebp + 0x76], 0x88d8e488
scasb al, byte es:[edi]
jg 0x1009147e
and dword [esi], 0xffffffe8
or eax, 0xded52b0a
sbb byte [edi + 0x23], bh
out 0x76, eax
push cs
add bl, byte [ecx + 0x78]
idiv edx
jnp 0x10091495
add dword [ecx], eax
xchg ebp, eax
and ebp, dword [edx + edi*2 + 0x40]
and dh, byte [ecx]
xor byte [edi - 0x3043521c], ch
jg 0x10091467
mov esp, 0x1b7f65cf
jo 0x10091461
adc eax, 0xcd2bce4e
adc edx, dword [edi]
or dword [edi + 0x1fe3a4a9], ecx
outsb dx, byte [esi]
pop edx
xchg esp, eax
add edi, dword [edx - 0x1d48bd5c]
inc edx
mov bh, 0xe2
mov cl, 0xe8
add ecx, dword [eax + 0x72f74c88]
xchg byte [eax - 0x2a417b30], bl
mov eax, es
xchg ecx, eax
mov byte [eax - 0x798d08b4], cl
cwde
rol byte [esi + edi*4 - 0x6e3f732b], 1
arpl word [esi - 0x45], ax
aas
adc eax, 0x986dcdcc
fldcw word [edx + 0x5fcd2844]
test dword [esi - 0x529676b1], 0xc0866306
stosb byte es:[edi], al
loop 0x10091421
std
adc byte [ecx], bh
adc al, 0xfd
std
stosb byte es:[edi], al
test dword [eax + 0x5f], 0x994445a1
lodsb al, byte [esi]
pushfd
popfd
call fcn.1011e48a
leave
ret