Function at 0x100af0e0
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100c5b8d
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
mov eax, dword [0x103ad010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x5c], eax
mov eax, dword [eax]
push dword [0x103c9798]
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x38]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x18], 0x81
lea esi, [ecx + 0xe1]
mov dword [ebp - 0x20], 0xe
mov ecx, dword [0x103d14fc]
lea eax, [edx + 0xd6]
mov dword [ebp - 0x1c], eax
lea ebx, [edx - 7]
add eax, 0xfffffff9
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], eax
mov eax, dword [ecx]
mov dword [ebp - 0x58], edx
call dword [eax + 0x28]
mov ecx, dword [0x103d14fc]
lea edi, [ebx + 0x164]
mov edx, dword [ebp - 0x50]
push esi
push edi
mov eax, dword [ecx]
add edx, 0xfffffff8
push edx
push ebx
mov dword [ebp - 0x64], esi
call dword [eax + 0x30]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ecx]
push dword [eax + 4]
mov eax, dword [ebp - 0x50]
push 0x103c8b38
add eax, 2
push 0x18
push eax
mov eax, dword [ebp - 0x58]
add eax, 0xb2
push eax
push 0x103c9dc8
call fcn.10049150
mov ecx, dword [0x103d14fc]
add esp, 0x18
mov eax, dword [ecx]
push dword [0x103c9680]
call dword [eax + 0x28]
mov ecx, dword [0x103d14fc]
mov esi, dword [ebp - 0x50]
mov eax, dword [ecx]
mov edx, dword [eax + 0x38]
lea eax, [esi + 0xc]
push eax
push edi
lea eax, [esi - 8]
push eax
push ebx
call edx
mov ecx, dword [0x103d14fc]
push dword [0x103c9680]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov esi, dword [ebp - 0x64]
mov ecx, dword [0x103d14fc]
push esi
push edi
mov edi, dword [ebp - 0x50]
mov eax, dword [ecx]
lea edx, [edi - 8]
push edx
push ebx
call dword [eax + 0x38]
mov eax, dword fs:[0x2c]
mov ecx, dword [0x103d1314]
mov ebx, dword [eax + ecx*4]
mov eax, dword [0x103d4284]
cmp eax, dword [ebx + 4]
jle 0x100af27c
push 0x103d4284
call fcn.100bb3bb
add esp, 4
cmp dword [0x103d4284], 0xffffffff
jne 0x100af27c
mov dword [ebp - 4], 0
mov ecx, dword [0x103d14fc]
push 1
mov eax, dword [ecx]
call dword [eax + 0x94]
mov ecx, dword [0x103d14fc]
mov esi, eax
push 0xc
push 0x1e
push 0x100
mov edx, dword [ecx]
push 0x10349150
push esi
call dword [edx + 0x1dc]
push 0x103d4284
mov dword [0x103d42d0], esi
mov dword [ebp - 4], 0xffffffff
call fcn.100bb371
add esp, 4
mov ecx, dword [0x103d14fc]
add edi, 0x12
mov eax, dword [ecx]
mov eax, dword [eax + 0x1b4]
call eax
mov ecx, dword [0x103d14fc]
vmovss xmm0, dword [0x103d3554]
push ecx
fstp dword [ebp - 0x70]
mov eax, dword [ecx]
vmovss dword [esp], xmm0
call dword [eax + 0x1b0]
mov eax, dword [0x103d4298]
cmp eax, dword [ebx + 4]
jle 0x100af324
push 0x103d4298
call fcn.100bb3bb
add esp, 4
cmp dword [0x103d4298], 0xffffffff
jne 0x100af324
mov dword [ebp - 4], 1
mov ecx, dword [0x103d14fc]
push 1
mov eax, dword [ecx]
call dword [eax + 0x94]
mov ecx, dword [0x103d14fc]
mov esi, eax
push 0xc
push 0xc8
push 0xc8
mov edx, dword [ecx]
push 0x10322048
push esi
call dword [edx + 0x1dc]
push 0x103d4298
mov dword [0x103d42cc], esi
mov dword [ebp - 4], 0xffffffff
call fcn.100bb371
add esp, 4
mov edx, dword [0x103d42cc]
mov dword [ebp - 0x50], 0xffffffff
cmp edx, 1
jl 0x100af376
mov ecx, dword [0x103d14fc]
push edx
mov eax, dword [ecx]
call dword [eax + 0x80]
mov ecx, dword [0x103d14fc]
push dword [ebp - 0x50]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ebx, dword [ebp - 0x58]
lea esi, [edi + 0xc8]
mov ecx, dword [0x103d14fc]
push esi
lea eax, [ebx + 0xc8]
mov edx, dword [ecx]
push eax
push edi
push ebx
call dword [edx + 0x88]
jmp 0x100af37f
mov ebx, dword [ebp - 0x58]
lea esi, [edi + 0xc8]
mov ecx, dword [0x103d14fc]
push dword [0x103c9680]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x103d14fc]
lea eax, [ebx + 0xc8]
push esi
push eax
push edi
mov edx, dword [ecx]
push ebx
call dword [edx + 0x38]
mov esi, dword [ebp - 0x5c]
lea eax, [ebp - 0x50]
push eax
push 0xa
push 3
mov ecx, dword [esi]
mov dword [ebp - 0x50], 0xffffffff
mov edx, dword [ecx + 0x54]
mov ecx, dword [ecx + 0x50]
call fcn.10049a50
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x14]
lea eax, [ebp - 0x18]
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x1c]
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0x18]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x20]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x88], eax
add esp, 0xc
lea eax, [ebp - 0x14]
mov dword [ebp - 0x84], eax
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x78], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x74], eax
mov eax, dword [esi]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x48], eax
mov ecx, dword [eax + 0x1c]
call fcn.100a8710
mov eax, dword [esi]
vmovss dword [ebp - 0x58], xmm0
mov eax, dword [eax + 0x1c]
mov bl, byte [eax + 1]
mov dl, byte [eax + 2]
mov al, byte [eax]
cmp bl, dl
mov dword [ebp - 0x60], eax
movzx eax, dl
movzx ecx, bl
cmovbe ecx, eax
mov eax, dword [ebp - 0x60]
cmp al, cl
jbe 0x100af45f
mov cl, al
jmp 0x100af46c
cmp bl, dl
jbe 0x100af46a
movzx ecx, bl
mov edi, ecx
jmp 0x100af477
mov cl, dl
movzx ecx, cl
mov dh, bl
mov edi, ecx
cmp bl, dl
jb 0x100af479
mov dh, dl
cmp al, dh
jb 0x100af490
movzx eax, bl
cmp bl, dl
movzx esi, dl
cmovb esi, eax
mov dword [ebp - 0x64], esi
mov eax, esi
mov esi, dword [ebp - 0x5c]
vxorps xmm0, xmm0, xmm0
test ecx, ecx
je 0x100af4b7
vxorps xmm1, xmm1, xmm1
movzx eax, al
vcvtsi2ss xmm0, xmm0, edi
vcvtsi2ss xmm1, xmm1, eax
vdivss xmm1, xmm1, xmm0
vmovss xmm0, dword [0x1039f588]
vsubss xmm0, xmm0, xmm1
vmovss xmm1, dword [0x1039f6fc]
cmp bl, dl
movzx eax, bl
movzx ecx, dl
cmova ecx, eax
mov eax, dword [ebp - 0x60]
vmulss xmm0, xmm0, xmm1
vmovss dword [ebp - 0x68], xmm0
cmp al, cl
jbe 0x100af4de
mov cl, al
jmp 0x100af4e9
cmp bl, dl
movzx ecx, dl
movzx eax, bl
cmova ecx, eax
sub esp, 8
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
mov eax, dword [ebp - 0x60]
lea ecx, [ebp - 0x88]
vdivss xmm0, xmm0, dword [0x1039f72c]
push eax
mov byte [ebp - 0x4e], dl
mov byte [ebp - 0x50], 0xff
mov byte [ebp - 0x4f], bl
mov byte [ebp - 0x4d], 0xff
push dword [ebp - 0x50]
mov byte [ebp - 0x52], dl
mov byte [ebp - 0x54], 0
mov byte [ebp - 0x53], bl
mov byte [ebp - 0x51], 0xff
push dword [ebp - 0x54]
vmulss xmm0, xmm0, xmm1
push 0x103524f0
vmovss dword [ebp - 0x64], xmm0
call fcn.100afa10
mov eax, dword [esi]
sub esp, 8
mov byte [ebp - 0x53], 0xff
mov byte [ebp - 0x51], 0xff
mov byte [ebp - 0x4f], 0
mov edx, dword [eax + 0x1c]
mov byte [ebp - 0x4d], 0xff
mov al, byte [edx + 2]
mov cl, byte [edx]
mov byte [ebp - 0x52], al
mov byte [ebp - 0x4e], al
movzx eax, byte [edx + 1]
push eax
mov byte [ebp - 0x54], cl
push dword [ebp - 0x54]
mov byte [ebp - 0x50], cl
lea ecx, [ebp - 0x88]
push dword [ebp - 0x50]
push 0x1039edc0
call fcn.100afa10
mov eax, dword [esi]
sub esp, 8
mov word [ebp - 0x52], 0xffff
mov word [ebp - 0x4e], 0xff00
mov edx, dword [eax + 0x1c]
mov al, byte [edx + 1]
mov cl, byte [edx]
mov byte [ebp - 0x53], al
mov byte [ebp - 0x4f], al
movzx eax, byte [edx + 2]
push eax
mov byte [ebp - 0x54], cl
push dword [ebp - 0x54]
mov byte [ebp - 0x50], cl
lea ecx, [ebp - 0x88]
push dword [ebp - 0x50]
push 0x1039c900
call fcn.100afa10
mov eax, dword [ebp - 0x14]
push 0x1039edbc
push 0x103c8b38
push 0x18
add eax, 7
push eax
push dword [ebp - 0x24]
push 0x103c9dc8
call fcn.100492f0
mov edx, dword [0x103d42d0]
add esp, 0x18
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x54], 0xffffffff
mov dword [ebp - 0x60], eax
cmp edx, 1
jl 0x100af649
mov ecx, dword [0x103d14fc]
mov esi, dword [ebp - 0x1c]
push edx
mov eax, dword [ecx]
call dword [eax + 0x80]
mov ecx, dword [0x103d14fc]
push dword [ebp - 0x54]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x103d14fc]
lea eax, [edi + ebx]
push eax
mov eax, dword [ebp - 0x60]
add eax, esi
mov edx, dword [ecx]
push eax
push edi
push esi
call dword [edx + 0x88]
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
mov ecx, dword [0x103d14fc]
push dword [0x103c9680]
mov esi, dword [ebp - 0x1c]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x103d14fc]
lea eax, [edi + ebx]
push eax
mov eax, dword [ebp - 0x60]
add eax, esi
mov edx, dword [ecx]
push eax
push edi
push esi
call dword [edx + 0x38]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx + 0x1c]
call fcn.100a8710
push 0x167
push ecx
vmovaps xmm1, xmm0
lea ecx, [ebp - 0x38]
call fcn.100af7b0
vmovss xmm2, dword [ebp - 0x64]
vmovss xmm1, dword [0x1039f6fc]
vmovss xmm0, dword [ebp - 0x58]
add dword [ebp - 0x14], 0x15
call fcn.100a8820
vmovss xmm2, dword [ebp - 0x64]
vmovss xmm0, dword [ebp - 0x58]
vxorps xmm1, xmm1, xmm1
mov esi, eax
call fcn.100a8820
vmovss xmm0, dword [ebp - 0x68]
sub esp, 0xc
lea ecx, [ebp - 0x88]
vmovss dword [esp], xmm0
push esi
push eax
push str.SVHG
call fcn.100afbc0
vmovss xmm2, dword [0x1039f6fc]
vmovss xmm1, dword [ebp - 0x68]
vmovss xmm0, dword [ebp - 0x58]
call fcn.100a8820
vmovss xmm1, dword [ebp - 0x68]
vmovss xmm0, dword [ebp - 0x58]
vxorps xmm2, xmm2, xmm2
mov esi, eax
call fcn.100a8820
vmovss xmm0, dword [ebp - 0x64]
sub esp, 0xc
lea ecx, [ebp - 0x88]
vmovss dword [esp], xmm0
push esi
push eax
push 0x1039edb8
call fcn.100afbc0
mov ecx, dword [ebp - 0x5c]
sub esp, 8
mov byte [ebp - 0x59], 0xff
mov byte [ebp - 0x55], 1
mov eax, dword [ecx]
mov esi, dword [eax + 0x1c]
mov al, byte [esi + 2]
mov cl, byte [esi + 1]
mov dl, byte [esi]
mov byte [ebp - 0x5a], al
mov byte [ebp - 0x56], al
movzx eax, byte [esi + 3]
push eax
mov byte [ebp - 0x5b], cl
mov byte [ebp - 0x5c], dl
push dword [ebp - 0x5c]
mov byte [ebp - 0x57], cl
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x58], dl
push dword [ebp - 0x58]
push 0x1039c8fc
call fcn.100afa10
lea ecx, [ebp - 0x4c]
call fcn.100af8d0
mov ecx, dword [0x103d14fc]
vmovss xmm0, dword [ebp - 0x70]
push ecx
vmovss dword [esp], xmm0
mov eax, dword [ecx]
call dword [eax + 0x1b0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100bb27a
mov esp, ebp
pop ebp
ret