Function at 0x46028e
Capabilities:
Encode data using base64

Disassembly:
push ebx
lea esp, [esp + 4]
mov bl, byte [ecx + 1]
jmp 0x45fc91
cmp al, 0x61
push edi
lea esp, [esp + 4]
jmp 0x45fc1b
cmp al, 0x2b
call fcn.0045fc79
fcom qword [edi - 0x501f745f]
movsd dword es:[edi], dword [esi]
jnp 0x421ac6
cmpsb byte [esi], byte es:[edi]
invalid
cmp al, 0x30
jmp 0x421a86
push dx
push word [esp]
lea esp, [esp + 1]
lea esp, [esp + 3]
jmp 0x45fc3f
mov dl, 0xad
mov esp, 0xa38c0e23
mov ebx, 0x127f7d1c
jne 0x421b38
xchg edi, eax
invalid
outsb dx, byte [esi]
cmp dh, byte [edx]
cld
invalid
call 0x4612d7
pushfd
mov dl, 0x6f
ljmp 0x189e:0xfb9d4cd2
jmp 0x461117
pushal
mov dword [esp + 0x13], ebx
lea esp, [esp + 0x20]
cmp bl, 0x61
jmp 0x421d74
jb 0x421db7
jae 0x4611be
or dword [eax - reloc.MSVCRT.dll_strncpy], ebp
sal byte [edx], 1
or byte [eax], al
fisub word [edi + edx*8 - 0x169f0bc2]
mov edx, 0x990003f1
sti
rol dword [eax + ebx*8], 0xf1
dec edi
or ah, dh
or ebx, dword [eax - reloc.MSVCRT.dll_strncpy]
mov esi, esp
add eax, dword [eax]
call 0x461231
xor ecx, dword [edx + 0x18]
mov ch, 0x54
pop ebx
call 0xeb9f1c4b
ja 0x421db0
jmp 0x421de8
iretd
cmp bl, 0x30
jmp 0x461190
mov byte [edi], bl
jmp 0x4618db
cmp edx, 0x3e
call fcn.0046192b
test edi, ebx
movsb byte es:[edi], byte [esi]
test byte [ecx - 0x57], 0x87
push esp
pop ebx
and dl, byte [eax]
xchg ebx, eax
or ah, byte [ebp + 0x24648d9c]
add al, 0x88
dec edi
add eax, ebp
popal
sti
add eax, dword [eax]
pushfd
lea esp, [esp + 4]
mov byte [edi + 1], cl
call 0x4619bd
push word [esp + 3]
lea esp, [esp + 2]
jmp 0x4619a7
cmp edx, 0x34
jmp 0x461901
cli
xor al, 0xe9
xchg edx, edi
add eax, dword [eax]
mov byte [edx], dl
mov al, byte [0x8b43a300]
sub byte [ebp - 0x11b82b5b], 0xf9
call fcn.004619df
sbb dword [eax], edx
rcl dword [edi + reloc.MSVCRT.dll_strncpy], 0x65
inc edx
jb 0x421ed7
jp 0x421e73
cmp edx, dword [edx]
lea esi, [ebx]
leave
call fcn.004619d8
xor al, 0x91
pop eax
int 0xf3
dec eax
cli
insd dword es:[edi], dx
movsd dword es:[edi], dword [esi]
xor edx, dword [reloc.MSVCRT.dll_strncpy]
call fcn.00461a08
popal
mov al, byte [0x3c721ae3]
cmc
adc eax, 0x3aba591a
invalid
pop esi
mov ebx, 0xb7ffdfc8
jmp 0x461a83
push 0xf31e277f
call fcn.004349be
jmp 0x43fac3
cmp eax, 0x34
call fcn.00461ab3
dec cl
push 0xf489778b
adc eax, 0x8fd3721a
mov ch, 0xe5
call fcn.00461aaf
xchg ebx, eax
invalid
mov byte [edi + 3], cl
ret
push edx
lea esp, [esp + 4]
call fcn.0046169c
mov dword [reloc.MSVCRT.dll_strncpy], eax
nop
push ebx
lea ebx, [edi + ebp*2]
jbe 0x43fb3a
mov al, byte [ecx]
jmp 0x460e98
lea esp, [esp + 8]
jmp 0x45fb34
pop ebp
xchg edi, eax
dec cl
push 0x548b228b
mov edx, dword [esp + 4]
jmp 0x43faf3
mov ecx, dword [ebp + 0x14]
sub esp, 0x18
jmp 0x45f714
mov byte [eax], 0
jmp 0x45f7ad
mov eax, 0xb0e70901
jmp 0x45ff03
lea esp, [esp + 4]
jne 0x45eece
leave
ret
mov dl, byte [ecx + 2]
jmp 0x4601ef
cmp bl, 0x61
push esi
jmp 0x45fd00
lea esp, [esp + 4]
jbe 0x45f6a4
ja 0x45f6f3
lea ebx, [edx]
mov bh, ch
sbb ch, byte [eax - 0x75108013]
jns 0x45f70c
ror byte [ebp - 0x24], cl
das
jmp 0x45f698
cmp bl, 0x2b
jmp 0x45fd74
cmp bl, 0x30
push eax
push word [esp + 2]
jmp 0x45fcea
or dword [edi], edi
cmpsb byte [esi], byte es:[edi]
xor al, 0x53
scasb al, byte es:[edi]
insb byte es:[edi], dx
push edi
lea esp, [esp + 0x18]
dec dword [ebp + 0x14]
test ecx, ecx
call 0x45f6db
call 0x45feee
lea esp, [esp + 8]
mov cl, byte [ecx + 3]
cmp cl, 0x41
jmp 0x45fe73
lea esp, [esp + 2]
jmp 0x45f792
adc byte [ecx + ecx - 0x43f40767], 0x28
dec ebx
loop 0x45f769
call 0x45fdae
jb 0x45f741
jl 0x45f770
test byte [esi + 0x60], 3
xchg ebx, eax
test byte [0xf0f146bd], 0xf3
ljmp 0x670
cmp dl, 0x2b
jmp 0x45fdda
add byte [0x8f7c1585], ah
or dh, byte [esi + esi - 0xc13c5c]
cmpsd dword [esi], dword es:[edi]
into
call fcn.0045fd92
pop eax
invalid
mov ah, 0x36
movsb byte es:[edi], byte [esi]
ret
push sp
jmp 0x45f736
cmp cl, 0x61
pushfd
push dword [esp + 1]
jmp 0x45fe46
inc eax
jmp 0x45eea2
call fcn.0045ff60
invalid
pop edi
jmp 0x4604f2
cmp al, 0x2f
jmp 0x46000a
cmp al, 0x2b
push ebx
jmp 0x45ffb2
pushfd
jmp 0x45f82c
jmp 0x45fff4
pop eax
jmp 0x45f918
lea esp, [esp + 4]
cmp al, 0x39
ja 0x45f8d8
call fcn.00460033
or al, 0x9e
or al, 0x6b
cmpsb byte [esi], byte es:[edi]
sbb byte [esi - 0xd], bh
arpl word [esi], ax
cmc
inc eax
jbe 0x45f8ac
mov al, byte [0x65be960]
add byte [eax], al
int1
not dword [bp + si - reloc.MSVCRT.dll_strncpy]
or dword [eax + reloc.MSVCRT.dll_strncpy], ebx
jne 0x45f8c4
pushal
jmp 0x45fead
xchg edi, eax
inc byte [eax - 0x4816d005]
or byte [eax], al
add bh, bh
xor al, 0x24
jmp 0x45f8b6
cmp bl, 0x39
call fcn.0046010b
fisttp qword [ecx - 0x27]
mov eax, 0xea7df74b
js 0x45f8a0
ljmp 0x53ac:0x5d228b58
sal dword [esi + reloc.MSVCRT.dll_strncpy], cl
lcall 0x3330, 0x31bf0cfd
sub ch, al
enter 0xffffffffffffffff, 0xffffffffffffffff
invalid
pop ebp
lds edx, [ebp + 0x3c]
iretd
jbe 0x45f88f
cmp dword [esi - 0x34], reloc.MSVCRT.dll_strncpy
push cs
jle 0x45f87a
out 0xe, eax
cdq
clc
fistp dword [esi - 0x15]
cmp bh, bh
je 0x45f8dd
push dword [esp + 5]
lea esp, [esp + 0xc]
add eax, 0xc24648d
movzx esi, bl
stc
jmp 0x45f86f
sub byte [eax + 0x4b04126], dh
lodsd eax, dword ss:[esi]
cmp eax, 0x2077b744
mov esi, 0x2c64b2c
setbe byte [edx + ebx*2]
cmp al, 0x5a
jmp 0x460035
add byte [eax], al
sbb al, 0x81
adc dword [eax - 0x7d], esi
xor al, 0xde
inc edx
sal byte [edi + 0x3a83f242], 1
adc eax, 0x86fe8
add byte [ebx - 0x77ac99c1], cl
xor al, 0x24
call 0x460162
mov edi, dword [edi]
push bx
mov byte [esp], dh
lea esp, [esp + 2]
lea esp, [esp + 4]
jmp 0x46014c
pop ss
mov ebx, 0x3cbd4e2b
push ds
imul ecx, dword [eax + reloc.MSVCRT.dll_strncpy], 0xfd000007
call 0x46008a
std
jge 0x45f90d
je 0x45f8a9
inc esp
int 0x4e
fdivr qword [ebx - 0x59a01caa]
rcl dword [eax - 0x2d]
sub esi, 0x47
jmp 0x45f8ee
push ebp
mov dword [esp], esi
jmp 0x45fe56
pushfd
pushal
jmp 0x45f999
push esp
lea esp, [esp + 4]
cmp dl, 0x2f
jmp 0x46018e
lea esp, [esp + 0x24]
pop edx
jmp 0x45f9c5
push sp
lea esp, [esp + 2]
jmp 0x460215
cmp edi, 3
push dx
lea esp, [esp + 2]
jmp 0x460233
cmp dl, 0x39
jmp 0x4601d7
lea esp, [esp + 3]
movzx edx, dl
cmc
jmp 0x4601c1
push eax
pushal
jmp 0x45ff3b
cmp cl, 0x2f
call 0x46028e
inc ebp
aad 0x45
sub al, 0xdf
arpl bp, dx
inc esi
aam 0xb3
dec esi
std
ja 0x45fa8a
push ebx
jmp 0x45fa33
push edx
mov edx, ebp
jmp 0x460393
sub edx, 0x47
jmp 0x45f9c5
pop ecx
jmp fcn.0045fa9a
cmp cl, 0x39
push di
cmp dword [esi + 0x57], esp
lea esp, [esp + 2]
ja 0x45fab0
jbe 0x460290
inc edx
salc
inc esp
and ebx, esi
insb byte es:[edi], dx
ror byte [ebx - 0x25], 1
mov esi, 0x796ef84d
pop eax
mov ebx, 0xe95afa80
invalid
cmp dl, 0x5a
jmp 0x460352
add byte [eax], al
mov dl, byte [eax]
xchg cl, ah
adc ch, dl
adc al, 0x8d
sbb eax, 0x9c279764
out dx, eax
call 0x4602b8
or ebx, dword [ebx + reloc.MSVCRT.dll_strncpy]
arpl sp, di
xchg edx, eax
cmc
add al, 0xb1
dec ecx
call 0xec239cd2
wait
xor ch, byte [esi + 0x6b65b3c]
and bl, al
push ebx
lds edi, ss:[ebp + 0x26]
test byte [edx], bl
jge 0x45fa65
jmp 0x45fa63
or esi, dword [ecx + reloc.MSVCRT.dll_strncpy]
add byte [eax], al
mov bl, 0x37
cmpsd dword [esi], dword es:[edi]
ret 0xfe31
jmp 0x4604ab
push si
jmp 0x4604ce
jmp 0x46040d
push ebp
btc bp, ax
bswap ebp
jmp 0x45fb62
xor eax, eax
jmp 0x45f7c9
mov ebp, esp
push ecx
cmc
call 0x45fb6c
pop es
pop word [esp]
jmp 0x45fc31
pop eax
lea eax, reloc.MSVCRT.dll_strncpy
jmp 0x45eea2
mov edi, eax
push dx
lea esp, [esp + 2]
jmp 0x45fbf4
sub esp, 0x12
lea esp, [esp + 2]
lea esp, [esp + 0x10]
push edi
stc
jmp 0x45fb8f
mov al, byte [ecx]
call fcn.0045fbca
jbe 0x421a2a
ja 0x421a44
insb byte es:[edi], dx
add edx, dword [ebx + reloc.MSVCRT.dll_strncpy]
int1
lea esp, [esp + 2]
lea esp, [esp + 2]
lea esp, [esp + 4]
jmp 0x45fbfb
jb 0x421a7d
stc
jmp 0x45fc55
add esp, 0
lea esp, [esp + 2]
push ecx
push ebx
jmp 0x45fba5
jb 0x421a63
call 0x45fce2
mov cl, 0x2b
mov ebx, 0xce992dde
pop ecx
mov eax, 0x7a3cf29b
cmp al, 0x7a
jbe 0x421a2a
ja 0x421a7d
cmp al, 0x2f
jmp 0x45fc85
jne 0x45f67e
je 0x421a2a
clc
mov byte [ebp - 1], bl
stc
jmp 0x45fcb7
jbe 0x421a2a
ja 0x421a63
cmp bl, 0x41
jb 0x45f6ba
cmp bl, 0x5a
jmp 0x45fcc9
jbe 0x45f6a4
ja 0x45f6ba
mov eax, dword [reloc.MSVCRT.dll_strncpy]
adc dword [ecx + reloc.MSVCRT.dll_strncpy], 0x648d1fa3
and al, 4
cmp al, 0x39
jmp 0x45fcab
push ebx
lea esp, [esp + 2]
jmp 0x45fd29
lea esp, [esp + 4]
jb 0x45f6f3
cmp bl, 0x7a
pushfd
jmp 0x45f6c3
lea esp, [esp + 4]
jbe 0x45f6a4
ja 0x45f6dd
movsd dword es:[edi], dword [esi]
aam 0x47
out dx, al
stc
fmul dword [ebp + reloc.MSVCRT.dll_strncpy]
sub byte [edx - 0x7f000007], 0xfb
cmp dword [ebx + ebp*8 + reloc.MSVCRT.dll_strncpy], ebx
dec edx
mov ecx, 0x6901240
popal
nop
push ecx
lea ebx, [edi + ebp*2]
jbe 0x45fdab
lea esp, [esp + 8]
jb 0x45f6dd
cmp bl, 0x39
pushfd
jmp 0x45fd13
push ecx
mov ecx, 0x25d97369
lea ecx, reloc.MSVCRT.dll_strncpy
mov dword [eax], ecx
pop ecx
jmp 0x45fb83
lea esp, [esp + 0x20]
jne 0x45f67e
je 0x45f6a4
mov al, byte [0x64751ae3]
xchg edi, eax
je 0x45f6a4
cmp bl, 0x2f
pushal
mov byte [esp], ch
jmp 0x45fd5e
pop ebp
lodsb al, byte [esi]
mov edi, 0x24748966
add ebx, ebp
into
jbe 0x45f722
ja 0x45f762
test dword [edx + ebx*4], eax
std
or al, 0xb3
xor dword [eax], esi
xor ebp, dword [edx]
cmp dl, 0x30
jb 0x45f762
clc
cmp dl, 0x39
jmp 0x45fdb5
je 0x45f722
push bp
lea esp, [esp + 2]
jmp 0x45ff1d
jbe 0x45fa00
ja 0x45f960
nop
adc al, 0x8a
in eax, dx
sbb al, 0xd9
add eax, eax
cmp dword [edx], reloc.MSVCRT.dll_strncpy
and al, 8
lea esp, [esp + 8]
jb 0x45f960
cmc
cmp cl, 0x7a
jmp 0x45fe30
lea esp, [esp + 4]
cmp cl, 0x30
call 0x45fea1
adc dl, byte [ebp + 0x289f6c05]
mov word [esi], es
xchg esp, eax
push cs
mov edx, 0x88691e37
sub ecx, dword [edi]
adc byte [0x80fffff9], 0xf9
pop edx
jb 0x45f78e
cmp cl, 0x5a
jbe 0x45fa00
ja 0x45f78e
clc
cmp cl, 0x39
jmp 0x45fec3
push esi
xchg ebp, eax
pop edi
lea esp, [esp + 4]
jb 0x45f84c
jae 0x45fe88
lea esp, [esp + 0x20]
cmp cl, 0x2b
jmp 0x45fecf
jbe 0x45fa00
ja 0x45f84c
je 0x45fa00
cmp cl, 0x2f
je 0x45fa00
jne 0x45fef4
fst qword [edi - 0x39]
mov byte [0xc8459d51], al
pop esi
cmp eax, ecx
or ebp, esp
adc al, 0x55
jmp 0x45f727
cmp cl, 0x3d
je 0x45fa00
jne 0x45f67e
lea eax, reloc.MSVCRT.dll_strncpy
call fcn.0045ff8c
xchg edi, eax
or ebx, dword [ebx + reloc.MSVCRT.dll_strncpy]
lodsb al, byte [esi]
and al, byte [ebp - 0x4c]
pop es
cmp dword [eax], ebx
jnp 0x45fe9e
cmp dl, 0x2f
cli
das
call fcn.0045fe22
mov dword [edi], 1
jmp 0x45f7f5
lea esp, [esp + 0x24]
cmp dl, 0x3d
jne 0x45f7b3
jmp 0x45ff25
mov word [esp], bp
jmp 0x4600ce
lea esp, [esp + 4]
cmp dl, 0x5a
jbe 0x45f722
ja 0x45f74c
push di
lea esp, [esp + 2]
jmp 0x45f826
jne 0x45f80b
push cx
lea esp, [esp + 2]
push 0x3f
jmp 0x45f821
movzx eax, al
call fcn.00460056
pop edx
clc
outsb dx, byte [esi]
or eax, edi
jg 0x460099
aad 0x45
sub al, 0xdf
sbb al, 0xc4
ja 0x4600aa
test eax, 0x4c083c8
jmp 0x45f918
lea esp, [esp + 4]
push 0x3e
jmp 0x45f821
xchg edi, eax
pop es
bound edx, qword [ecx - 0x7cda75d1]
call 0xf8b6e9e7
invalid
add al, 0x54
invalid
lea esp, [esp + 4]
jne 0x45f7df
pushfd
lea esp, [esp]
jmp 0x46007f
cmp edi, 2
push si
lea esp, [esp + 2]
jmp 0x46017d
push 0x3e
jmp 0x45f976
jb 0x45f9af
cmp dl, 0x2b
jne 0x45f98c
je 0x460167
jne 0x45f9db
push 0x3f
jmp 0x45f976
add edx, 4
jmp 0x45f9c5
ja 0x45fa84
sub esp, 6
cmc
lea esp, [esp + 3]
clc
jmp 0x45f9e3
cmp dl, 0x41
jb 0x45f74c
pushfd
stc
jmp 0x45ffe1
mov edx, dword [ebx]
pop ebx
jmp 0x45f9c5
push ebx
mov ebx, ebp
lea ebx, [ebx - 8]
jmp 0x4601ff
cmp cl, 0x2b
jmp 0x460283
jne 0x45fa2c
pushfd
lea esp, [esp + 3]
lea esp, [esp + 1]
jmp 0x46021d
jne 0x45fa16
call fcn.0046026c
jmp 0x4602e5
movzx ecx, cl
pushfd
sub esp, 0x1c
lea esp, [esp + 0x20]
jmp 0x4602ce
add ecx, 4
jmp fcn.0045fa9a
lea esp, [esp + 4]
jne 0x45fac6
push 0x3f
jmp 0x45fa60
movzx edx, dl
ja 0x45fa4a
call 0x4602b2
shl eax, 0xc
mov esi, esp
jmp 0x4603b8
lea edx, [edx - 8]
mov ecx, dword [edx]
pop edx
lea esp, [esp + 4]
jmp fcn.0045fa9a
lea esp, [esp + 3]
jmp 0x4603c7
lea esp, [esp + 4]
pop esi
cmc
sub esp, 0x17
push dword [esp + 0x14]
jmp 0x4603a2
lea esp, [esp + 0x18]
cmp edi, 2
call 0x4603d4
dec eax
lea esp, [esp + 4]
jb 0x45fadc
jae 0x4607fd
in eax, 0x6f
call [edx - 0x42fd4a97]
push eax
mov eax, ebp
lea eax, [eax + 0x14]
jmp 0x45fd4a
sub esp, 0x17
lea esp, [esp + 3]
jmp 0x46041f
mov ecx, dword [ebp + 8]
lea edx, reloc.MSVCRT.dll_strncpy
mov edx, 0x9bcfa22e
mov edx, eax
jmp 0x4603f7
shr edx, 0x10
call 0x460428
xchg ecx, eax
mov dword [esp], edi
lea esp, [esp + 0x18]
mov byte [ecx], dl
jmp 0x46046b
sub esp, 4
stc
or eax, ecx
lea esp, [esp + 4]
jmp 0x45fb1e
cmp edi, 2
call fcn.00460455
lea esp, [esp + 1]
jmp 0x46057a
cmp edi, 3
jne 0x45fb1e
clc
clc
jmp 0x460446
lea esp, [esp + 8]
jne 0x45fb4c
je 0x460534
outsd dx, dword [esi]
hlt
lea esp, [esp]
lea esp, [esp + 2]
cmp edi, 3
pushfd
push ebp
jmp 0x4604b8
lea ebx, [ebx + edi]
pop ebx
leave
ret
mov byte [ecx + 2], al
jmp 0x45fb4c
shr edx, 8
lea esp, [esp + 0xc]
mov byte [ecx + 1], dl
jmp 0x45fb08
clc
pushfd
or eax, edx
lea esp, [esp + 0x1c]
jmp 0x45fadc
push ebx
add esp, 3
sub esp, 0x1a
lea esp, [esp + 3]
shl edx, 6
jmp 0x460723
call 0x4611a7
adc al, 0x8c
add ah, byte [ebp - 0x6c]
and byte [edx + 0x1be88919], al
invalid
push ebx
call 0x460f17
jne 0x460e9d
add byte [ebp - 3], dh
insd dword es:[edi], dx
hlt
mov word [esp], bx
sub esp, 0xc
jmp 0x461147
jb 0x421d62
sub esp, 0x15
lea esp, [esp + 1]
jmp 0x461121
mov bl, byte [ecx + 2]
stc
clc
cmp bl, 0x41
jmp 0x461101
lea esp, [esp + 0x14]
cmp bl, 0x5a
call 0x46112e
push cs
mov byte [esp], dl
lea esp, [esp + 4]
jmp 0x4611ea
lea esp, [esp + 0x10]
cmp dl, 0x2f
jne 0x421cec
je 0x421d18
cmp bl, 0x39
jmp 0x46119b
jb 0x460c04
call 0x461170
jbe 0x421da1
ja 0x460c04
mov word [esp], di
lea esp, [esp + 2]
lea esp, [esp + 2]
jmp 0x4611cd
cmp bl, 0x7a
jbe 0x421da1
ja 0x421db7
cmp bl, 0x2b
je 0x421da1
sub esp, 0x10
sub esp, 0xd
jmp 0x46120d
jbe 0x421da1
ja 0x421d62
jne 0x421cec
je 0x421da1
int1
cmc
pushfd
outsd dx, dword [esi]
rcl dword [edi + eax*4], cl
cmp dword cs:[eax], ebx
cmc
lea esp, [esp + 1]
lea esp, [esp + 0x1c]
cmp bl, 0x2f
jmp 0x4611f6
cmp edx, 0x1a
jae 0x421e72
mov cl, dl
bswap ecx
jmp 0x46191b
jae 0x421e39
mov cx, word [esp]
bswap ecx
jmp 0x461923
lea ecx, [edx + 0x41]
jmp 0x421e4f
lea ecx, [edx + 0x47]
jmp 0x421e4f
call fcn.00461976
lea esp, [esp + 4]
cmp esi, 0x1a
call 0x4619c2
js 0x4619a2
jge 0x4619bb
test dword [edi + 0x7c], reloc.MSVCRT.dll_strncpy
lcall 0x2424, 0x8dfffc04
pop word [esp]
lea esp, [esp + 2]
jmp 0x461a35
salc
inc ecx
jmp 0x421e5c
lea ecx, [esi + 0x41]
jmp 0x421eca
jae 0x421e88
lea ecx, reloc.MSVCRT.dll_strncpy
mov ch, dh
mov ecx, esi
mov ch, byte [esp]
jmp 0x461a00
mov byte [edi + 2], cl
mov bx, bp
mov ebx, dword [esp]
call fcn.00461a6d
lea esp, [esp + 8]
cmp eax, 0x1a
jae 0x421ef8
push edx
xchg byte [esp], ch
jmp 0x461ac9
push dword [esp + 3]
lea esp, [esp + 8]
lea ecx, [eax + 0x41]
jmp 0x421f3a