Function at 0x401960
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x432060]
mov ecx, dword [0x432048]
mov edx, dword [0x432054]
add ecx, eax
mov eax, dword [0x432050]
sub edx, ecx
mov dword [0x432054], edx
mov edx, dword [0x432030]
push ebx
push esi
lea ecx, [edx + eax - 0x26]
push edi
mov dword [0x432030], ecx
call fcn.00401cd0
call fcn.00430300
call fcn.00430300
call fcn.00430300
call fcn.004014c0
call fcn.004014c0
call fcn.00401cd0
call fcn.00401c90
call fcn.004014c0
call fcn.00401c90
call fcn.00430300
call fcn.0042fcd0
call fcn.004014c0
call fcn.0042fcd0
call fcn.00401c90
call fcn.004014c0
call fcn.0042fcd0
call fcn.0042fcd0
call fcn.00401c90
call fcn.004018e0
call fcn.004018e0
call fcn.00401c90
call fcn.00430300
call fcn.004014c0
call fcn.00401c90
call fcn.00401cd0
call fcn.004014c0
call fcn.00430300
call fcn.004018e0
call fcn.00401c90
call fcn.00401c90
call fcn.0042fcd0
call fcn.0042fcd0
call fcn.00430300
call fcn.0042fcd0
call fcn.004014c0
call fcn.00401c90
push dword fs:[0x30]
call fcn.00401c90
call fcn.00430300
call fcn.004014c0
call fcn.00430300
call fcn.0042fcd0
call fcn.00401c90
call fcn.00401cd0
call fcn.004014c0
call fcn.00401cd0
call fcn.004018e0
pop dword [ebp - 4]
call fcn.0042fcd0
call fcn.0042fcd0
call fcn.00430300
call fcn.00430300
call fcn.00430300
mov edx, dword [ebp - 4]
mov esi, dword [edx + 0xc]
add esi, 0x14
mov dword [ebp - 0xc], esi
call fcn.00401cd0
call fcn.004018e0
mov eax, dword [esi]
mov dword [ebp - 4], eax
call fcn.00430300
call fcn.0042fcd0
call fcn.00401cd0
call fcn.004018e0
call fcn.00430300
call fcn.00401cd0
mov dword [ebp - 8], 0x172
call fcn.004018e0
call fcn.004014c0
call fcn.004014c0
call fcn.004018e0
call fcn.00430300
call fcn.00401c90
call fcn.004018e0
call fcn.00401cd0
mov ecx, dword [ebp - 4]
mov edi, dword [ecx + 0x28]
call fcn.00430300
xor esi, esi
call fcn.0042fcd0
call fcn.00430300
call fcn.00401cd0
mov eax, 0xeef006
xor ebx, ebx
lea edx, [ebx + eax]
test edx, edx
je 0x401b3e
call fcn.00401cd0
call fcn.0042fcd0
lea eax, [ebx + ebx]
test eax, eax
je 0x401b4f
call fcn.0042fcd0
lea ebx, [ebx + ebx*2 + 0xec]
call fcn.00401c90
add ebx, 0xa8
mov ecx, 0x53
sub ecx, ebx
je 0x401b6f
call fcn.004014c0
mov edx, esi
lea eax, [esi*8]
shr edx, 0x1d
or edx, eax
mov esi, edx
call fcn.0042fcd0
call fcn.00401c90
call fcn.00401cd0
xor ecx, ecx
mov cx, word [edi]
or ecx, 0x20
xor esi, ecx
call fcn.00430300
call fcn.004018e0
call fcn.00430300
call fcn.004018e0
add edi, 2
mov ebx, 0xffffffa6
mov eax, 0xffffff7a
cmp word [edi], 0
jne 0x401b32
call fcn.00430300
call fcn.00401c90
call fcn.004014c0
call fcn.00401c90
call fcn.00430300
xor esi, 0x4ac53682
call fcn.004018e0
call fcn.00401cd0
call fcn.004018e0
call fcn.0042fcd0
cmp esi, dword [ebp + 8]
je 0x401c43
call fcn.00401c90
call fcn.00401cd0
call fcn.004014c0
call fcn.0042fcd0
call fcn.00401cd0
mov edx, dword [ebp - 4]
mov esi, dword [edx]
mov dword [ebp - 4], esi
call fcn.004014c0
call fcn.004018e0
call fcn.004014c0
call fcn.00401c90
mov eax, dword [ebp - 0xc]
mov dword [ebp - 8], 0x3f
cmp esi, eax
je 0x401c6e
jmp 0x401ae7
call fcn.00401c90
call fcn.004014c0
call fcn.0042fcd0
call fcn.0042fcd0
call fcn.00401c90
call fcn.00430300
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00430300
call fcn.0042fcd0
call fcn.00430300
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret