Function at 0x1015c86f
Capabilities:
Encode data using base64
Execute anti-debugging instructions

Disassembly:
mov eax, 4
sar dl, cl
shrd edx, ebx, 0xb3
xor edx, 0x8090693b
shl eax, 0
mov ecx, dword [eax + 0x10081004]
btr dx, 0x39
rcr eax, cl
stc
not ecx
shr ah, cl
rol dl, cl
xor ecx, 0x9b113e9c
mov edx, 4
add ax, si
imul eax, edx, 3
shl edx, cl
sub dh, cl
or dh, 0x32
mov edx, dword [eax + 0x10081004]
btr eax, 0x15
bsf ax, cx
shr eax, 0xc
not edx
xor ecx, edx
movzx ax, bh
mov eax, edi
mov dword [ebp - 0x24], ecx
movsx eax, bx
mov eax, dword [ebp - 0x24]
bswap ecx
mov ch, 0xba
push eax
not ecx
push 0x3000
movsx ecx, bx
mov ecx, dword [ebp - 0x80]
jmp 0x101b96c5
xor ecx, edx
jmp 0x1011fb8d
jmp fcn.10055088
jmp fcn.10055088
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.101c0512
lea esp, [esp + 0x1c]
rcr dl, 8
mov dword [ebp - 0xc], eax
rdtsc
setle dh
sbb cx, 0xcaa7
mov edx, dword [ebp - 0x14]
xor edx, dword [ebp - 0x14]
mov dword [ebp - 0x14], edx
rol ax, cl
bts cx, cx
xor ch, 0xb
mov eax, dword [ebp - 0x18]
sub ecx, ebx
shr cl, 0xa4
xor eax, dword [ebp - 0x18]
sar ecx, 0x9e
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1c]
movzx dx, dl
rol dl, cl
ror edx, cl
mov dword [ebp - 0x1c], ecx
add dx, bp
mov edx, dword [ebp - 0x20]
test dh, 0x31
xor edx, dword [ebp - 0x20]
test di, 0x4a82
cmc
cmp di, cx
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0xc], 0
jmp 0x101ac149
call fcn.100188de
add esp, 4
xor eax, eax
jmp 0x100d0843
call fcn.100445ed
lea esp, [esp + 8]
test eax, eax
jmp 0x101bb963
mov dword [ebp - 0x14], ecx
cbw
rdtsc
bswap edx
push 0
mov eax, dword [ebp - 0x20]
not edx
xchg ch, dl
push eax
cdq
not edx
mov ecx, dword [ebp - 0x1c]
jmp 0x1017440b
push ebp
mov ebp, esp
rcr dx, 0xa7
sub esp, 0x80
rcr cx, 0xb1
mov dx, 0xd107
mov dword [ebp - 4], 0
nop
sbb dh, ah
bsf cx, di
mov eax, 4
sets ch
clc
shl eax, 0
xor cx, sp
sbb ecx, 0x861c0c2d
xor ch, 0x98
mov ecx, dword [eax + 0x10081004]
cbw
not ecx
xor ecx, 0x9b113e18
neg dx
or ax, 0x299
mov edx, 4
not ah
imul eax, edx, 3
mov dx, cx
sar dx, cl
mov edx, dword [eax + 0x10081004]
cwde
test ecx, edi
not edx
xor ecx, edx
movsx edx, bx
cmc
and ax, bp
mov dword [ebp - 0x20], ecx
shl ch, 0x84
bsf eax, eax
btc edx, 0xb5
mov eax, 4
cdq
shl eax, 0
rol cx, 0xbb
sal cl, 0x21
setle dl
mov ecx, dword [eax + 0x10081004]
test bx, 0xafbb
bswap ax
neg eax
not ecx
bsf ax, di
xor ecx, 0x9b113e9b
mov edx, 4
not eax
adc ax, bp
clc
imul eax, edx, 3
xor dx, sp
mov edx, dword [eax + 0x10081004]
ror eax, 0x8c
or eax, 0x1f32742b
not edx
bt eax, 0x8d
bt ax, di
sbb ah, 0x1d
xor ecx, edx
mov dx, di
movzx eax, sp
test sp, 0x8436
mov dword [ebp - 0x1c], ecx
or cl, 0x94
btc cx, di
rcl ecx, 0x17
mov eax, 4
not dh
jmp 0x101997db
jne 0x101756b9
xor eax, eax
jmp 0x100e61b2
push ecx
cbw
lahf
not ax
push 0
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 0x14]
jmp 0x100f2595
lea eax, [ebp - 0x80]
bswap ecx
push eax
sets cl
mov ecx, dword [ebp - 0xc]
push ecx
jmp 0x10113b9d
shl eax, 0
mov ecx, dword [eax + 0x10081004]
cmp esp, ebp
cwde
not ecx
bts eax, ebx
shr dh, 0xbf
rcl dx, 4
xor ecx, 0x9b113e99
or dl, 0x17
cdq
mov edx, 4
imul eax, edx, 3
cmp ebx, ebp
mov edx, dword [eax + 0x10081004]
not edx
xor ecx, edx
btc ax, 0xa0
mov eax, 0x321d7494
bsf dx, si
mov dword [ebp - 0x18], ecx
mov eax, 4
mov ch, 0x93
btr dx, bx
shl eax, 0
btc dx, ax
sbb ecx, edi
cmc
mov ecx, dword [eax + 0x10081004]
cmp edi, 0x1ca38c89
btc ax, si
not ecx
rcl dh, 0x9a
stc
xor ecx, 0x1b113e98
bts edx, esp
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x10081004]
cmovp eax, ebp
not edx
inc ah
jmp 0x100adf81
je 0x101640d1
cmp dword [ebp - 0xc], 0xffffffff
jmp 0x101640cb
jne 0x10065fa8
mov edx, dword [ebp - 0xc]
push edx
jmp 0x100f8302