Function at 0x474897
Capabilities:
Encrypt data using aes

Disassembly:
sub esp, 0x1c
pop word [esp + 6]
jmp 0x4749bb
xor edx, esi
mov ebx, esp
jmp 0x47467d
lea ebx, reloc.USER32.dll_MessageBoxA
shl edx, 8
mov bl, 0xc0
xchg edi, ebp
jmp 0x47463d
mov ebx, esi
xor edx, esi
mov bl, 0x31
dec ebp
cmc
jmp 0x47468d
movzx esi, byte [eax + 0xb]
mov bp, word [esp]
mov ebp, dword [esp]
shl edx, 8
jmp 0x474662
setne bl
mov dword [ecx + 8], edx
ror bl, cl
jmp 0x4746e3
mov word [esp + 1], di
jmp 0x474653
movzx esi, byte [eax + 0xe]
mov ebx, dword [esp]
jmp 0x474706
not di
xor edx, esi
lea ebp, [esi + 0x87]
mov bx, 0x16cc
jmp 0x4746b0
movzx edx, byte [eax + 0xc]
movzx esi, byte [eax + 0xd]
shl edx, 8
jmp 0x4746c6
xor edx, esi
jmp 0x474727
movzx eax, byte [eax + 0xf]
xchg bh, bl
shl edx, 8
jmp 0x4746f0
xor edx, eax
sub esp, 0xa
pop si
pushfd
mov di, cx
jmp 0x474761
shl edx, 8
not esi
mov bp, word [esp]
lea ebp, [ebx + esi]
jmp 0x474711
mov dword [esp + 0x1c], edx
clc
popal
bswap ebx
jmp 0x474b47
mov dword [ecx + 0xc], edx
pushal
xchg ah, ch
mov cx, 0x6f26
jmp 0x47474b
popal
stc
shr edi, 8
clc
call fcn.00474783
lea esp, [esp + 4]
and edi, 0xff0000
jmp 0x47482f
lea ebp, [edi*4]
mov bp, 0x14be
mov bp, 0xd6c0
jmp 0x47480a
xor eax, edi
mov ebp, edx
lea ebp, [esi*4]
mov ebp, 0xcd5e9742
mov edi, edx
jmp 0x4747de
shr edi, 0x18
push di
mov byte [esp], al
mov byte [esp], ch
inc bp
jmp 0x474852
pushal
mov dword [esp], edx
cmc
popal
rol bp, cl
btc bp, bp
jmp 0x47483c
mov ebx, dword [ecx + 4]
and eax, 0xff000000
mov ebp, dword [esp]
jmp 0x4747f6
and edi, esi
mov bp, dx
jmp 0x47488a
lea esp, [esp + 2]
movzx edi, byte [edi*4 + 0x43fd64]
xor eax, edi
jmp 0x474819
pushal
setl ah
mov dword [esp], edx
sub esp, 3
lea esp, [esp + 3]
jmp 0x4747a6
mov edi, dword [edi*4 + reloc.USER32.dll_MessageBoxA]
call 0x474897
idiv dword [ebp - reloc.USER32.dll_MessageBoxA]
jmp 0x4748df
setb bl
sub esp, 0x18
lea esp, [esp + 0x54]
xor eax, 0x1000000
clc
jmp 0x474877
add ebp, 0x4bf672b6
call fcn.004748c3
mov byte [esp + 2], cl
jmp 0x47498f
and eax, esi
and bp, ax
lea ebp, [eax + ecx]
mov eax, dword [eax*4 + reloc.USER32.dll_MessageBoxA]
rcl bp, cl
jmp 0x4748b1
xor ebx, eax
jmp 0x47496a
lea esp, [esp + 0x18]
xor eax, dword [ecx]
mov di, word [esp]
lea edi, [ecx + 0x10]
jmp 0x47492f
lea eax, [eax + eax]
jmp 0x474972
push ecx
mov ecx, edi
mov dword [ecx], eax
pop ecx
jmp 0x474954
mov eax, dword [ecx + 8]
stc
stc
xor eax, ebx
jmp 0x474a37
push dword [esp + 1]
xor eax, edi
pushfd
mov edi, ebp
jmp 0x474945
xor edx, eax
lea ebx, [eax*4]
jmp 0x4749d1
add ebx, 0x18
mov dword [ebx], eax
pop ebx
stc
rol bh, 1
jmp 0x47499a
lea esp, [esp + 2]
jmp 0x4749de
mov dword [ecx + 0x1c], edx
mov ebx, 0x441568
jmp 0x434b03
pushal
bswap ecx
add si, 0xf13
lea ebx, [edx + esi]
mov dword [esp + 0x1c], edi
jmp 0x474a19
push ebx
pushal
mov dword [esp + 0x10], ecx
cmc
popal
jmp 0x4749b0
add edi, 0xc
mov edx, dword [edi]
pop edi
sub esp, 0x1f
btr di, si
jmp 0x474a1f
popal
push edi
mov edi, eax
jmp 0x474a03
mov edi, dword [esp + 0x11]
lea esp, [esp + 3]
jmp 0x474a5a
cmc
mov dword [ecx + 0x14], ebx
mov ebx, 0x146d7cd0
mov ebx, ecx
jmp 0x4749f9
mov edi, edx
push dx
push word [esp + 1]
jmp 0x474a94
mov ecx, edx
bsr di, cx
shr ecx, 8
lea edi, [ebp + ebp]
jmp 0x474a44
and ecx, esi
mov ecx, dword [ecx*4 + reloc.USER32.dll_MessageBoxA]
sub esp, 0x10
call fcn.00474a69
mov edi, edx
jmp 0x474ade
lea eax, [eax*4]
lea eax, reloc.USER32.dll_MessageBoxA
mov edx, dword [eax]
pop eax
jmp 0x474ae5
and edx, esi
push eax
mov eax, edx
jmp 0x474ac8
shr edi, 0x18
cmc
movzx edi, byte [edi*4 + 0x43fd64]
jmp 0x474b30
and edx, ebp
and di, 0xae05
jmp 0x474bf8
xor ecx, edi
lea edi, [ebp + 6]
mov di, 0x221
jmp 0x474b1a
shr eax, 0x10
mov esi, 0xff
neg bl
jmp 0x47491b
xor ecx, dword [eax]
bswap edx
mov edx, ebx
btc dx, di
not dx
jmp 0x474bb8
lea esp, [esp + 0x24]
lea edi, [eax + 0x10]
lea edx, [edx + ebx]
mov dl, al
mov dh, byte [esp]
jmp 0x474b56
lea esp, [esp + 4]
xor ecx, dword [ebx]
neg dx
pushal
push dword [esp + 0x1d]
jmp 0x474b6c
mov dword [edi], ecx
shr dh, 4
not dl
jmp 0x474bda
add ebx, 4
mov dx, 0xecb5
cmc
neg edx
jmp 0x474b9d
mov edx, dword [ecx]
pop ecx
jmp 0x474be2
push ecx
mov ecx, eax
add ecx, 4
jmp 0x474bc4
xor edx, ecx
mov ch, cl
jmp 0x474d03
xor ecx, edx
mov dh, dl
sub esp, 6
mov dx, word [esp + 3]
lea esp, [esp + 2]
jmp 0x474b8d
mov esi, eax
jmp 0x474c9f
mov dword [eax + 0x18], ecx
mov dx, word [esp]
not dx
lea edx, [esi*4]
push esi
jmp 0x474c0a
sub esp, 0x1a
call fcn.00474c34
push ebx
jmp 0x474c78
lea esp, [esp + 4]
jne 0x434b03
lea edi, [ebx*4]
push 0xa
jmp 0x474cad
add esi, 0xc
mov edx, dword [esi]
pop esi
push sp
mov word [esp], bx
jmp 0x474c4a
mov eax, dword [esp]
lea esi, [edx + 0x19]
mov bh, dl
lea esp, [esp + 4]
jmp 0x474cdf
mov ecx, dword [eax + 8]
xor ecx, edx
sub esp, 0x12
lea esp, [esp + 2]
jmp 0x474c20
pop edi
mov si, word [esp]
pop esi
mov bx, word [esp]
jmp 0x474d63
mov ebx, dword [esp + 4]
jmp 0x474d29
mov dword [eax + 0x14], edx
mov cl, byte [esp]
shl cx, cl
mov ecx, 0xce23a7e1
jmp 0x474cce
lea esp, [esp + 8]
ret
mov ebp, dword [esp]
setg bh
mov ebx, dword [esp]
xchg bl, bh
mov bx, 0x6ed6
jmp 0x474ceb