Function at 0x4140af
Capabilities:
Access peb ldr_data

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
push ebx
push esi
push edi
push ecx
xor ebx, ebx
call fcn.0041aa1d
mov esi, eax
test esi, esi
jns 0x4140f4
cmp esi, 0xc000000d
jne 0x4140e1
push 0xc1008035
call fcn.0041ba12
pop ecx
jmp 0x4145d7
push esi
call dword [sym.imp.ntdll.dll_RtlNtStatusToDosError]
mov ecx, eax
call fcn.0041ba5a
jmp 0x4145d7
mov ecx, 0x404e94
call fcn.0041ac6b
test al, al
jne 0x4145c2
mov ecx, 0x404e98
call fcn.0041ac6b
test al, al
jne 0x4145c2
mov ecx, 0x404ea4
call fcn.0041aca0
mov ecx, eax
test ecx, ecx
je 0x414162
cmp dword [ecx + 0xc], 1
push ecx
push ebx
je 0x41414b
mov eax, dword fs:[0x30]
push dword [eax + 0x18]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov esi, 0xc000000d
push 0xc1008001
jmp 0x4140d6
mov eax, dword [ecx + 0x10]
mov dword [0x43b458], eax
mov eax, dword fs:[0x30]
push dword [eax + 0x18]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov ecx, 0x404eb0
call fcn.0041aca0
test eax, eax
je 0x4141a2
cmp dword [eax + 0xc], ebx
push eax
mov eax, dword fs:[0x30]
push ebx
push dword [eax + 0x18]
je 0x414195
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov esi, 0xc000000d
push 0xc100802a
jmp 0x4140d6
mov byte [0x43b45d], 1
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov ecx, 0x404ec0
call fcn.0041aca0
test eax, eax
je 0x4141e2
cmp dword [eax + 0xc], ebx
push eax
mov eax, dword fs:[0x30]
push ebx
push dword [eax + 0x18]
je 0x4141d5
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov esi, 0xc000000d
push 0xc1008002
jmp 0x4140d6
mov byte [0x43b45c], 1
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov ecx, 0x404ec4
call fcn.0041aca0
test eax, eax
je 0x41420d
cmp dword [eax + 0xc], ebx
push eax
mov eax, dword fs:[0x30]
push ebx
push dword [eax + 0x18]
jne 0x414180
mov byte [0x43b45e], 1
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov ecx, 0x404ecc
call fcn.0041aca0
mov esi, eax
test esi, esi
je 0x4142c3
cmp dword [esi + 0xc], ebx
je 0x4142a2
push 1
push 0x404ee0
push dword [esi + 0x10]
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x414242
xor edi, edi
inc edi
jmp 0x4142a4
push 1
push 0x404ee4
push dword [esi + 0x10]
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x41425d
push 2
jmp 0x414291
push 1
push 0x404ee8
push dword [esi + 0x10]
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x414278
push 3
jmp 0x414291
push 1
push 0x404eec
push dword [esi + 0x10]
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x414294
push 4
pop edi
jmp 0x4142a4
push dword [esi + 0x10]
call dword [sym.imp.msvcrt.dll__wtoi]
pop ecx
mov edi, eax
jmp 0x4142a4
mov edi, ebx
mov eax, dword fs:[0x30]
push esi
push ebx
push dword [eax + 0x18]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
mov edx, 0x414050
mov ecx, edi
mov bl, 1
call fcn.0041def1
cmp dword [0x43b450], 0x43b450
je 0x4142dd
mov ecx, 0x404ef0
call fcn.0041ac6b
test al, al
je 0x4142ec
call fcn.0041b16a
call fcn.00418cff
jmp 0x4145ac
mov ecx, 0x404efc
call fcn.0041ac6b
test al, al
je 0x414309
call fcn.0041b16a
call fcn.00419d2c
jmp 0x4145ac
mov ecx, 0x404f08
call fcn.0041ac6b
test al, al
je 0x414326
call fcn.0041b16a
call fcn.0041a7e8
jmp 0x4145ac
mov ecx, 0x404f18
call fcn.0041ac6b
test al, al
je 0x414343
call fcn.0041b16a
call fcn.0041a087
jmp 0x4145ac
mov ecx, 0x404f28
call fcn.0041ac6b
test al, al
je 0x414360
call fcn.0041b16a
call fcn.004164af
jmp 0x4145ac
mov ecx, 0x404f40
call fcn.0041ac6b
test al, al
je 0x41437d
call fcn.0041b16a
call fcn.00416687
jmp 0x4145ac
mov ecx, 0x404f48
call fcn.0041ac6b
test al, al
je 0x41439a
call fcn.0041b16a
call fcn.004145e5
jmp 0x4145ac
mov ecx, 0x404f58
call fcn.0041ac6b
test al, al
je 0x4143b7
call fcn.0041b16a
call fcn.00414719
jmp 0x4145ac
mov ecx, 0x404f68
call fcn.0041ac6b
test al, al
je 0x4143d4
call fcn.0041b16a
call fcn.0041482d
jmp 0x4145ac
mov ecx, 0x404f84
call fcn.0041ac6b
test al, al
je 0x4143f1
call fcn.0041b16a
call fcn.00414a41
jmp 0x4145ac
mov ecx, 0x404fa8
call fcn.0041ac6b
test al, al
je 0x41440e
call fcn.0041b16a
call fcn.00414c3e
jmp 0x4145ac
mov ecx, 0x404fc4
call fcn.0041ac6b
test al, al
je 0x414428
call fcn.0041b16a
xor ecx, ecx
jmp 0x414575
mov ecx, 0x404fdc
call fcn.0041ac6b
test al, al
je 0x414442
call fcn.0041b16a
xor ecx, ecx
jmp 0x414592
mov ecx, 0x404fe8
call fcn.0041ac6b
test al, al
je 0x41445f
call fcn.0041b16a
call fcn.00416315
jmp 0x4145ac
mov ecx, 0x404ffc
call fcn.0041ac6b
test al, al
je 0x41447c
call fcn.0041b16a
call fcn.0041869d
jmp 0x4145ac
mov ecx, 0x405014
call fcn.0041ac6b
test al, al
je 0x414499
call fcn.0041b16a
call fcn.00418971
jmp 0x4145ac
mov ecx, 0x40501c
call fcn.0041ac6b
test al, al
je 0x4144b6
call fcn.0041b16a
call fcn.00418b57
jmp 0x4145ac
mov ecx, 0x40502c
call fcn.0041ac6b
test al, al
je 0x4144ce
call fcn.0041ad08
jmp 0x4145ac
mov ecx, 0x405044
call fcn.0041ac6b
test al, al
je 0x4144e6
call fcn.0041ae1c
jmp 0x4145ac
mov ecx, 0x405054
call fcn.0041ac6b
test al, al
je 0x4144fe
call fcn.0041aeec
jmp 0x4145ac
mov ecx, 0x405064
call fcn.0041ac6b
test al, al
je 0x414516
call fcn.0041aff4
jmp 0x4145ac
mov ecx, 0x405078
call fcn.0041ac6b
test al, al
je 0x41452e
call fcn.0041b16a
xor ecx, ecx
inc ecx
jmp 0x414575
mov ecx, 0x4050a0
call fcn.0041ac6b
test al, al
je 0x414548
call fcn.0041b16a
call fcn.004194dd
jmp 0x4145ac
mov ecx, 0x4050b0
call fcn.0041ac6b
test al, al
je 0x41455f
call fcn.0041b16a
push 2
jmp 0x414574
mov ecx, 0x4050d4
call fcn.0041ac6b
test al, al
je 0x41457c
call fcn.0041b16a
push 3
pop ecx
call fcn.00414e3e
jmp 0x4145ac
mov ecx, 0x4050f0
call fcn.0041ac6b
test al, al
je 0x414599
call fcn.0041b16a
xor ecx, ecx
inc ecx
call fcn.0041603e
jmp 0x4145ac
mov ecx, 0x4050fc
call fcn.0041ac6b
test al, al
je 0x4145b0
call fcn.0041b111
mov esi, eax
jmp 0x4145c9
push 0xc100802a
mov esi, 0xc000000d
call fcn.0041ba12
pop ecx
jmp 0x4145c9
call fcn.0041b18a
mov esi, ebx
test bl, bl
je 0x4145d7
push 5
xor edx, edx
pop ecx
call fcn.0041def1
call fcn.0041ac28
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret