Function at 0x492a50
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x518f70
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push ebx
push esi
push edi
mov eax, dword [0x79b0b4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0x14], esi
mov edi, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [ebp - 4], 0
cmp dword [edi + 0x30], 0
jne 0x492aa3
mov eax, dword [edx + 0x20]
mov ebx, dword [edx + 0x1c]
inc eax
mov dword [ebp - 0x28], 1
jmp 0x492ab0
mov eax, dword [edx + 0x1c]
mov ebx, dword [edx + 0x20]
dec eax
or ecx, 0xffffffff
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x2c], eax
cmp ebx, eax
je 0x492c5b
mov eax, dword [edi + 0x5c]
mov ecx, ebx
sub ecx, dword [edi + 0x3c]
lea ecx, [eax + ecx*4]
mov eax, dword [edx + 4]
add eax, dword [ecx]
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
mov edi, dword [esi + 8]
mov eax, 0x92492493
mov ecx, dword [edi + 0x70]
mov esi, dword [edi + 0x6c]
sub ecx, esi
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x1c]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x492c39
lea eax, [ecx*8]
sub eax, ecx
lea edi, [esi + eax*4]
mov esi, dword [edi + 0x14]
mov dword [ebp - 0x24], edi
test ebx, ebx
js 0x492b1b
mov eax, ebx
cdq
idiv esi
mov ecx, eax
jmp 0x492b31
mov eax, esi
test esi, esi
js 0x492b26
sub eax, ebx
dec eax
jmp 0x492b2a
not eax
sub eax, ebx
cdq
idiv esi
mov ecx, eax
neg ecx
imul ecx, esi
mov eax, ebx
sub eax, ecx
jne 0x492c2e
mov edx, dword [ebp - 0x14]
mov ecx, dword [edi + 0x10]
mov edi, dword [edx + 8]
mov edx, dword [edi + 0x34]
test edx, edx
js 0x492b55
mov eax, edx
cdq
idiv ecx
jmp 0x492b6b
test ecx, ecx
js 0x492b60
mov eax, ecx
sub eax, edx
dec eax
jmp 0x492b66
not edx
sub edx, ecx
mov eax, edx
cdq
idiv ecx
neg eax
mov edx, dword [edi + 0x38]
mov dword [ebp - 0x18], eax
test edx, edx
js 0x492b7e
mov eax, edx
cdq
idiv ecx
mov edi, eax
jmp 0x492b96
test ecx, ecx
js 0x492b89
mov eax, ecx
sub eax, edx
dec eax
jmp 0x492b8f
not edx
sub edx, ecx
mov eax, edx
cdq
idiv ecx
mov edi, eax
neg edi
mov ecx, dword [ebp - 0x24]
cmp byte [ecx + 0x18], 0
je 0x492bc3
sub edi, dword [ebp - 0x18]
lea eax, [ebp - 0x20]
mov esi, dword [ebp - 0x14]
inc edi
push edi
push dword [ecx]
mov ecx, dword [esi + 8]
push dword [ecx + 0x68]
push eax
call fcn.004b2480
add esp, 0x10
inc dword [ebp - 0x1c]
jmp 0x492ad3
mov eax, dword [ecx + 4]
mov dword [ebp - 0x30], eax
test ebx, ebx
js 0x492bd4
mov eax, ebx
cdq
idiv esi
jmp 0x492be8
mov eax, esi
test esi, esi
js 0x492bdf
sub eax, ebx
dec eax
jmp 0x492be3
not eax
sub eax, ebx
cdq
idiv esi
neg eax
mov esi, dword [ebp - 0x24]
mov ecx, dword [ecx + 0xc]
imul ecx, eax
mov edx, dword [esi + 8]
mov eax, edx
imul eax, dword [ebp - 0x18]
push dword [esi]
add ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x14]
add eax, ecx
mov dword [ebp - 0x30], eax
mov eax, edx
imul eax, edi
add eax, ecx
mov ecx, dword [esi + 8]
push dword [ecx + 0x68]
push edx
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.004b0ae0
add esp, 0x18
inc dword [ebp - 0x1c]
jmp 0x492ad3
mov esi, dword [ebp - 0x14]
inc dword [ebp - 0x1c]
jmp 0x492ad3
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov edx, dword [esi + 0xc]
cmp dword [edx + 0x10], eax
jae 0x492c50
mov dword [edx + 0x10], eax
mov edi, dword [esi + 8]
mov edx, dword [esi + 0xc]
add ebx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
jmp 0x492ab3
cmp ebx, dword [edx + 0x14]
jl 0x492c65
cmp ebx, dword [edx + 0x18]
jle 0x492cb0
mov eax, dword [edx + 4]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 4]
mov dword [ecx + 0xc], eax
mov edx, dword [esi + 0xc]
mov ecx, dword [edx + 0x24]
test ecx, ecx
je 0x492ca9
mov eax, dword [ecx]
lea edi, [ebp - 0x30]
push edi
push dword [edx + 0x14]
push dword [edx + 0xc]
push dword [edx + 8]
call dword [eax + 0xc]
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx + 0xc]
cmp eax, edx
jge 0x492cc2
mov dword [ecx + 0xc], eax
mov ecx, dword [esi + 0xc]
mov eax, dword [ebp - 0x30]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov byte [eax + 0x28], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 8]
cmp dword [eax + 0x68], 0
jne 0x492ca9
push edx
push dword [ecx + 0x18]
push dword [ecx + 0x14]
push ecx
push eax
call fcn.004928c0
add esp, 0x14
jmp 0x492ca9