Function at 0x41b654
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe4
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 4], ecx
mov esi, edx
mov ebx, dword [ebp + 8]
xor eax, eax
push ebp
push 0x41ba97
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [esi]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
mov ecx, ebx
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 4]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x10]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 8]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x20]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0xc]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x30]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x10]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x40]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x50]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x18]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x60]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x1c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x70]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x20]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x80]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov edi, dword [ebp - 4]
mov dword [ebx + 0x90], edi
push edi
lea eax, [ebx + 0x94]
mov ecx, 1
mov edx, dword [0x419bf0]
call fcn.00406d10
add esp, 4
mov eax, dword [ebx + 0x90]
dec eax
test eax, eax
jl 0x41b76f
inc eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x1c]
call fcn.0041a5cc
dec dword [ebp - 0x10]
jne 0x41b762
mov eax, dword [esi + 0x24]
test eax, eax
jle 0x41b860
dec eax
test eax, eax
jl 0x41b860
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 8], 0
mov eax, dword [ebp - 8]
add eax, eax
mov edx, dword [esi + 0x28]
mov edx, dword [edx + eax*8]
mov dword [ebp - 0xc], edx
mov edx, dword [esi + 0x28]
mov edi, dword [edx + eax*8 + 4]
mov eax, dword [ebx + 0x94]
mov edx, dword [ebp - 0xc]
mov dword [eax + edx*8], edi
push edi
mov eax, dword [ebx + 0x94]
mov edx, dword [ebp - 0xc]
lea eax, [eax + edx*8 + 4]
mov ecx, 1
mov edx, dword [0x4199d8]
call fcn.00406d10
add esp, 4
mov eax, dword [ebx + 0x94]
mov edx, dword [ebp - 0xc]
mov eax, dword [eax + edx*8]
dec eax
test eax, eax
jl 0x41b854
inc eax
mov dword [ebp - 0x14], eax
xor edi, edi
mov eax, dword [ebp - 8]
add eax, eax
mov edx, dword [esi + 0x28]
mov eax, dword [edx + eax*8 + 8]
mov eax, dword [eax + edi*4]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
mov edx, dword [ebx + 0x94]
mov ecx, dword [ebp - 0xc]
mov edx, dword [edx + ecx*8 + 4]
mov ecx, edi
add ecx, ecx
add ecx, ecx
lea ecx, [edx + ecx*8]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [ebp - 8]
add eax, eax
mov edx, dword [esi + 0x28]
mov eax, dword [edx + eax*8 + 0xc]
mov eax, dword [eax + edi*4]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
mov edx, dword [ebx + 0x94]
mov ecx, dword [ebp - 0xc]
mov edx, dword [edx + ecx*8 + 4]
mov ecx, edi
add ecx, ecx
add ecx, ecx
lea ecx, [edx + ecx*8 + 0x10]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
inc edi
dec dword [ebp - 0x14]
jne 0x41b7e7
inc dword [ebp - 8]
dec dword [ebp - 0x10]
jne 0x41b78e
mov eax, dword [esi]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x98]
mov edx, dword [ebp + 0xc]
call fcn.0041b4a8
mov eax, dword [esi + 4]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0xa8]
mov edx, dword [ebp + 0xc]
call fcn.0041b4a8
mov eax, dword [esi + 8]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0xb8]
mov edx, dword [ebp + 0xc]
call fcn.0041b4a8
mov eax, dword [esi + 0xc]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0xc8]
mov edx, dword [ebp + 0xc]
call fcn.0041b4a8
mov eax, dword [esi + 0x10]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0xd8]
mov edx, dword [ebp + 0xc]
call fcn.0041b4a8
mov eax, dword [esi + 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0xe8]
mov edx, dword [ebp + 0xc]
call fcn.0041b4a8
mov eax, dword [esi + 0x54]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0xf8]
mov edx, dword [ebp + 0xc]
call fcn.0041b494
mov eax, dword [esi + 0x2c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x100]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x30]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x110]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x34]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x120]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x38]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x130]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x140]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x150]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x44]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x160]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x170]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x180]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x50]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x190]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
cmp word [ebp + 0x14], 0
je 0x41ba7b
mov eax, dword [esi + 0x58]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x1a0]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x60]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x1b0]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x68]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x1c0]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x5c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x1d0]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x64]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x1e0]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
mov eax, dword [esi + 0x6c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea ecx, [ebx + 0x1f0]
mov edx, dword [ebp + 0x10]
call fcn.0041b4a8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41ba9e
lea eax, [ebp - 0x1c]
mov edx, dword [0x419a2c]
call fcn.00406730
ret