Function at 0x53f412
Capabilities:
Encrypt data using aes

Disassembly:
pushal
jmp 0x5144c1
lea esp, [esp + 0x20]
push ebx
bswap ebx
sub ebx, 0x2f6b53ba
lea ebx, reloc.mscoree.dll__CorExeMain
jmp 0x514534
jmp 0x5144ba
mov byte [esp], bh
lea esp, [esp + 3]
jmp 0x514568
dec dx
push esi
mov ebp, dword [esp]
sub esp, 0x1f
mov ebp, 0x7645f953
jmp 0x5144fa
xchg bx, dx
push ebp
mov bp, word [esp]
mov dl, byte [esp]
xchg dx, bp
jmp 0x514510
lea esp, [esp + 0x18]
movzx edx, byte [eax]
not ebx
clc
mov bx, ax
jmp 0x51457d
mov dword [esp + 0x18], edi
mov dh, byte [esp]
bswap ebx
mov si, word [esp]
inc bl
jmp 0x514544
shl edx, 8
cmp si, si
not bh
mov bl, 0x91
jmp 0x5145c2
mov si, word [esp]
xchg bl, bh
jmp 0x5145d7
movzx esi, byte [eax + 1]
mov edi, 0x328e88c4
xor edx, esi
bsr di, dx
jmp 0x5145ac
movzx esi, byte [eax + 2]
mov edi, 0xb5edd6e4
shl edx, 8
bsf ebp, edi
jmp 0x53f13b
jmp 0x5144e4
jmp 0x514b49
xor edx, esi
not edi
lea esi, [ecx + edi]
mov bp, 0x1d8
bswap ebp
jmp 0x53f16f
shl edx, 8
bswap ebp
lea ebp, [ecx*4]
cmc
jmp 0x53f196
movzx esi, byte [eax + 3]
xchg edi, ebp
bsr di, si
mov ebx, 0x37abef8e
jmp 0x53f159
xor edx, esi
bsf bp, ax
dec si
lea edi, reloc.mscoree.dll__CorExeMain
jmp 0x53f1da
lea edi, [edx*4]
jmp 0x53f180
mov dword [ecx], edx
mov dh, byte [esp]
btc ebx, ecx
movzx edx, byte [eax + 4]
jmp 0x53f201
movzx esi, byte [eax + 5]
mov bh, 0x97
mov di, word [esp]
mov ebp, edx
bsf ebp, esp
jmp 0x53f1ba
mov ebp, edi
mov bx, dx
mov bh, 0xbd
jmp 0x53f214
lea edi, [esi*4]
bswap edi
neg di
mov bl, al
shl edx, 8
jmp 0x53f1eb
xor edx, esi
mov ebx, dword [esp]
mov esi, 0x12819546
bswap ebx
jmp 0x53f24d
xor edx, esi
jmp 0x53f304
movzx esi, byte [eax + 6]
lea edi, [ecx*4]
shl edx, 8
jmp 0x53f237
xor edx, esi
call fcn.0053f25d
mov dword [ecx + 4], edx
dec di
not dh
pushfd
mov bx, dx
jmp 0x53f2af
lea esp, [esp + 4]
movzx edx, byte [eax + 8]
sub esp, 0x1e
lea esp, [esp + 2]
jmp 0x53f2de
shl edx, 8
mov ebp, eax
lea edi, [ecx + ebx]
lea ebp, reloc.mscoree.dll__CorExeMain
xchg edi, ebx
jmp 0x53f275
shl edx, 8
seto bh
neg bh
mov di, word [esp]
jmp 0x53f331
lea ebx, [ebx - 0xc2]
lea ebx, [ebp*4]
bswap edi
jmp 0x53f315
movzx esi, byte [eax + 7]
mov edi, dword [esp]
mov ebx, 0x42ccfd3
not di
jmp 0x53f2cc
shl edx, 8
xor edx, esi
movzx esi, byte [eax + 0xb]
jmp 0x53f381
xor edx, esi
lea esi, [eax + edi]
lea esp, [esp + 0x1c]
movzx esi, byte [eax + 0xa]
bswap edi
jmp 0x53f2ec
movzx edx, byte [eax + 0xc]
pushfd
xchg word [esp], di
jmp 0x53f367
xor edx, esi
lea esp, [esp + 0x18]
movzx esi, byte [eax + 0xd]
mov dword [ecx + 8], edx
jmp 0x53f342
shl edx, 8
xor edx, esi
mov si, ax
bsf edi, ecx
jmp 0x53f3a7
bts bx, cx
sub esp, 0x1a
lea esp, [esp + 2]
shl edx, 8
jmp 0x53f358
movzx eax, byte [eax + 0xf]
dec edi
sub esp, 7
lea esp, [esp + 3]
jmp 0x53f3cd
rcr edi, 0x1f
mov esi, dword [esp]
lea esp, [esp + 4]
movzx esi, byte [eax + 0xe]
jmp 0x53f391
xor edx, esi
sbb bh, bh
inc bx
jmp 0x53f470
shl edx, 8
mov ebp, dword [esp]
mov di, 0xcabe
jmp 0x53f3b7
pop esi
mov si, 0x5b2e
jmp 0x53f435
push esi
mov esi, ecx
lea esi, [esi + 0xc]
mov dword [esi], edx
jmp 0x53f3fc
shr eax, 0x10
not bp
lea esi, [ebp*4]
btr si, sp
jmp 0x53f445
mov eax, edx
bts edi, eax
lea esi, [eax + edx]
sub esi, 0x1a57087b
jmp 0x53f41c
lea esp, [esp + 4]
mov esi, 0xff
lea edi, [edi + ebp]
bswap edi
jmp 0x53f490
push edx
sub esp, 0x16
lea esp, [esp + 2]
jmp 0x53f47a
shl edx, 8
xor edx, eax
bt esi, eax
jmp 0x53f412
lea esp, [esp + 0x18]
xor eax, 0x1000000
lea edi, [ebp*4]
jmp 0x53f534
and eax, esi
mov edi, 0x979a30d3
mov edi, 0x664265ab
mov eax, dword [eax*4 + reloc.mscoree.dll__CorExeMain]
inc edi
jmp 0x53f455
lea ebx, [edi*4]
mov edi, dword [edi*4 + reloc.mscoree.dll__CorExeMain]
sub esp, 0x1e
lea ebp, reloc.mscoree.dll__CorExeMain
lea ebp, [ebp + ebp]
jmp 0x53f50d
mov bp, cx
and edi, esi
mov bp, di
clc
mov ebp, dword [esp]
jmp 0x53f4c5
mov ebp, ecx
jmp 0x53f51e
lea esp, [esp + 2]
lea esp, [esp + 0x1c]
and edi, 0xff0000
push ebp
jmp 0x53f4f7
lea ebp, [ebp + 4]
mov ebx, dword [ebp]
pop ebp
mov bp, 0xa778
neg ebp
jmp 0x53f5c2
not bl
mov edi, ebx
mov edi, edx
shr edi, 8
jmp 0x53f4e9
lea ebp, [ecx + ebp]
jmp 0x53f59b
pushfd
push word [esp]
lea esp, [esp + 2]
shr edi, 0x18
rcl ebp, 0x19
jmp 0x53f53f
xor eax, edi
mov di, word [esp]
not di
mov edi, edx
bsf ebp, edi
jmp 0x53f555
xor eax, edi
bswap edi
jmp 0x53f5e3
lea esp, [esp + 4]
movzx edi, byte [edi*4 + 0x51f5b4]
lea ebp, reloc.mscoree.dll__CorExeMain
sub esp, 0x18
jmp 0x53f585
clc
neg ebp
and eax, 0xff000000
stc
jmp 0x53f575
bsf ebp, esp
rcl bp, 9
lea ebp, [edi*4]
jmp 0x53f607
mov edi, edx
mov bp, word [esp]
and edi, esi
mov bp, 0x8407
jmp 0x53f5cd
mov ebp, 0xff00
pushfd
jmp 0x53f62f
mov edi, dword [edi*4 + reloc.mscoree.dll__CorExeMain]
pushal
bsr bp, di
lea esp, [esp + 0x38]
jmp 0x53f5f1
lea esp, [esp + 2]
jmp 0x53f63e
and edi, ebp
sub esp, 0x1c
push bx
mov word [esp + 9], bx
clc
jmp 0x53f619
xor eax, edi
not di
btc edi, eax
mov edi, dword [esp]
jmp 0x53f8f5
mov dword [edi], eax
rcr ah, 5
btc ax, di
mov eax, dword [ecx + 8]
call fcn.0053f6ad
push dword [esp + 7]
mov dword [ecx + 0x1c], edx
pushal
call 0x53f70e
add eax, 0x24748966
push cs
jmp 0x53f75e
lea esp, [esp + 0x50]
call fcn.00531ab6
jmp 0x514596
lea esp, [esp + 0x20]
xor eax, dword [ecx]
lea edi, [ecx + 0x10]
xor ebx, eax
jmp 0x53f6ef