Function at 0x100b68b2
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
jmp 0x100b6838
jmp 0x100d6f5d
push 0x100c315c
call fcn.100b6883
rep stosb byte es:[edi], al
jmp 0x10129ef0
call fcn.100cb848
lds esp, [esi - 9]
ror dword [ebx + reloc.MSVCRT.dll___dllonexit], 1
aam 0x4d
test al, 0x37
pop edi
inc ecx
sbb eax, 0x8ad983cc
pop edx
jle 0x100b686c
or al, al
je 0x100b68d5
mov ds, word [ecx]
cmp dword [0x100c3160], reloc.MSVCRT.dll___dllonexit
jne 0x100b67ff
push dword [esp + 4]
jmp 0x100b684e
jmp 0x100b6822
add al, 0xc2
jge 0x100b6907
cmp dword [eax + 0x5b], reloc.MSVCRT.dll___dllonexit
lodsd eax, dword [esi]
sbb al, 0xe8
jmp 0x100b6962
push es
shl esi, 8
xor esi, edi
movzx edi, byte [eax + 7]
shl esi, 8
xor esi, edi
xor esi, dword [ecx + 4]
movzx edi, byte [eax + 8]
movzx ebx, byte [eax + 0xd]
mov dword [ebp - 0x14], esi
movzx esi, byte [eax + 9]
shl edi, 8
xor edi, esi
movzx esi, byte [eax + 0xa]
shl edi, 8
xor edi, esi
movzx esi, byte [eax + 0xb]
shl edi, 8
xor edi, esi
movzx esi, byte [eax + 0xc]
xor edi, dword [ecx + 8]
xor edx, dword [ecx]
shl esi, 8
xor esi, ebx
movzx ebx, byte [eax + 0xe]
movzx eax, byte [eax + 0xf]
shl esi, 8
xor esi, ebx
shl esi, 8
xor esi, eax
xor esi, dword [ecx + 0xc]
mov dword [ebp - 0xc], edi
shr edi, 8
mov ebx, esi
shr ebx, 0x10
mov eax, 0xff
and edi, eax
and ebx, eax
mov ebx, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
xor ebx, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
mov edi, edx
shr edi, 0x18
xor ebx, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
mov edi, dword [ebp - 0x14]
and edi, eax
xor ebx, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
mov dword [ebp - 8], esi
xor ebx, dword [ecx + 0x10]
shr esi, 8
mov edi, edx
shr edi, 0x10
and edi, eax
and esi, eax
mov dword [ebp - 4], edi
mov edi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 4]
xor edi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 0x14]
mov dword [ebp + 8], edx
mov dword [ebp - 0x10], ebx
shr esi, 0x18
xor edi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 0xc]
and esi, eax
xor edi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 0x14]
shr esi, 0x10
shr edx, 8
and esi, eax
and edx, eax
mov dword [ebp - 4], edx
mov edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 4]
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 0xc]
shr esi, 0x18
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 8]
and esi, eax
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 0x14]
xor edx, dword [ecx + 0x18]
xor edi, dword [ecx + 0x14]
mov dword [ebp - 4], edx
mov edx, dword [ebp - 0xc]
shr edx, 0x10
shr esi, 8
and edx, eax
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
and esi, eax
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 8]
shr esi, 0x18
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp + 8]
and esi, eax
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 0x18]
xor edx, dword [ecx + 0x1c]
sar esi, 1
add ecx, 0x20
dec esi
mov dword [ebp - 8], edx
mov dword [ebp - 0x14], esi
je 0x100b6cab
mov esi, dword [ebp - 4]
shr esi, 8
and esi, eax
shr edx, 0x10
and edx, eax
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, ebx
shr esi, 0x18
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, edi
and esi, eax
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, ebx
xor edx, dword [ecx]
shr esi, 0x10
mov dword [ebp + 8], edx
mov edx, dword [ebp - 8]
and esi, eax
shr edx, 8
and edx, eax
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, edi
shr esi, 0x18
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, dword [ebp - 4]
shr ebx, 8
and ebx, eax
and esi, eax
xor edx, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, edi
shr esi, 0x10
and esi, eax
mov esi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
xor esi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 4]
shr ebx, 0x18
xor esi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 8]
and ebx, eax
xor esi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 4]
shr edi, 8
shr ebx, 0x10
and edi, eax
xor esi, dword [ecx + 8]
and ebx, eax
mov dword [ebp - 0x18], edi
mov edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 0x18]
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 8]
shr ebx, 0x18
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 0x10]
xor edx, dword [ecx + 4]
and ebx, eax
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, esi
xor edi, dword [ecx + 0xc]
shr ebx, 8
mov dword [ebp - 8], edi
shr edi, 0x10
and edi, eax
mov edi, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
and ebx, eax
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp + 8]
shr ebx, 0x18
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, edx
and ebx, eax
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp + 8]
xor edi, dword [ecx + 0x10]
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x10], edi
mov edi, dword [ebp - 8]
shr edi, 8
and edi, eax
mov edi, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
shr ebx, 0x10
and ebx, eax
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
and esi, eax
mov ebx, edx
shr ebx, 0x18
xor edi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp + 8]
xor edi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
mov esi, edx
shr esi, 0x10
and esi, eax
mov esi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
shr ebx, 8
and ebx, eax
xor esi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 0xc]
shr ebx, 0x18
xor esi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 8]
xor edi, dword [ecx + 0x14]
and ebx, eax
xor esi, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 0x10]
xor esi, dword [ecx + 0x18]
shr edx, 8
mov dword [ebp - 4], esi
mov esi, dword [ebp - 0xc]
shr esi, 0x10
and esi, eax
mov esi, dword [esi*4 + reloc.MSVCRT.dll___dllonexit]
and edx, eax
xor esi, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
mov edx, dword [ebp - 8]
shr edx, 0x18
xor esi, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
mov edx, dword [ebp + 8]
and edx, eax
xor esi, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
add ecx, 0x20
xor esi, dword [ecx - 4]
dec dword [ebp - 0x14]
mov dword [ebp - 8], esi
mov edx, esi
jne 0x100b6ace
shr edx, 0x10
and edx, eax
mov esi, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, eax
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
and edx, 0xff00
and esi, 0xff0000
xor esi, edx
mov edx, ebx
shr edx, 0x18
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
and edx, 0xff000000
xor esi, edx
shr ebx, 0x10
mov edx, edi
and edx, eax
movzx edx, byte [edx*4 + 0x100c2344]
xor esi, edx
xor esi, dword [ecx]
and ebx, eax
mov dword [ebp + 8], esi
mov edx, esi
mov esi, dword [ebp + 0xc]
shr edx, 0x18
mov byte [esi], dl
mov edx, dword [ebp + 8]
shr edx, 0x10
mov byte [esi + 1], dl
mov edx, dword [ebp + 8]
shr edx, 8
mov byte [esi + 2], dl
mov dl, byte [ebp + 8]
mov byte [esi + 3], dl
mov edx, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov ebx, dword [ebp - 8]
shr ebx, 8
and ebx, eax
mov ebx, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
and ebx, 0xff00
and edx, 0xff0000
xor edx, ebx
mov ebx, edi
shr ebx, 0x18
mov ebx, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
and ebx, 0xff000000
xor edx, ebx
mov ebx, dword [ebp - 4]
and ebx, eax
movzx ebx, byte [ebx*4 + 0x100c2344]
xor edx, ebx
xor edx, dword [ecx + 4]
mov ebx, edx
shr ebx, 0x18
mov byte [esi + 4], bl
mov ebx, edx
shr ebx, 0x10
mov byte [esi + 5], bl
mov ebx, edx
shr ebx, 8
mov byte [esi + 6], bl
mov ebx, dword [ebp - 0x10]
mov byte [esi + 7], dl
shr ebx, 8
and ebx, eax
mov ebx, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
mov edx, edi
shr edx, 0x10
and edx, eax
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
and ebx, 0xff00
and edx, 0xff0000
xor edx, ebx
mov ebx, dword [ebp - 4]
shr ebx, 0x18
mov ebx, dword [ebx*4 + reloc.MSVCRT.dll___dllonexit]
and ebx, 0xff000000
xor edx, ebx
mov ebx, dword [ebp - 8]
and ebx, eax
movzx ebx, byte [ebx*4 + 0x100c2344]
xor edx, ebx
xor edx, dword [ecx + 8]
shr edi, 8
mov ebx, edx
shr ebx, 0x18
mov byte [esi + 8], bl
mov ebx, edx
mov byte [esi + 0xb], dl
and edi, eax
shr ebx, 0x10
mov byte [esi + 9], bl
mov ebx, edx
mov edx, dword [ebp - 4]
shr edx, 0x10
and edx, eax
shr ebx, 8
mov byte [esi + 0xa], bl
mov edi, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
mov edx, dword [edx*4 + reloc.MSVCRT.dll___dllonexit]
and edi, 0xff00
and edx, 0xff0000
xor edx, edi
mov edi, dword [ebp - 8]
shr edi, 0x18
mov edi, dword [edi*4 + reloc.MSVCRT.dll___dllonexit]
and edi, 0xff000000
xor edx, edi
mov edi, dword [ebp - 0x10]
and edi, eax
movzx eax, byte [edi*4 + 0x100c2344]
xor edx, eax
xor edx, dword [ecx + 0xc]
mov eax, edx
shr eax, 0x18
mov byte [esi + 0xc], al
mov eax, edx
shr eax, 0x10
mov byte [esi + 0xd], al
mov eax, edx
shr eax, 8
mov byte [esi + 0xe], al
mov byte [esi + 0xf], dl
jmp 0x100b6e6a
pop edi
pop esi
pop ebx
leave
ret 8
jmp 0x100b6870
mov edx, eax
mov bl, 0xf1
mov ebx, 0x457b7d53
mov edi, 0xa661195b
sbb byte [ecx + 0x58790a66], dh
mov ebx, 0xa0c46e92
std
push ebx
mov ebx, 0xe408f497
scasd eax, dword es:[edi]
mov ebx, dword [esi + reloc.MSVCRT.dll___dllonexit]
sub dh, al
pop eax
xor al, 0xe0
xchg ecx, eax
aas
xor eax, 0xd8bda0c
pushfd
out dx, eax
imul byte [eax + 0x33]
cmp al, 7
adc al, ch
sub cl, 0xf9
jmp ecx
push 0x10073c33
call fcn.100c887a
loope 0x10129f1c
arpl word [edx + 0x10650a2d], bx
adc al, ch
das
test esp, 0x1678d883
movsb byte es:[edi], byte [esi]
fisttp word [0xc7343e03]
add bh, al
pop eax
pop ds
pop edx
push eax
pop ss
push edx
dec eax
test al, 0x3b
mov fs, word [esi]
call 0xca6fe569
sbb dl, byte [ecx - 0x2a5873c9]
mov ah, 0xac
cmp ecx, dword [esi + reloc.MSVCRT.dll___dllonexit]
pop ebp
mov edx, 0x8c37911a
cmpsd dword [esi], dword es:[edi]
aad 0xb4
lodsb al, byte [esi]
push esi
in al, 0x4a
push es
sub eax, 0xf552515b
in al, 0x17
jle 0x10129eb9
rcl dword [ebx + eax*4 - 0x2c]
mov al, 0x88
sub al, byte [eax]
dec ebx
leave
pop ecx
cmp bl, cl
sub eax, 0xdda20be8
sub al, 0x3f
mov al, 0x88
ror byte cs:[esi - 0x1e88626d], 0x69
pop edx
int 0xc3
or edx, dword [edi + 0x1d]
lea edx, reloc.MSVCRT.dll___dllonexit
sbb dword [edi - 0x1ae46243], ecx
in eax, dx
xor bh, byte [edi + 0x1e0722b2]
sbb ecx, dword [esi]
xor ebp, 0x9738cd03
adc ah, dh
imul ebx, dword [edx - 0x1f], 0x2040a6cc
daa
mov ds, word [esp + ecx*4]
scasb al, byte es:[edi]
mov bl, 0xf8
loop 0x10129f6a
out dx, eax
push esi
xlatb
movsd dword es:[edi], dword [esi]
or byte [ebx - 0x23f0f3cd], bh
xor al, 0xa4
imul ebx, dword [edx], 0x64
inc eax
out dx, eax
shr dword [edx - reloc.MSVCRT.dll___dllonexit], 1
pop ds
fucom st(7)
push edi
inc ebx
leave
mov dword [reloc.MSVCRT.dll___dllonexit], eax
mov al, 0x93
and edi, dword [esp + eax*8 - 0x57]
xor edi, 0xa524799b
jge 0x10129fd4
push ss
mov eax, dword [reloc.MSVCRT.dll___dllonexit]
loope 0x1012a02a
mov ch, 0xab
mov dword [reloc.MSVCRT.dll___dllonexit], eax
scasb al, byte es:[edi]
in eax, 0xd4
mov dh, 0xf2
dec ecx
jl 0x10129fbd
popal
sar esi, 0x80
pop edx
cmp edi, dword [ecx]
iretd
cmp edi, ecx
mov edi, edx
ljmp 0x8b99
xchg ecx, eax
adc dword [ebp + reloc.MSVCRT.dll___dllonexit], edi
pop dword [eax - 0x7d]
dec ecx
hlt