Function at 0x41ecb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4b77cc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x570
mov eax, dword [0x4f9630]
push ebx
push ebp
xor ebp, ebp
push esi
cmp eax, ebp
push edi
mov ebx, ecx
mov dword [esp + 0x48], 1
mov dword [esp + 0x4c], 2
mov dword [esp + 0x50], 0x18
mov dword [esp + 0x54], 0x17
mov dword [esp + 0x58], 0x14
mov dword [esp + 0x5c], 0x16
mov dword [esp + 0x60], 0x15
mov dword [esp + 0x64], 0x46
mov dword [esp + 0x68], 0x50
mov dword [esp + 0x6c], 0x49
mov dword [esp + 0x70], 0x4d
mov dword [esp + 0x74], 0x4b
mov dword [esp + 0x78], 0x4f
mov dword [esp + 0x7c], 0x47
jne 0x41f1c3
mov esi, dword [esp + 0x590]
push esi
mov eax, dword [esi]
call dword [eax + 0x10]
mov edi, eax
mov dword [0x4f9630], eax
lea eax, [edi + edi*2]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
lea edx, [edi + ecx*2]
lea eax, [edx*4 + 4]
push eax
call fcn.00489cc9
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, ebp
mov dword [esp + 0x588], ebp
je 0x41edaa
push fcn.00446ab0
push 0x41ec20
lea ebp, [eax + 4]
push edi
push 0x25c
push ebp
mov dword [eax], edi
call fcn.0048ad4c
mov dword [ebx + 0x438], ebp
mov eax, dword [0x4f9630]
xor edi, edi
mov dword [esp + 0x588], 0xffffffff
cmp eax, edi
mov dword [esp + 0x10], edi
jle 0x41f1c3
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x10]
mov ecx, dword [esi]
lea edx, [esp + 0x154]
push edx
push 2
push eax
push esi
call dword [ecx + 0x14]
mov edx, dword [ebx + 0x438]
lea ecx, [esp + 0x354]
push ecx
push 0x4e5544
lea eax, [edi + edx + 4]
push eax
call fcn.0048a8e1
add esp, 0xc
xor ebp, ebp
lea ecx, [esp + 0x48]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ecx
jmp 0x41ee1f
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
mov ecx, dword [esi]
mov eax, dword [edx]
lea edx, [esp + 0x80]
push edx
mov dword [esp + 0x34], eax
push eax
mov eax, dword [esp + 0x18]
push eax
push esi
call dword [ecx + 0x34]
test eax, eax
jl 0x41ee73
mov edx, dword [ebx + 0x438]
mov ecx, edi
add ecx, edx
mov byte [ecx + ebp + 0x204], 1
mov eax, dword [esp + 0x8c]
test eax, 0x80000
je 0x41ee73
mov eax, dword [ebx + 0x438]
mov edx, edi
add edx, eax
mov byte [edx + ebp + 0x206], 1
lea eax, [esp + 0x50]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
mov edx, dword [esi]
push 1
mov ebp, dword [ecx]
mov ecx, dword [esp + 0x14]
push ebp
push ebp
push eax
push ecx
push esi
call dword [edx + 0x24]
test eax, eax
jl 0x41ef50
mov ecx, dword [ebx + 0x438]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
add edi, ecx
add edi, eax
lea eax, [esp + 0x64]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x34], eax
mov byte [edi + edx + 0x208], 1
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov edx, dword [esi]
mov edi, dword [ecx]
mov ecx, dword [esp + 0x10]
push edi
push 1
push 2
push ebp
push eax
push ecx
push esi
call dword [edx + 0x28]
test eax, eax
jl 0x41ef33
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
mov edx, dword [esi]
push edi
push ebp
push ebp
push eax
push ecx
push esi
call dword [edx + 0x30]
test eax, eax
jl 0x41ef33
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
add eax, edx
mov edx, dword [esp + 0x18]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [ebx + 0x438]
add ecx, edx
mov edx, dword [esp + 0x2c]
add ecx, eax
mov byte [ecx + edx + 0x212], 1
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
inc eax
add edx, 4
cmp eax, 7
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], edx
jl 0x41eecf
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
inc eax
add edx, 4
cmp eax, 5
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], edx
jl 0x41ee83
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
inc eax
add ebp, 4
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
add eax, 5
mov dword [esp + 0x24], ebp
cmp eax, 0xa
mov dword [esp + 0x20], eax
jl 0x41ee1b
mov ecx, dword [esp + 0x10]
mov eax, dword [esi]
push ecx
push esi
call dword [eax + 0x18]
mov edx, dword [ebx + 0x438]
mov dword [edi + edx], eax
mov eax, dword [ebx + 0x438]
add eax, edi
mov edx, dword [eax]
inc edx
mov dword [eax], edx
mov ecx, dword [ebx + 0x438]
mov ebp, dword [edi + ecx]
lea edx, [ebp + ebp*4]
lea eax, [edx*4 + 4]
push eax
call fcn.00489cc9
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
mov dword [esp + 0x588], 1
je 0x41f008
push fcn.00446ab0
mov dword [eax], ebp
push fcn.0041ec80
add eax, 4
push ebp
push 0x14
push eax
mov dword [esp + 0x2c], eax
call fcn.0048ad4c
mov eax, dword [esp + 0x18]
jmp 0x41f00a
xor eax, eax
mov ecx, dword [ebx + 0x438]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x588], 0xffffffff
mov dword [edi + ecx + 0x258], eax
mov edx, dword [esi]
lea eax, [esp + 0x38]
push eax
push ebp
push esi
call dword [edx + 0x20]
mov ecx, dword [esi]
lea edx, [ebx + 0x14]
push edx
push ebp
push esi
call dword [ecx + 0x20]
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x14], 1
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx], edx
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x3c]
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx + 4], edx
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x40]
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx + 8], edx
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x44]
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx + 0xc], edx
mov eax, dword [ebx + 0x438]
cmp dword [edi + eax], 1
jle 0x41f12e
mov ebp, 0x14
mov eax, dword [esp + 0x14]
mov ecx, dword [esi]
lea edx, [esp + 0x38]
dec eax
push edx
mov edx, dword [esp + 0x14]
push eax
push edx
push esi
call dword [ecx + 0x1c]
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x38]
add ebp, 0x14
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx + ebp - 0x14], edx
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x3c]
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx + ebp - 0x10], edx
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x40]
mov ecx, dword [edi + eax + 0x258]
mov dword [ecx + ebp - 0xc], edx
mov eax, dword [ebx + 0x438]
mov edx, dword [esp + 0x44]
mov ecx, dword [edi + eax + 0x258]
mov eax, dword [esp + 0x14]
inc eax
mov dword [ecx + ebp - 8], edx
mov ecx, dword [ebx + 0x438]
mov dword [esp + 0x14], eax
cmp eax, dword [edi + ecx]
jl 0x41f0a9
mov edx, dword [ebx + 0x438]
xor ebp, ebp
mov dword [esp + 0x14], ebp
mov ecx, dword [edi + edx]
lea eax, [edi + edx]
cmp ecx, ebp
jle 0x41f1a2
mov eax, dword [eax + 0x258]
xor ecx, ecx
lea edx, [eax + ebp]
mov eax, dword [eax + ebp + 0xc]
cmp eax, 0x18
jne 0x41f15f
mov ecx, 0x10
jmp 0x41f186
cmp eax, 0x17
jne 0x41f16b
mov ecx, 0x10
jmp 0x41f186
cmp eax, 0x14
jne 0x41f177
mov ecx, 0x18
jmp 0x41f186
cmp eax, 0x16
je 0x41f181
cmp eax, 0x15
jne 0x41f186
mov ecx, 0x20
mov dword [edx + 0x10], ecx
mov edx, dword [ebx + 0x438]
mov ecx, dword [esp + 0x14]
add ebp, 0x14
lea eax, [edi + edx]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, dword [eax]
jl 0x41f144
mov eax, dword [esp + 0x10]
mov ecx, dword [0x4f9630]
inc eax
add edi, 0x25c
cmp eax, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], edi
jl 0x41edd2
mov ecx, dword [esp + 0x580]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov dword fs:[0], ecx
add esp, 0x57c
ret 4