Function at 0x441340
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x4417e5
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 8]
mov edx, dword [0x405c74]
call fcn.0040451c
lea eax, [ebp - 0xc]
mov edx, dword [0x405c74]
call fcn.0040451c
xor eax, eax
push ebp
push 0x441792
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.004280c8
lea edx, [ebx + 0x10]
mov eax, dword [ebx + 0xc]
call fcn.00429c08
mov al, byte [ebx + 0x14]
push eax
mov eax, dword [ebx + 4]
push eax
mov eax, dword [ebx + 0x18]
push eax
mov eax, dword [ebx + 0x1c]
push eax
mov eax, dword [ebx + 0x20]
push eax
lea edx, [ebp - 0x14]
mov esi, dword [ebx + 0x10]
mov eax, esi
call fcn.004337b8
mov eax, dword [ebp - 0x14]
push eax
mov al, byte [ebx + 0x28]
push eax
mov eax, dword [ebx + 0x2c]
push eax
mov eax, dword [ebx + 0x30]
push eax
mov eax, dword [ebx + 0x34]
push eax
lea eax, [ebp - 0x10]
push eax
mov ecx, esi
mov edx, dword [ebx + 0xc]
mov al, byte [ebx + 8]
call fcn.00447558
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x10]
mov ecx, 0x4417f4
call fcn.00404934
mov eax, dword [ebp - 0x18]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x14]
cmp byte [ebx + 8], 2
jne 0x441419
mov byte [ebp - 1], 1
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 1]
push eax
xor ecx, ecx
mov dl, 2
xor eax, eax
call fcn.0042de54
jmp 0x441442
mov byte [ebp - 1], 0
mov edx, 0x44ecf8
mov eax, 0x44ecf0
mov ecx, 0x48
call fcn.004026e8
call fcn.00428490
mov dword [0x44ecf0], eax
mov dword [0x44ecf4], edx
cmp byte [ebp - 1], 0
jne 0x44145b
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 1]
push eax
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0042de54
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x10]
mov ecx, 0x4417f4
call fcn.00404934
mov eax, dword [ebp - 0x18]
mov dl, 2
mov ecx, dword [eax]
call dword [ecx + 0x14]
cmp byte [ebp - 1], 0
jne 0x441788
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x314]
cmp al, 1
je 0x4414d5
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x38]
test al, al
je 0x4414d5
push 0
call sub.kernel32.dll_GetModuleHandleA_1
mov edx, dword [0x44f538]
cmp eax, dword [edx]
je 0x4414b4
cmp byte [0x44ecc0], 0
je 0x4414d5
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x10]
mov ecx, 0x4417f4
call fcn.00404934
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x10]
mov edx, eax
mov al, 1
call fcn.0042e378
xor eax, eax
push ebp
push 0x441781
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [ebp - 1], 0
jne 0x441538
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x37c]
test al, al
je 0x441506
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x354]
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x374]
test al, al
je 0x441525
lea ecx, [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
call dword [esi + 0x350]
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 1]
push eax
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0042de54
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x10]
mov ecx, 0x4417f4
call fcn.00404934
mov eax, dword [ebp - 0x18]
mov dl, 3
mov ecx, dword [eax]
call dword [ecx + 0x14]
cmp byte [ebp - 1], 0
jne 0x44156b
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 1]
push eax
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0042de54
cmp byte [ebp - 1], 0
je 0x441584
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x30c]
test al, al
jne 0x44172e
cmp byte [ebp - 1], 0
jne 0x441633
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x10]
test al, al
jne 0x4415b2
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x4415b2
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x30]
test al, al
je 0x4415c4
mov edx, 0x4410b4
mov cl, 1
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
call dword [esi + 0x364]
cmp byte [0x44ec78], 0
jne 0x4415e0
cmp byte [0x44ec60], 0
je 0x441628
mov eax, dword [0x44f548]
cmp byte [eax], 0
je 0x441628
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x394]
cmp al, 4
je 0x441633
cmp byte [0x44ec78], 0
jne 0x441605
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x3a4]
jmp 0x441633
cmp dword [ebx + 0x24], 0
je 0x441633
lea ecx, [ebp - 0x20]
mov dl, 1
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
call dword [esi + 0x350]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebx + 0x24]
call fcn.00403648
jmp 0x441633
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x3a4]
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x30c]
test al, al
je 0x441675
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x394]
cmp al, 4
je 0x441675
cmp byte [0x44ec78], 0
jne 0x441675
cmp byte [0x44ec60], 0
je 0x44171e
mov eax, dword [0x44f548]
cmp byte [eax], 0
je 0x44171e
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x58]
call fcn.00429148
test al, al
jne 0x4416a6
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x30c]
test al, al
jne 0x4416ce
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x50]
call fcn.00429148
test al, al
jne 0x4416ce
mov byte [ebp - 2], 0
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 2]
push eax
mov cl, 6
mov dl, 1
xor eax, eax
call fcn.0042de54
mov dl, 1
mov eax, dword [ebp - 0x10]
call fcn.00441244
call fcn.0043a6d0
jmp 0x44171e
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x50]
call fcn.00429148
test al, al
je 0x441707
mov byte [ebp - 2], 0
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 2]
push eax
mov cl, 5
mov dl, 1
xor eax, eax
call fcn.0042de54
mov dl, 1
mov eax, dword [ebp - 0x10]
call fcn.00441244
call fcn.0043a584
jmp 0x44171e
mov byte [ebp - 2], 0
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 2]
push eax
mov cl, 4
mov dl, 1
xor eax, eax
call fcn.0042de54
cmp byte [ebp - 1], 0
jne 0x44172e
xor edx, edx
mov eax, dword [ebp - 0x10]
call fcn.00441244
xor eax, eax
mov dword [0x44f410], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x441788
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x314]
cmp al, 1
je 0x441780
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x38]
test al, al
je 0x441780
push 0
call sub.kernel32.dll_GetModuleHandleA_1
mov edx, dword [0x44f538]
cmp eax, dword [edx]
je 0x441777
cmp byte [0x44ecc0], 0
je 0x441780
xor edx, edx
xor eax, eax
call fcn.0042e378
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x44179c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4417ec
lea eax, [ebp - 0x20]
call fcn.004035f4
lea eax, [ebp - 0x1c]
call fcn.00404900
lea eax, [ebp - 0x18]
call fcn.00404900
lea eax, [ebp - 0x14]
call fcn.00404900
lea eax, [ebp - 0x10]
call fcn.00404900
lea eax, [ebp - 0xc]
mov edx, dword [0x405c74]
mov ecx, 2
call fcn.00403e38
ret