Function at 0xbb1fdd
Capabilities:
Encode data using xor
Execute anti-debugging instructions
Resolve function by parsing pe exports

Disassembly:
sbb al, 0x24
call 0xbb4d20
mov dh, 0xe6
pop ds
jnp 0x413c6f
dec esp
movsd dword es:[edi], dword [esi]
jge 0x413c20
jbe 0x413bc7
push ss
push ds
and eax, 0x761c8a86
call fcn.00a5f890
inc eax
movsd dword es:[edi], dword [esi]
pop es
movsd dword es:[edi], dword [esi]
je 0x413c45
and esi, edx
pop edx
sar byte [edx], cl
scasb al, byte es:[edi]
cmp dword [ebp + 0x10939936], ebp
add ebp, eax
hlt
add byte [ebx - 0x75], dl
pop esp
and al, 4
jg 0x413cb4
and al, 4
pushfd
push ebp
mov ebp, esp
leave
xchg edi, eax
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, eax
mov eax, dword [esp]
xchg esi, edx
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, edx
mov edx, dword [esp]
rdtsc
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x57]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
and eax, 1
lea esi, [esi]
xchg edx, eax
xchg dword [esp], eax
xchg edx, eax
lea esp, [esp + 4]
xchg ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0xa5acb0
jne 0xa5f5e0
jmp 0xa5acae
add byte [eax], al
popfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x38]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
je 0xbb1f88
jne 0xbb1f88
jmp 0xbb1f86
call 0xa67e64
je 0xa5b4fd
xor edi, 0xffffffb0
mov ah, 0x7b
imul ebp, dword [esi - 0x2b17b92a], 0xff000026
mov ah, 0xf5
invalid
jl 0xa5b523
add al, 0x89
jl 0xa5b527
add al, 0x8b
cmp al, 0x24
lea esp, [esp + 4]
call fcn.00a5b510
popfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x28]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
je 0xa75404
jne 0xa75404
jmp 0xa75402
call 0xa63350
imul bh
fistp dword [ebp - 0x2c2804f5]
pop ss
add byte [eax], al
xchg esi, eax
mov eax, dword [ebx + 8]
push esi
xchg esi, eax
pop eax
xchg dword [ebp - 4], ebx
mov ebx, esi
push dword [ebp - 4]
xchg dword [ebp - 4], ebx
pop ebx
jmp 0xa742ac
lea edx, [edx]
add dword [esp], 0xffff44fb
xchg dword [esp], ecx
push ebp
mov ebp, esp
leave
xchg dword [esp + 4], ecx
mov edi, edi
xchg dword [esp], ecx
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x16]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
popfd
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x35]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
jmp 0xa63fd0
xchg ecx, esi
mov esi, dword [ebp - 0xc]
push ecx
xchg ecx, esi
pop esi
xchg edi, eax
mov edi, dword [ecx + 4]
push eax
xchg edi, eax
pop edi
test eax, eax
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x2f]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
je 0xa5ac44
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
pushfd
pushfd
add ebp, 0x37
popfd
lea ebp, [ebp - 0x37]
call 0xa742f6
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x62]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0xfffe7080
xchg dword [esp], eax
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x5a]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
xchg dword [esp + 4], eax
pushfd
add ebp, 0x37
popfd
lea ebp, [ebp - 0x37]
xchg dword [esp], eax
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 1]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
popfd
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x70]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
jmp 0xbb6c48
add byte [eax], al
test esi, esi
lea ecx, [ecx]
je 0xa5b48b
test edi, edi
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0xf]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
je 0xa5b48b
push 0xa
pushfd
add ebp, 0x2c
popfd
lea ebp, [ebp - 0x2c]
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, dword [ebp - 0x10]
xchg dword [esp], ecx
xchg esi, edi
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, edi
mov edi, dword [esp]
pushfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x77]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
call 0xa7546f
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x61]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0xfffe5f45
xchg dword [esp], eax
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x19]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg dword [esp + 4], eax
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x7c]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
xchg dword [esp], eax
pushfd
add ebp, 0x59
popfd
lea ebp, [ebp - 0x59]
popfd
pushfd
add ebp, 0x1c
popfd
lea ebp, [ebp - 0x1c]
jmp 0x413bf8
popfd
jmp 0x84581611
test esi, esi
pushfd
add ebp, 0x31
popfd
lea ebp, [ebp - 0x31]
je 0xa5b48b
test edi, edi
mov esi, esi
je 0xa5b48b
push 0xa
mov eax, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, dword [ebp - 0x10]
xchg dword [esp], ecx
xchg ecx, edi
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, edi
mov edi, dword [esp]
pushfd
mov eax, eax
call 0xbb1fc9
mov ebx, ebx
add dword [esp], 0xffea93eb
xchg dword [esp], eax
mov esi, esi
xchg dword [esp + 4], eax
push ebp
mov ebp, esp
leave
xchg dword [esp], eax
push ebp
mov ebp, esp
leave
popfd
lea esi, [esi]
jmp 0x413bf8