Function at 0x10050c40
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Get ntdll base address
Get process heap flags

Disassembly:
push 0xffffffffffffffff
push 0x10195ce3
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101ddf78]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x14], esi
lea ecx, [esi + 8]
call fcn.10049980
xor ebx, ebx
lea ecx, [esi + 0x1510]
mov dword [esp + 0x38], ebx
call fcn.100404c0
lea ebp, [esi + 0x18bc]
mov ecx, ebp
call fcn.10076a40
mov dword [esi + 0x1958], ebx
mov dword [esi + 0x1954], ebx
mov dword [esi + 0x195c], ebx
mov dword [esi + 0x1964], ebx
mov dword [esi + 0x1960], ebx
mov dword [esi + 0x1968], ebx
mov dword [esi + 0x1970], ebx
mov dword [esi + 0x196c], ebx
mov dword [esi + 0x1974], ebx
mov dword [esi + 0x197c], ebx
mov dword [esi + 0x1978], ebx
mov dword [esi + 0x1980], ebx
mov dword [esi + 0x1988], ebx
mov dword [esi + 0x1984], ebx
mov dword [esi + 0x198c], ebx
fldz
fst dword [esi + 0x19d4]
fst dword [esi + 0x19d0]
fst dword [esi + 0x19f0]
fstp dword [esi + 0x19ec]
mov dword [esi + 0x19fc], ebx
mov dword [esi + 0x19f8], ebx
mov dword [esi + 0x1a00], ebx
mov dword [esi + 0x1a08], ebx
mov dword [esi + 0x1a04], ebx
mov dword [esi + 0x1a0c], ebx
mov dword [esi + 0x1a14], ebx
mov dword [esi + 0x1a10], ebx
mov dword [esi + 0x1a18], ebx
mov dword [esi + 0x1a20], ebx
mov dword [esi + 0x1a1c], ebx
mov dword [esi + 0x1a24], ebx
mov dword [esi + 0x1a2c], ebx
mov dword [esi + 0x1a28], ebx
mov dword [esi + 0x1a30], ebx
lea ecx, [esi + 0x1a34]
call fcn.100393a0
fld dword [0x101a07a0]
fst dword [esi + 0x1ac8]
lea ecx, [esi + 0x1b30]
fst dword [esi + 0x1acc]
fld dword [0x101a0678]
fst dword [esi + 0x1ad0]
fst dword [esi + 0x1ad4]
fxch st(1)
fst dword [esi + 0x1b08]
fstp dword [esi + 0x1b0c]
fst dword [esi + 0x1b10]
fstp dword [esi + 0x1b14]
call fcn.10040090
lea ecx, [esi + 0x1b54]
call fcn.10040090
lea ecx, [esi + 0x1b78]
call fcn.10040090
fldz
fst dword [esi + 0x1bb4]
fst dword [esi + 0x1bb0]
fst dword [esi + 0x1bbc]
fst dword [esi + 0x1bb8]
mov byte [esi + 0x1b9c], bl
mov dword [esi + 0x1ba0], ebx
fst dword [esp + 0x20]
mov eax, dword [esp + 0x20]
fstp dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
mov dword [esi + 0x1ba8], ebx
mov dword [esi + 0x1bac], ebx
mov dword [esi + 0x1ba4], ebx
mov dword [esi + 0x1bb8], eax
mov dword [esi + 0x1bbc], ecx
mov dword [esi + 0x1bb0], eax
mov dword [esi + 0x1bb4], ecx
push 0x1003ebb0
push 0x1003eba0
push 2
lea eax, [esi + 0x1bc0]
push 0xc
push eax
mov byte [esp + 0x4c], 0xb
call fcn.1011544a
push ebx
lea ecx, [esi + 0x1bdc]
mov byte [esp + 0x3c], 0xc
call fcn.1003fdb0
fld dword [0x101a07a0]
mov dword [esi + 0x1c70], ebx
mov dword [esi + 0x1c6c], ebx
mov dword [esi + 0x1c64], ebx
mov dword [esi + 0x1c68], ebx
xor eax, eax
mov dword [esi + 0x1c78], eax
mov dword [esi + 0x1c7c], eax
mov dword [esi + 0x1c80], eax
mov dword [esi + 0x1c84], eax
mov dword [esi + 0x1c88], eax
mov dword [esi + 0x1c8c], eax
mov dword [esi + 0x1c90], eax
mov dword [esi + 0x1c94], eax
mov byte [esi + 0x1c98], al
mov byte [esi + 0x1c9a], bl
mov byte [esi + 0x1c99], bl
or edi, 0xffffffff
mov dword [esi + 0x1c74], edi
fst dword [esi + 0x1c9c]
fstp dword [esi + 0x1ca0]
fld dword [0x101a0678]
fst dword [esi + 0x1ca4]
fstp dword [esi + 0x1ca8]
mov dword [esi + 0x1cc8], ebx
mov dword [esi + 0x1cc4], ebx
mov dword [esi + 0x1ccc], ebx
mov dword [esi + 0x1cdc], ebx
mov dword [esi + 0x1cd8], ebx
mov dword [esi + 0x1ce0], ebx
mov dword [esi + 0x1ce8], ebx
mov dword [esi + 0x1ce4], ebx
mov dword [esi + 0x1cec], ebx
mov dword [esi + 0x1cf0], ebx
mov dword [esi + 0x1cf8], ebx
mov dword [esi + 0x1cf4], ebx
mov dword [esi + 0x1cfc], ebx
mov dword [esi + 0x1d04], ebx
mov dword [esi + 0x1d00], ebx
mov dword [esi + 0x1d08], ebx
lea eax, [esi + 0x1d0c]
mov dword [eax + 8], ebx
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x14], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x24], ebx
push 0xe70
push ebx
push eax
call fcn.10114870
add esp, 0xc
lea ecx, [esi + 0x2b7c]
mov byte [esp + 0x38], 0x12
call fcn.1007ad60
fldz
fst dword [esi + 0x2be8]
fst dword [esi + 0x2be4]
fst dword [esi + 0x2be0]
fst dword [esi + 0x2bdc]
fst dword [esi + 0x2bfc]
fst dword [esi + 0x2bf8]
mov dword [esi + 0x2c08], ebx
mov dword [esi + 0x2c04], ebx
mov dword [esi + 0x2c0c], ebx
fst dword [esi + 0x2c14]
fst dword [esi + 0x2c10]
fst dword [esi + 0x2c1c]
fst dword [esi + 0x2c18]
mov dword [esi + 0x2c2c], ebx
mov dword [esi + 0x2c28], ebx
mov dword [esi + 0x2c30], ebx
mov dword [esi + 0x2c38], ebx
mov dword [esi + 0x2c34], ebx
mov dword [esi + 0x2c3c], ebx
mov dword [esi + 0x2c44], ebx
mov dword [esi + 0x2c40], ebx
mov dword [esi + 0x2c48], ebx
mov dword [esi + 0x2c58], ebx
mov dword [esi + 0x2c54], ebx
mov dword [esi + 0x2c5c], ebx
fst dword [esi + 0x18b8]
mov eax, dword [esp + 0x40]
fst dword [esi + 0x18b4]
cmp eax, ebx
sete cl
cmp eax, ebx
mov byte [esp + 0x38], 0x18
mov byte [esi], bl
mov byte [esi + 2], bl
mov byte [esi + 1], bl
mov dword [esi + 0x18b0], ebx
mov byte [esi + 3], cl
jne 0x10051081
push 0x5c
fstp st(0)
call fcn.1003b5f0
lea edx, [esp + 0x44]
add esp, 4
mov dword [esp + 0x18], eax
mov byte [esp + 0x40], bl
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0x38], 0x19
je 0x1005107d
mov ecx, eax
call fcn.10076f40
jmp 0x1005107f
xor eax, eax
fldz
fldz
mov dword [esi + 0x94], eax
fstp qword [esi + 0x1940]
mov dword [esi + 0x1948], ebx
mov dword [esi + 0x1950], edi
mov dword [esi + 0x194c], edi
fst dword [esi + 0x19b0]
mov dword [esi + 0x1990], ebx
fst dword [esi + 0x19ac]
mov dword [esi + 0x1994], ebx
fst dword [esi + 0x19c0]
mov dword [esi + 0x1998], ebx
fld dword [0x1019cf4c]
mov dword [esi + 0x199c], ebx
fst dword [esp + 0x20]
mov eax, dword [esp + 0x20]
fstp dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
mov dword [esi + 0x19d0], eax
fst dword [esi + 0x19e8]
mov dword [esi + 0x19d4], ecx
fst dword [esp + 0x20]
mov edx, dword [esp + 0x20]
fst dword [esp + 0x24]
mov eax, dword [esp + 0x24]
fld dword [0x101a07a0]
mov dword [esi + 0x19ec], edx
fst dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
fst dword [esp + 0x24]
mov edx, dword [esp + 0x24]
fld dword [0x101a0678]
mov dword [esi + 0x1ac8], ecx
fst dword [esp + 0x28]
mov dword [esi + 0x19f0], eax
mov eax, dword [esp + 0x28]
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
fxch st(1)
mov dword [esi + 0x1acc], edx
fst dword [esi + 0x1aec]
mov dword [esi + 0x1ad0], eax
fst dword [esi + 0x1ae8]
mov dword [esi + 0x19a0], ebx
mov byte [esi + 0x19a4], bl
mov dword [esi + 0x19a8], ebx
mov dword [esi + 0x19b4], ebx
mov dword [esi + 0x19b8], ebx
mov dword [esi + 0x19bc], ebx
mov byte [esi + 0x19c4], bl
mov byte [esi + 0x19c5], bl
mov byte [esi + 0x19c6], bl
mov byte [esi + 0x19c7], bl
mov byte [esi + 0x19c8], bl
mov dword [esi + 0x19cc], ebx
mov dword [esi + 0x19dc], ebx
mov dword [esi + 0x19d8], ebx
mov dword [esi + 0x19e0], ebx
mov dword [esi + 0x19e4], ebx
mov dword [esi + 0x19f4], ebx
mov byte [esi + 0x1a98], bl
mov dword [esi + 0x1a9c], ebx
mov dword [esi + 0x1aa0], ebx
mov dword [esi + 0x1ab4], ebx
mov dword [esi + 0x1ab0], ebx
mov dword [esi + 0x1aac], ebx
mov dword [esi + 0x1aa8], ebx
mov dword [esi + 0x1aa4], ebx
mov dword [esi + 0x1ac0], ebx
mov dword [esi + 0x1abc], ebx
mov dword [esi + 0x1ab8], ebx
mov dword [esi + 0x1ac4], ebx
mov dword [esi + 0x1ad4], ecx
mov dword [esi + 0x1ad8], ebx
mov dword [esi + 0x1ae4], ebx
mov dword [esi + 0x1ae0], ebx
mov dword [esi + 0x1adc], ebx
mov byte [esi + 0x1af0], bl
mov dword [esi + 0x1af4], ebx
mov dword [esi + 0x1af8], 0x7fffffff
mov byte [esi + 0x1afc], bl
fst dword [esi + 0x1bd8]
mov byte [esi + 0x1afd], bl
fst dword [esi + 0x1cb4]
mov byte [esi + 0x1afe], 1
mov byte [esi + 0x1aff], bl
mov byte [esi + 0x1b00], bl
mov byte [esi + 0x1b01], bl
mov byte [esi + 0x1b02], bl
mov dword [esi + 0x1b04], ebx
mov byte [esi + 0x1b18], bl
mov byte [esi + 0x1b19], bl
mov dword [esi + 0x1b1c], ebx
mov dword [esi + 0x1b20], ebx
mov dword [esi + 0x1b2c], edi
mov dword [esi + 0x1b28], edi
mov dword [esi + 0x1b24], edi
mov dword [esi + 0x1c04], ebp
mov dword [esi + 0x1c08], 0x101a1598
mov dword [esi + 0x1c50], ebx
mov byte [esi + 0x1c55], bl
mov byte [esi + 0x1c54], bl
mov dword [esi + 0x1c58], ebx
mov dword [esi + 0x1c5c], edi
mov dword [esi + 0x1c60], edi
mov dword [esi + 0x1cac], ebx
mov dword [esi + 0x1cb0], ebx
mov dword [esi + 0x1cb8], ebx
mov dword [esi + 0x1cbc], ebx
mov dword [esi + 0x1cc0], edi
xor eax, eax
mov dword [esi + 0x1cd0], eax
mov dword [esi + 0x1cd4], eax
fst dword [esi + 0x2bf0]
fld dword [0x101a1594]
mov dword [esi + 0x2bd4], ebx
fstp dword [esi + 0x2bf4]
mov dword [esi + 0x2bd8], 0x2900000
mov byte [esi + 0x2bec], bl
fst dword [esp + 0x20]
mov edx, dword [esp + 0x20]
mov dword [esi + 0x2bf8], edx
fst dword [esp + 0x24]
mov eax, dword [esp + 0x24]
fxch st(1)
mov dword [esi + 0x2bfc], eax
fst dword [esp + 0x20]
mov eax, dword [esp + 0x20]
fstp dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
mov dword [esi + 0x2c00], ebx
mov dword [esi + 0x2c18], eax
mov dword [esi + 0x2c1c], ecx
mov dword [esi + 0x2c10], eax
mov dword [esi + 0x2c14], ecx
mov byte [esi + 0x2c20], bl
fstp dword [esi + 0x2c24]
mov byte [esi + 0x2c4c], bl
push 0x1e0
mov dword [esi + 0x2c50], ebx
lea ecx, [esi + 0x2c68]
push ebx
mov dword [esi + 0x2c60], ebx
push ecx
mov dword [esi + 0x2c64], 2
call fcn.10114870
fldz
mov dword [esi + 0x2e48], ebx
fstp dword [esi + 0x2e4c]
push 0xc01
mov dword [esi + 0x2e58], edi
lea edx, [esi + 0x2e5c]
push ebx
mov dword [esi + 0x2e54], edi
push edx
mov dword [esi + 0x2e50], edi
call fcn.10114870
add esp, 0x18
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 4