Function at 0x1015c100
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov ecx, eax
mov edi, dword [ebp + 8]
neg ecx
and ecx, 0x1f
mov edi, dword [edi + 4]
add edx, edi
mov ebx, edx
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov esi, dword [ecx*4 + 0x102e6278]
xor esi, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x10
and eax, 0xff
shr ebx, 0x18
add esi, dword [eax*4 + 0x102e6e78]
sub esi, dword [ebx*4 + 0x102e6a78]
mov eax, dword [ebp + 8]
xor esi, dword [eax]
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 8]
mov eax, dword [eax + 0xc]
xor edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
sub ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
add ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor ecx, dword [ebx*4 + 0x102e6e78]
xor edi, ecx
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
sub edx, edi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
add ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
xor ecx, dword [eax*4 + 0x102e6a78]
sub ecx, dword [ebx*4 + 0x102e6e78]
xor esi, ecx
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
add edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
xor ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x10
and eax, 0xff
shr ebx, 0x18
add ecx, dword [eax*4 + 0x102e6e78]
sub ecx, dword [ebx*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor edi, ecx
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
xor edx, edi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
sub ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
add ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor ecx, dword [ebx*4 + 0x102e6e78]
xor esi, ecx
mov edx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
sub edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
add ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
xor ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
sub ecx, dword [ebx*4 + 0x102e6e78]
xor edi, ecx
mov edx, dword [eax + 0x30]
mov eax, dword [eax + 0x34]
add edx, edi
mov ecx, eax
neg ecx
and ecx, 0x1f
mov ebx, edx
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
xor ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x10
and eax, 0xff
shr ebx, 0x18
add ecx, dword [eax*4 + 0x102e6e78]
sub ecx, dword [ebx*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor esi, ecx
mov edx, dword [eax + 0x38]
mov eax, dword [eax + 0x3c]
xor edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
sub ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
add ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor ecx, dword [ebx*4 + 0x102e6e78]
xor edi, ecx
mov edx, dword [eax + 0x40]
mov eax, dword [eax + 0x44]
sub edx, edi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
add ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
xor ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
sub ecx, dword [ebx*4 + 0x102e6e78]
xor esi, ecx
mov edx, dword [eax + 0x48]
mov eax, dword [eax + 0x4c]
add edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
xor ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x10
and eax, 0xff
shr ebx, 0x18
add ecx, dword [eax*4 + 0x102e6e78]
sub ecx, dword [ebx*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor edi, ecx
mov edx, dword [eax + 0x50]
mov eax, dword [eax + 0x54]
xor edx, edi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
sub ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
add ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor ecx, dword [ebx*4 + 0x102e6e78]
xor esi, ecx
mov edx, dword [eax + 0x58]
mov eax, dword [eax + 0x5c]
sub edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
add ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
xor ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
sub ecx, dword [ebx*4 + 0x102e6e78]
xor edi, ecx
cmp dword [eax + 0x80], 0
jne 0x1015c675
mov edx, dword [eax + 0x60]
mov eax, dword [eax + 0x64]
add edx, edi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
xor ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x10
and eax, 0xff
shr ebx, 0x18
add ecx, dword [eax*4 + 0x102e6e78]
sub ecx, dword [ebx*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor esi, ecx
mov edx, dword [eax + 0x68]
mov eax, dword [eax + 0x6c]
xor edx, esi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
sub ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
add ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
xor ecx, dword [ebx*4 + 0x102e6e78]
xor edi, ecx
mov edx, dword [eax + 0x70]
mov eax, dword [eax + 0x74]
sub edx, edi
mov ecx, eax
mov ebx, edx
neg ecx
and ecx, 0x1f
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
add ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
and ebx, 0xff
xor ecx, dword [eax*4 + 0x102e6a78]
mov eax, dword [ebp + 0xc]
sub ecx, dword [ebx*4 + 0x102e6e78]
xor esi, ecx
mov edx, dword [eax + 0x78]
mov eax, dword [eax + 0x7c]
add edx, esi
mov ecx, eax
neg ecx
and ecx, 0x1f
mov ebx, edx
shr ebx, cl
mov ecx, eax
shl edx, cl
or ebx, edx
mov ecx, ebx
movzx eax, bl
shr ecx, 8
and ecx, 0xff
mov ecx, dword [ecx*4 + 0x102e6278]
xor ecx, dword [eax*4 + 0x102e6678]
mov eax, ebx
shr eax, 0x10
and eax, 0xff
shr ebx, 0x18
add ecx, dword [eax*4 + 0x102e6e78]
sub ecx, dword [ebx*4 + 0x102e6a78]
xor edi, ecx
mov eax, dword [ebp + 8]
mov dword [eax], edi
pop edi
mov dword [eax + 4], esi
pop esi
pop ebx
pop ebp
ret