Function at 0x41f034
Capabilities:
Encode data using base64

Disassembly:
pop dword [esp - 4]
inc esp
and al, 0xfc
mov al, byte [ebp + 0xb]
add esp, 0x30
add eax, 0
cmp bl, 1
shr di, 0x40
mov cl, cl
mov byte [esi + 0xba], bl
js 0x444f60
jns 0x41f061
cpuid
pop edi
ret
jns 0x444f60
fnstenv [ebx - 0x2f3fea01]
push ecx
add byte [ebp - 0x7b7df040], al
cmp eax, dword [eax]
add byte [esi + 0xffa86d7], al
mov byte [ebp + 0x7900017a], cl
add al, 0xf
dec esi
jno 0x41f035
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0xb
push edi
mov dword [0x534129], 0xffffffff
call fcn.004343d5
add esp, 8
mov eax, 1
pop edi
mov bx, bx
pop esi
push 0x44f7ec
ret
add ch, 0
js 0x42a6f7
jns 0x437d80
stc
pop ss
or dword [edi], 0xff297189
invalid
jns 0x42a6f7
fmul dword [ecx]
jmp 0x444e2f
shr ebp, 0x40
push eax
push esi
push ebx
pop ebx
xchg cl, ah
shr bl, 0x40
xchg ah, cl
mov byte [esi + 0xba], cl
mov byte [esi + 0xbb], 0
shl bh, 0x20
mov word [esi + 0xbc], dx
push edi
xchg di, di
pop edi
xchg ebp, ebx
xchg ebx, ebp
call fcn.00441e8b
js 0x43a4d3
jns 0x437e16
loopne 0x437e8b
out 0xd3, al
jns 0x43a4d3
xor eax, 0x8768d00
shl si, 0x20
mov dword [ebp + 0x40], esp
jmp dword [esi]
inc eax
jbe 0x437e92
sub ecx, dword [ecx]
add byte [edi + 0xf], bh
xchg byte [esi - 0x78], ah
invalid
jbe 0x4206fe
xor al, 0xa0
outsb dx, byte [esi]
mov al, 0x42
add byte [eax], al
popal
add byte [eax + 0x40], al
add byte [ecx], ah
add byte [eax], al
cld
invalid
jmp fcn.00426432
mov si, si
sub ebp, dword [ecx - 0x40]
out dx, eax
inc eax
mov al, al
sbb dword [edi], ebx
jne 0x42a706
je 0x43c42d
mov al, 0x88
dec ebp
je 0x42a706
and byte [ebx + 0x42], 0x66
cmp eax, 0xf688ffff
inc edx
cmp ax, 0xffff
mov dh, dh
jne 0x44a130
je 0x43c448
pop ds
mov eax, 0xedc1660d
inc eax
shr bp, 0x40
jmp fcn.00435716
mov edi, dword [edx*8 + 0x5343f5]
sub esi, 0
test edi, edi
jb 0x4151b5
jne 0x448a5f
je 0x43c475
out dx, eax
stc
call fcn.00435712
add eax, 0x57c8d9b
add al, ch
call 0xda43c4c9
push esp
jmp 0x43c488
push eax
call fcn.0044ab06
jmp 0x44069a
or ecx, edx
jb 0x41de70
sub ebp, 0
xor cx, word [esi + 6]
jb 0x41de79
push 0x4442e0
ret
invalid
test edi, 0x180275d3
cmp bl, 2
mov ax, ax
shr bp, 0x40
jne 0x437d72
je 0x43ffbe
nop
cpuid
ret 0x8966
mov ax, di
mov al, al
mov bh, bh
shr di, 0x40
shr dx, 0x40
mov ecx, edi
xchg esi, ebx
shl dl, 0x20
shl ah, 0x20
xchg dx, ax
shl bh, 0x20
shl ch, 0x20
mov dl, dl
xchg dx, ax
mov di, di
xchg ebx, esi
lea edi, [edi]
shr ax, 0xc
mov edi, edi
mov dx, dx
mov dh, dh
shl ecx, 4
or eax, ecx
jb 0x43c419
xor ax, word [esi + 6]
jb 0x43c42a
stc
mov cx, cx
jb 0x440013
cmpsd dword [esi], dword es:[edi]
mov ch, 0xe9
jb 0x4195f5
fiadd dword [edi]
jmp 0x436e6b
push esi
shl si, 0x20
push ebx
call fcn.00444dd1
add esp, 0x2c
test ax, ax
jb 0x425b6a
shl al, 0x20
je 0x446378
jne 0x4406c3
dec edi
jl 0x4406c2
pop ss
call fcn.0045067c
and eax, 0xeac16656
inc eax
mov ebx, dword [esi + 4]
push 0x41e685
ret
xor esi, esi
jb 0x452094
mov eax, dword [ebp + esi - 0x5c]
test dh, 0xd1
test eax, eax
jb 0x43ce50
je 0x447dee
jne 0x441c6c
and edx, dword [ecx]
mov eax, dword [ebp + esi - 0x94]
push eax
xchg bl, bh
xchg bh, bl
js 0x447de3
jns 0x441c84
nop
cpuid
ret 0x890f
jns 0x447de3
shl dx, 0x20
jb 0x448894
lea edx, [edx]
jae 0x441c9c
nop
cpuid
ret
jmp dword [esi]
jmp 0x444e30
push edx
push eax
xchg ebp, ebx
shl ch, 0x20
mov ecx, ecx
xchg ebx, ebp
mov si, si
call fcn.0044ab06
mov al, byte [ebp + 0xc]
jne 0x41e1b9
je 0x444e53
or bh, bl
into
adc dword [edi], ecx
test byte [eax - 0x6d], ah
std
inc dword [0xeec1660c]
je 0x41e1b9
add eax, 0xeec1660c
inc eax
mov dl, dl
shr cl, 0x40
jno 0x41cf11
mov si, si
jo 0x444e72
sub cl, byte es:[ecx]
jo 0x41cf11
fldln2
lea esp, [esp + 4]
shr edx, 0x40
mov byte [eax + 2], 0
mov word [eax], 0
mov bp, bp
mov edi, dword [ecx]
add ecx, 4
mov dword [eax - 8], edi
sub ah, 0
add eax, 0xc
dec edx
jne 0x446583
je 0x444eab
mov ecx, 0xd2840f7e
push ss
add byte [eax], al
je 0x446583
fst dword [edx + 0x660c768d]
add ecx, 0x816690ac
jmp 0x3c9df6e
mov byte [esi + 0xbb], al
xchg si, ax
xchg si, ax
push ecx
mov cx, 0xed91
pop ecx
mov word [esi + 0xbc], di
xchg bh, cl
xchg bl, ch
xchg ch, bl
xchg cl, bh
jne 0x43ffa2
je 0x444f8b
lodsd eax, dword [esi]
dec edx
sub al, 0x68
mov ah, ah
xchg dx, di
shl ebx, 0x20
xchg di, dx
mov cx, di
shl ax, 0x20
mov edx, edi
mov si, si
shr cx, 0xa
mov ecx, ecx
shl edx, 6
jmp 0x43ca53
lea edx, [ebp - 0x110]
push 0
jmp 0x446381
push edx
shr esi, 0x40
call fcn.0043c0a2
lea eax, [ebp - 0x110]
push 0x80
jmp 0x446397
push eax
call fcn.00423f83
js 0x441181
jns 0x4463aa
mov edi, 0xf331e6d
mov ecx, edx
lodsd eax, dword [esi]
invalid
jns 0x441181
xor eax, 0x4c26ffa9
jne 0x444e7e
je 0x44658f
cpuid
nop
ret
js 0x44b1b2
jns 0x44659b
xor eax, 0xff5a4f2
mov dword [ecx], edx
dec esp
add byte [eax], al
jns 0x44b1b2
fsubr dword [edi - 0x27]
aas
inc ebx
add byte [edx], al
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [esi + 0x4b], dh
inc edx
add bh, ch
push ebx
inc edx
add byte [edx + 0x7f], bh
inc ebx
add bl, al
inc esp
add byte [ecx + ecx], ch
iretd
fidiv dword [edx - 0xd002d78]
push 0
push eax
mov eax, dword [ebp - 0x10]
mov bh, bh
mov dh, dh
push eax
push ecx
push esi
push 6
mov dword [edi], 1
call fcn.004150ac
add ecx, 0x638e0b88
sub ecx, 0x638e0b88
add esp, 0x24
cmp ax, 0x1a
shl bl, 0x20
jne 0x44d8f8
je 0x446ab0
cpuid
nop
ret
je 0x44d8f8
and eax, 0xd8d0f2f
add byte [eax], al
add byte [esp + eax - 0x3b], bh
cpuid
ret
call fcn.0043ba6e
add esp, 4
add esi, 4
test esp, ecx
jae 0x447dfc
nop
cpuid
ret
jae 0x42dc20
add eax, 0xe5c16687
and cl, al
loop 0x447e10
scasd eax, dword es:[edi]
sub eax, 0x276ffff
mov ebx, dword [ebp - 4]
test dx, 0xf22f
test ebx, ebx
jb 0x446a69
jne 0x41815c
je 0x448a7b
cdq
adc dh, byte ss:[eax]
xchg ebp, ecx
xchg ecx, ebp
push esi
call fcn.0043cf85
add esp, 4
test al, al
jb 0x42ae76
jne 0x41815c
je 0x448a9f
mov edx, dword [0x66f6ffc5]
mov ecx, ecx
push esi
mov cx, cx
call fcn.00431970
add esp, 4
test al, 1
jb 0x433bb3
jne 0x41815c
lahf
idiv ah
push dword [esp + eax - 0x2c]
pop edx
je 0x448ac3
aam 0x5a
mov ecx, ecx
mov eax, dword [ebp - 0x44]
ja 0x421013
jbe 0x448ad2
xchg dword [edi], ecx
mov byte [0x3b860fc3], al
test ebp, edi
invalid
jbe 0x421013
fnstenv [ebx + 0x66]
mov edx, dword [ebp + 0x10]
js 0x437dd6
jns 0x448aea
cpuid
ret
jns 0x437dd6
or byte [eax + 0x76], 0x4b
inc edx
add byte [ecx + 0x7a00429b], cl
jg 0x448b40
add byte [esi], al
mov eax, dword [eax + eax + 0x43]
jns 0x448ab9
fadd qword [ebp - 0x47]
inc ebx
add byte [eax + eax], cl
add byte [eax], al
xor byte [eax], al
add byte [eax], al
lahf
out dx, eax
inc esp
add ch, ch
xchg esp, eax
inc esp
add byte [edi], cl
js 0x448b60
add byte [0x48f66b3], dh
adc ecx, dword [eax + 0x406589c0]
jmp dword [esi]
mov cx, cx
jmp dword [esi]
bnd jno 0x434889
jo 0x448b57
nop
cpuid
ret
jo 0x434889
fld st(6)
and al, 0x4a
dec edx
inc edx
add byte [ebp + 0x41622b88], cl
add byte [eax], dh
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ecx + ebx*2 + 0x349a0042], dh
inc esp
add byte [eax + ecx*4 + 0x3c0044], dh
add byte [eax], al
cmp al, 0
add byte [eax], al
jbe 0x448bd2
inc edx
add byte [ecx], cl
dec edx
inc esp
add byte [edx + 0x7f], bh
inc ebx
add byte [eax - 0x11ffbb75], bl
das
jle 0x448b4a
inc dx
add byte [eax + eax], al
add byte [eax + eax], al
add byte [ebx - 0x50ffbdec], al
mov eax, dword [eax + eax - 0x37]
imul dword [ecx]
adc dword [edx + eax*2], 0
cmpsd dword [esi], dword es:[edi]
dec ecx
inc esp
add al, al
out dx, eax
inc eax
xchg dl, bh
mov ax, ax
lea ebx, [ebx]
xchg bh, dl
mov ecx, 0xe2
js 0x43a6df
jns 0x448bd3
push esp
loopne 0x448c2f
pop esp
jns 0x43a6df
xor eax, 0xf6896643
mov cx, word [ebp + 0x10]
cmp bl, bl
cmc
cmp al, 1
jno 0x419fe9
jo 0x448bf3
push esi
fld dword [si]
jo 0x419fe9
mov ebp, dword [esi + 0x40000043]
add byte [eax], al
xor byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
cmp byte [eax], 0
add byte [eax], al
add byte [ecx], ah
add byte [eax], al
and al, byte [eax]
add byte [eax], al
or byte [edi], ch
inc esp
add byte [ebx - 3], dl
inc edx
add byte [eax + eax], cl
add byte [eax], al
xor byte [eax], al
add byte [eax], al
scasb al, byte es:[edi]
or dword [ebp], eax
fld st(2)
inc esp
add cl, bl
jnp 0x44cfe6
inc ecx
add byte [eax + 0x30], al
add byte [ecx], al
add byte [eax], al
std
add byte [eax], al
add byte [eax], al
add dword [eax], eax
add byte [eax], al
inc ecx
add byte [eax], al
xor al, 0
add byte [eax], al
pop edi
imul eax, dword [edx], 0xffffff83
mov esp, 0xffff0043
add byte [eax], al
xor al, 0
add byte [eax], al
mov ah, 0x59
inc edx
add dl, bl
xchg ebx, eax
inc ecx
add byte [ebx + 0x26], bl
inc esp
add byte [eax], cl
add byte [eax], al
xor al, 0
add byte [eax], al
mov ah, 0x59
inc edx
add dh, ah
xchg ebx, eax
inc ecx
add bl, bh
int1
inc esp
add byte [ebx], cl
outsb dx, byte [esi]
inc ecx
add byte [edx - 0x4a], bh
inc esp
add byte [ebx + 0xf00448c], dl
mov byte [0xb67ac390], al
inc esp
add byte [ebx], cl
outsb dx, byte [esi]
inc ecx
add byte [0x41b984fc], dh
add byte [esi], dh
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ebx + 0x43ae], cl
popal
add byte [eax + 0x38], al
add byte [ecx], ah
add byte [eax], al
adc byte [eax], al
add byte [eax], al
add byte [eax], dl
add byte [eax], al
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ebp - 0x4bffbccc], ch
pop ecx
inc edx
add byte [esi - 0x18], bl
inc edx
add byte [ebp - 0x5d], al
inc ebx
add byte [edx + 0x3000003f], dh
add byte [eax], al
add byte [ebx - 0xffbc44], al
inc dword [eax]
add byte [eax], dh
add byte [eax], al
add byte [ecx + ebx*2 + 0x60a60042], dh
inc ebx
add ch, cl
push es
inc edx
add byte [eax + eax], al
add byte [edx + ecx*2], ah
inc edx
add byte [esi + 0x436de3e9], ah
add byte [eax], al
add byte [eax], al
add byte [0x2b000000], dh
bound eax, qword [ecx]
xor byte [eax], al
add byte [eax], al
xor byte [eax], al
add byte [eax], al
mov ah, 0x59
inc edx
add byte [edi - 0x7cffbca0], ch
adc al, 0x42
add byte [esi + 0x72], bh
inc ecx
add byte [ebp + 0x1e], ch
inc ebx
add byte [edi], dh
lea eax, [eax + eax - 0x6e]
jbe 0x448dac
sub byte [ebp + 0x1e], ch
inc ebx
add byte [esi + 0x72], bh
inc ecx
add byte [eax + 0x30], ch
add dword [eax], eax
add cl, ch
fstp xword [ebx + 0x5905fffd]
sub esp, dword [edx + 0x41]
add byte [eax], dh
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ecx + ebx*2 + 0x1a750042], dh
inc edx
add byte [esi + 0x4b], dh
inc edx
add byte [edi], bl
mov es, word [eax + eax + 0x7a]
jg 0x448dad
add byte [ecx - 0x73], dh
inc esp
add byte [edx - 0x53], bl
outsb dx, byte [esi]
rol byte [ebx], cl
inc esp
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [esi - 0x2e], ch
inc ebx
add byte [eax], dh
add byte [eax], al
add byte [eax + eax], al
add byte [edx], bh
salc
inc ecx
add byte [eax], bh
add byte [eax], al
add byte [eax], bh
add byte [eax], al
add byte [ebp - 0x47], al
inc ebx
add byte [eax + eax], cl
add byte [eax], al
xor byte [eax], al
add byte [eax], al
int 6
inc edx
add byte [eax], cl
add byte [eax], al
salc
enter 0x43, 0x3c
add byte [eax], al
add byte [eax + eax], bh
add byte [eax + eax], bh
cmp al, 0
add byte [eax], al
cmp al, 0
add byte [eax], al
salc
enter 0x43, 0x30
add byte [eax], al
add byte [eax + eax], dh
add byte [eax], al
cmp dword [ebx + eax*2 + 0xffff00], 0
xor al, 0
add byte [eax], al
mov ah, 0x59
inc edx
add byte [ebp + 0x1a], bh
inc edx
add byte [ebx + 0x43ae], cl
inc eax
add byte [eax], al
xor al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
cmp byte [eax], 0
add byte [eax], al
add byte [ecx], ah
add byte [eax], al
push eax
add byte [eax], al
add byte [eax], cl
das
inc esp
add byte [ebp + 0x51], dl
inc esp
add byte [eax + eax], cl
add byte [eax], dh
add byte [eax], al
add byte [ebp + 0x51], dl
inc esp
add byte [eax], dh
add byte [eax], al
add byte [eax + eax], cl
add ch, cl
push es
inc edx
add byte [eax + eax], al
add byte [edx + ecx*2], ah
inc edx
add dh, bh
inc edx
ror byte [edi], 1
inc esp
add byte [eax], al
add byte [eax], al
cmp al, 0
add byte [eax], al
loope 0x448e9f
inc edx
add byte [edi], cl
add eax, dword [eax]
add byte [eax], dh
add byte [eax], al
add ch, cl
push es
inc edx
add byte [eax], cl
add byte [eax], al
mov ebp, dword [esi + 0x40000043]
add byte [eax], al
xor byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
cmp byte [eax], 0
add byte [eax], al
add byte [ecx], ah
add byte [eax], al
push eax
add byte [eax], al
add byte [eax], cl
das
inc esp
add byte [ebx + 0x300041ad], ah
add byte [eax], al
add byte [eax + eax], bh
add byte [eax], al
mov dword [0x3c0041ad], eax
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ebx - 3], dl
inc edx
add byte [eax + eax], cl
add byte [eax], al
xor byte [eax], al
add byte [eax], al
int 6
inc edx
add byte [eax + eax], al
add byte [edx + ecx*2], ah
inc edx
add byte [esi + 0x24648d4a], al
lea esp, [esp - 0x68]
cmp ax, word [ebp + 8]
je 0x43c456
jne 0x44a140
inc esi
sar dword [edi + 0x418b668b], cl
or byte [ecx + 0x8c1], al
add byte [edi], cl
xchg ebp, esp
and bh, bh
push dword [esi + 4]
mov ax, word [ecx + 8]
add ecx, 8
ja 0x43c435
jbe 0x44a156
jno 0x44a168
dec esp
mov byte [0x22d9860f], al
invalid
jbe 0x43c435
fnstenv [ebx]
mov ebx, dword [ebp + 0x44]
mov edx, dword [esi + 8]
shr bh, 0x40
mov eax, dword [esi + 4]
lea esi, [esi + 0xc]
inc esi
add al, 0x8d
jbe 0x44a179
mov byte [ebx + edx], al
jmp dword [esi]
invalid
add byte [eax], al
iretd
mov dword [ebp - 0xc], eax
xchg dh, ch
xchg ch, dh
je 0x44d93a
jne 0x44d90a
loope 0x44d92e
out 0x66, al
cmp eax, 0x840f0017
add byte es:[eax], al
add byte [ecx - 0x7cfd8a01], cl
inc edi
cmp ax, 0x17
je 0x44d93a
mov edi, edi
jne 0x44d91a
add dword [edi + 0x66], 0xffffff85
ror byte [edi], 0x82
ror esi, 1
invalid
test ax, ax
jb 0x43a7f4
jne 0x441c4b
je 0x44d92f
cpuid
ret
sub eax, 0x20e1c166
shl cx, 0x20
jmp fcn.004351c3
mov edx, dword [ebp - 0x10]
jmp 0x44d93e
push edx
call fcn.0043ba6e
jno 0x4351b4
jo 0x44d94f
sbb ecx, dword es:[edi]
sbb byte [edi + 0x78], 0xfe
push dword [0xc9885ea7]
jo 0x4351b4
xor eax, 0xc9885ea7
pop ebx
mov esp, ebp
pop ebp
ret
fsubr dword [eax + ebp*8 + 7]
popal
invalid