Function at 0x41f7f0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4388e1
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x44c040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0x20], edi
mov ecx, dword [edi + 8]
mov ebx, dword [edi + 4]
cmp ecx, ebx
je 0x41f886
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
mov esi, dword [ebp + 8]
lea ecx, [ebx + 0xc]
mov dword [ebp - 4], 0
mov eax, dword [esi]
mov dword [ebx], eax
mov eax, dword [esi + 4]
mov dword [ebx + 4], eax
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
lea eax, [esi + 0xc]
push eax
call fcn.0041fa60
mov eax, dword [esi + 0x24]
mov dword [ebx + 0x24], eax
mov eax, dword [esi + 0x28]
mov dword [ebx + 0x28], eax
mov al, byte [esi + 0x2c]
mov byte [ebx + 0x2c], al
mov eax, dword [esi + 0x30]
mov dword [ebx + 0x30], eax
add dword [edi + 4], 0x34
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
sub ebx, dword [edi]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [ebp - 0x28], ebx
cmp ebx, 0x4ec4ec4
jne 0x41f8a9
call fcn.004201d0
sub ecx, dword [edi]
lea esi, [ebx + 1]
mov eax, 0x4ec4ec4f
mov dword [ebp - 0x24], esi
imul ecx
mov eax, 0x4ec4ec4
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, ecx
shr edx, 1
sub eax, edx
cmp ecx, eax
jbe 0x41f8d8
mov eax, esi
mov dword [ebp - 0x1c], esi
jmp 0x41f8e3
lea eax, [edx + ecx]
cmp eax, esi
cmovb eax, esi
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x11], 0
test eax, eax
jne 0x41f8f2
xor esi, esi
mov dword [ebp - 0x18], esi
jmp 0x41f94b
cmp eax, 0x4ec4ec4
jbe 0x41f8fe
call fcn.00422030
imul eax, eax, 0x34
cmp eax, 0x1000
jb 0x41f934
lea ecx, [eax + 0x23]
cmp ecx, eax
ja 0x41f914
call fcn.00422030
push ecx
call fcn.0042187c
add esp, 4
test eax, eax
jne 0x41f926
call fcn.00425514
lea esi, [eax + 0x23]
and esi, 0xffffffe0
mov dword [ebp - 0x18], esi
mov dword [esi - 4], eax
jmp 0x41f94b
push eax
call fcn.0042187c
mov esi, eax
add esp, 4
test esi, esi
jne 0x41f948
call fcn.00425514
mov dword [ebp - 0x18], eax
push dword [ebp + 8]
imul eax, ebx, 0x34
mov dword [ebp - 4], 1
add eax, esi
push eax
push edi
call fcn.0041f5b0
add esp, 0xc
mov byte [ebp + 8], 0
mov byte [ebp - 0x11], 1
push ecx
push dword [ebp + 8]
push edi
push esi
push dword [edi + 4]
push dword [edi]
call fcn.0041f4d0
mov ecx, dword [edi]
add esp, 0x18
test ecx, ecx
je 0x41f9f2
push edi
push dword [edi + 4]
push ecx
call fcn.0041ee90
mov ecx, dword [edi + 8]
mov eax, 0x4ec4ec4f
mov ebx, dword [edi]
add esp, 0xc
sub ecx, ebx
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0x4ec4ec4
ja 0x41f921
imul eax, eax, 0x34
cmp eax, 0x1000
jb 0x41f9e9
test bl, 0x1f
jne 0x41f921
mov eax, dword [ebx - 4]
cmp eax, ebx
jae 0x41f921
sub ebx, eax
cmp ebx, 4
jb 0x41f921
cmp ebx, 0x23
ja 0x41f921
mov ebx, eax
push ebx
call fcn.004218ac
add esp, 4
imul eax, dword [ebp - 0x24], 0x34
mov dword [edi], esi
add eax, esi
mov dword [edi + 4], eax
imul eax, dword [ebp - 0x1c], 0x34
add eax, esi
mov dword [edi + 8], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4