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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x5c
push ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x18], eax
inc eax
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 8]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov dword [esp + 0x18], 0
test eax, eax
jne 0x4e1ee3
mov edi, ebx
call fcn.005024e0
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x10]
shr eax, 2
and eax, 1
cmp dword [ebp + 0x14], 0
mov dword [esp + 0x34], eax
je 0x4e1f34
test dword [esi + 4], 0x800
je 0x4e1f34
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov edi, dword [eax]
xor esi, esi
test edi, edi
jle 0x4e1f29
lea ebx, [eax + 8]
mov eax, dword [ebx]
call fcn.004e1c00
test eax, eax
jne 0x4e1f26
inc esi
add ebx, 0x18
cmp esi, edi
jl 0x4e1f13
mov ebx, dword [ebp + 8]
cmp esi, edi
jne 0x4e1f34
mov dword [ebp + 0x14], 0
cmp dword [ebx + 0x24], 0
jne 0x4e25ba
mov ecx, dword [ebp + 0xc]
call fcn.004e1db0
test eax, eax
je 0x4e25ba
mov edx, dword [eax]
mov eax, dword [eax + 0x1c]
mov ebx, dword [eax + 0x18]
mov esi, dword [ebp + 8]
mov edi, dword [ebx + 0x48]
mov ecx, dword [esi]
mov dword [esp + 0x28], edx
mov edx, dword [edx]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x2c], ebx
mov eax, 0xfff0bdc0
test edi, edi
je 0x4e1f94
mov edx, dword [ecx + 0x14]
xor eax, eax
test edx, edx
jle 0x4e1f94
mov ecx, dword [ecx + 0x10]
add ecx, 0xc
cmp dword [ecx], edi
je 0x4e1f94
inc eax
add ecx, 0x10
cmp eax, edx
jl 0x4e1f88
movsx edi, ax
mov eax, dword [esi + 0x78]
mov dword [esp + 0x30], edi
test eax, eax
jne 0x4e1fa4
mov eax, esi
mov ecx, edi
mov edx, 1
shl edx, cl
mov ecx, dword [eax + 0x5c]
test edx, ecx
jne 0x4e1fc3
or ecx, edx
mov dword [eax + 0x5c], ecx
cmp edi, 1
jne 0x4e1fc3
call fcn.004ef7a0
mov ecx, dword [ebx]
mov edx, dword [ebx + 0x1c]
push ecx
push 0
push edx
push edi
mov eax, esi
call fcn.004e9be0
add esp, 0x10
cmp dword [esp + 0xc], 1
jne 0x4e20a2
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 8]
cmp word [ecx + 0x20], 0
jge 0x4e20a2
mov edx, dword [esp + 0x1c]
push 0
push 0
push 0
push 0x14
push edx
call fcn.004cd400
mov ecx, dword [ebp + 8]
add esp, 0x14
push 0x68
mov esi, eax
mov eax, dword [esp + 0x24]
push edi
push eax
push ecx
mov eax, ebx
call fcn.004f7050
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + 0x88]
add esp, 0x10
mov dword [esp + 0x18], 1
test esi, esi
jge 0x4e203a
lea esi, [eax - 1]
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
cmp byte [edx + 0x45], 0
je 0x4e204d
mov ecx, 0x5ef850
jmp 0x4e2056
mov ecx, dword [ecx + 0x58]
lea edx, [esi + esi*4]
lea ecx, [ecx + edx*4]
mov ebx, dword [esp + 0x18]
mov dword [ecx + 8], eax
mov edi, dword [ebp + 0xc]
mov ecx, dword [esp + 0x20]
mov dword [edi + 0x1c], ecx
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4e269e
cmp ebx, 3
je 0x4e269e
cmp ebx, 4
je 0x4e269e
mov edi, dword [edi + 0xc]
mov al, byte [edi]
cmp al, 0x9d
jne 0x4e2090
mov al, byte [edi + 0x26]
cmp al, 0x9e
jne 0x4e267e
mov eax, dword [edi + 0x14]
mov ecx, dword [eax]
jmp 0x4e2690
cmp dword [esp + 0xc], 0
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 0
jle 0x4e21a8
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0xc]
xor esi, esi
add edx, 8
mov dword [esp + 0x24], edx
cmp dword [esp + 0x10], 0
je 0x4e25ba
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0xc]
mov bl, byte [eax]
mov cl, bl
cmp cl, 0x9d
jne 0x4e20eb
mov cl, byte [eax + 0x26]
cmp cl, 0x9e
jne 0x4e20f7
mov ecx, dword [eax + 0x14]
mov edx, dword [ecx]
jmp 0x4e2103
cmp cl, 0x77
jne 0x4e211f
mov ecx, dword [eax + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx]
cmp edx, 1
jle 0x4e211f
cmp bl, 0x77
je 0x4e2119
cmp byte [eax + 0x26], 0x77
je 0x4e2119
mov eax, dword [ecx + esi + 8]
jmp 0x4e211f
mov eax, dword [ecx]
mov eax, dword [eax + esi + 8]
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx]
movsx ecx, word [edx + 0x20]
test ecx, ecx
jl 0x4e213d
mov edx, dword [esp + 0x2c]
mov edx, dword [edx + 4]
shl ecx, 4
mov bl, byte [ecx + edx + 0xd]
jmp 0x4e213f
mov bl, 0x44
call fcn.004df900
test al, al
je 0x4e215d
test bl, bl
je 0x4e2165
cmp al, 0x43
jge 0x4e2159
cmp bl, 0x43
jge 0x4e2159
mov al, 0x41
jmp 0x4e2167
mov al, 0x43
jmp 0x4e2167
test bl, bl
jne 0x4e2165
mov al, 0x41
jmp 0x4e2167
add al, bl
movsx eax, al
sub eax, 0x41
je 0x4e2180
sub eax, 1
je 0x4e2180
xor eax, eax
cmp bl, 0x43
setge al
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
add dword [esp + 0x24], 0x18
inc eax
add esi, 0x18
cmp eax, edi
mov dword [esp + 0x14], eax
jl 0x4e20ce
cmp dword [esp + 0x10], 0
je 0x4e25ba
mov ebx, dword [esp + 0x2c]
mov edx, dword [ebx + 8]
mov dword [esp + 0x10], edx
test edx, edx
je 0x4e25ba
jmp 0x4e21c0
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0xc]
mov edi, dword [ebp + 0xc]
test ebx, ebx
jne 0x4e2060
movzx eax, word [edx + 0x34]
movzx ecx, ax
cmp ecx, esi
jl 0x4e259b
cmp ax, 0x3f
jae 0x4e259b
xor eax, eax
cmp dword [esp + 0x34], eax
je 0x4e220d
movzx edi, word [edx + 0x32]
cmp edi, esi
jg 0x4e259b
cmp ecx, esi
jle 0x4e220d
cmp byte [edx + 0x36], al
je 0x4e259b
cmp esi, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x14], eax
jle 0x4e2360
mov ecx, dword [esp + 0x28]
add ecx, 8
mov dword [esp + 0x24], 0
mov dword [esp + 0x2c], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
mov bl, byte [eax]
mov cl, bl
mov esi, 0x100
cmp cl, 0x9d
jne 0x4e224b
mov cl, byte [eax + 0x26]
cmp cl, 0x9e
jne 0x4e2257
mov ecx, dword [eax + 0x14]
mov edx, dword [ecx]
jmp 0x4e2263
cmp cl, 0x77
jne 0x4e2287
mov ecx, dword [eax + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx]
cmp edx, 1
jle 0x4e2287
cmp bl, 0x77
je 0x4e227d
cmp byte [eax + 0x26], 0x77
je 0x4e227d
mov eax, dword [esp + 0x24]
mov eax, dword [ecx + eax + 8]
jmp 0x4e2287
mov ecx, dword [ecx]
mov edx, dword [esp + 0x24]
mov eax, dword [ecx + edx + 8]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [ecx]
test dword [eax + 4], esi
je 0x4e2298
mov edx, dword [ebp + 8]
push edx
jmp 0x4e22bc
test ebx, ebx
je 0x4e22a7
test dword [ebx + 4], esi
je 0x4e22a7
mov eax, dword [ebp + 8]
push eax
jmp 0x4e22ba
mov edi, dword [ebp + 8]
push edi
call fcn.004dfa90
mov esi, eax
add esp, 4
test esi, esi
jne 0x4e22c6
push edi
mov eax, ebx
call fcn.004dfa90
add esp, 4
mov esi, eax
movzx ecx, word [ebx + 0x20]
mov edx, dword [esp + 0x10]
mov ebx, dword [edx + 4]
xor edi, edi
mov dword [esp + 0x38], ecx
mov ax, word [esp + 0x38]
cmp word [ebx], ax
jne 0x4e22fa
test esi, esi
je 0x4e2304
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x20]
mov eax, dword [edx + edi*4]
mov ecx, dword [esi]
call fcn.004b27e0
test eax, eax
je 0x4e2304
inc edi
add ebx, 2
cmp edi, dword [esp + 0xc]
jl 0x4e22d7
cmp edi, dword [esp + 0xc]
je 0x4e2360
mov eax, 1
xor edx, edx
mov ecx, edi
call fcn.005835c0
mov esi, eax
mov ecx, esi
and ecx, dword [esp + 0x40]
mov eax, edx
and eax, dword [esp + 0x44]
or ecx, eax
jne 0x4e2360
mov eax, dword [ebp + 0x18]
or dword [esp + 0x40], esi
or dword [esp + 0x44], edx
test eax, eax
je 0x4e2340
mov ecx, dword [esp + 0x14]
mov dword [eax + ecx*4], edi
mov eax, dword [esp + 0x14]
mov ecx, 0x18
add dword [esp + 0x24], ecx
add dword [esp + 0x2c], ecx
inc eax
cmp eax, dword [esp + 0xc]
mov dword [esp + 0x14], eax
jl 0x4e2234
mov ecx, dword [esp + 0xc]
mov eax, 1
xor edx, edx
call fcn.005835c0
add eax, 0xffffffff
adc edx, 0xffffffff
cmp dword [esp + 0x40], eax
jne 0x4e259b
cmp dword [esp + 0x44], edx
jne 0x4e259b
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi + 0x88]
mov edx, dword [esi + 0xc]
cmp dword [edx + 0x30], ecx
jg 0x4e23b1
xor ebx, ebx
push ebx
push ebx
push ebx
push 0x14
call fcn.004cd3c0
add esp, 0x10
mov dword [esp + 0x2c], eax
jmp 0x4e23e1
lea eax, [ecx + 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x58]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
xor edx, edx
mov byte [eax], 0x14
mov word [eax + 2], dx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov byte [eax + 1], dl
mov dword [esp + 0x2c], ecx
xor ebx, ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edi, dword [esp + 0x3c]
push ecx
push str.USING_INDEX__s_FOR_IN_OPERATOR
call fcn.004b1850
mov ecx, dword [esi + 0x88]
mov edx, dword [esi + 0xc]
add esp, 8
cmp dword [edx + 0x30], ecx
mov edi, eax
jg 0x4e241b
push ebx
push ebx
push ebx
push 0xa7
call fcn.004cd3c0
add esp, 0x10
jmp 0x4e2447
lea eax, [ecx + 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x58]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
xor edx, edx
mov byte [eax], 0xa7
mov word [eax + 2], dx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], dl
mov eax, ecx
mov ecx, dword [esi]
cmp byte [ecx + 0x45], 0
je 0x4e245d
push 0xfffffffffffffff9
mov eax, edi
call fcn.004cdcf0
add esp, 4
jmp 0x4e2494
cmp eax, ebx
jge 0x4e2468
mov eax, dword [esi + 0x88]
dec eax
mov ecx, dword [esi + 0x58]
lea eax, [eax + eax*4]
cmp byte [ecx + eax*4 + 1], 0
lea ecx, [ecx + eax*4]
je 0x4e2489
push edi
push esi
mov eax, 0xfffffff9
call fcn.004cde50
add esp, 8
jmp 0x4e2494
cmp edi, ebx
je 0x4e2494
mov dword [ecx + 0x10], edi
mov byte [ecx + 1], 0xf9
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x2c]
mov eax, dword [esi + 0x88]
mov edx, dword [esi + 0xc]
cmp dword [edx + 0x30], eax
jg 0x4e24c0
mov eax, dword [esp + 0x30]
push eax
push ecx
mov ecx, dword [esp + 0x28]
push ecx
push 0x68
call fcn.004cd3c0
add esp, 0x10
jmp 0x4e24f3
lea edx, [eax + 1]
mov dword [esi + 0x88], edx
mov edx, dword [esi + 0x58]
lea eax, [eax + eax*4]
lea eax, [edx + eax*4]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x20]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x30]
mov byte [eax], 0x68
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], 0
mov edx, dword [esp + 0x10]
mov ebx, dword [ebp + 8]
mov edi, dword [ebx + 8]
push edx
push ebx
call fcn.004eff80
add esp, 8
test eax, eax
je 0x4e2536
mov ecx, dword [edi]
cmp byte [ecx + 0x45], 0
je 0x4e251f
push 0xfffffffffffffff7
call fcn.004cdcf0
add esp, 4
jmp 0x4e2536
mov ecx, dword [edi + 0x88]
mov edx, dword [edi + 0x58]
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*4 - 0x14]
mov byte [ecx + 1], 0xf7
mov dword [ecx + 0x10], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x1c]
movzx eax, byte [ecx]
add eax, 3
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x4e256f
mov ecx, 1
add dword [ebx + 0x2c], ecx
mov ebx, dword [ebx + 0x2c]
mov dword [eax], ebx
cmp dword [esp + 0xc], ecx
jne 0x4e256f
mov edx, dword [esp + 0x20]
push ebx
push edx
call fcn.004e1e20
add esp, 8
mov eax, dword [esp + 0x2c]
mov ecx, dword [esi + 0x88]
test eax, eax
jge 0x4e2580
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x45], 0
je 0x4e258f
mov eax, 0x5ef850
jmp 0x4e2598
mov edx, dword [esi + 0x58]
lea eax, [eax + eax*4]
lea eax, [edx + eax*4]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x14]
mov dword [esp + 0x10], edx
test edx, edx
jne 0x4e21c0
mov ebx, dword [esp + 0x18]
test ebx, ebx
jne 0x4e205d
test byte [ebp + 0x10], 1
mov edi, dword [ebp + 0xc]
je 0x4e2617
test dword [edi + 4], 0x800
jne 0x4e2617
mov esi, dword [edi + 0xc]
xor eax, eax
lea ecx, [esp + 0x4c]
push edi
push ecx
mov dword [edi + 0xc], eax
mov byte [esp + 0x68], 1
mov dword [esp + 0x58], 0x4e18d0
mov dword [esp + 0x5c], 0x4e19e0
mov dword [esp + 0x6c], eax
call fcn.004dda50
add esp, 8
cmp byte [esp + 0x60], 0
mov dword [edi + 0xc], esi
je 0x4e260d
mov edx, dword [edi + 0x14]
cmp dword [edx], 2
jg 0x4e2617
mov ebx, 5
jmp 0x4e2060
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x84]
mov dword [esp + 0x3c], eax
xor eax, eax
test byte [ebp + 0x10], 4
lea ebx, [eax + 2]
je 0x4e264c
mov dword [esi + 0x84], eax
mov ecx, dword [edi + 0xc]
cmp word [ecx + 0x20], ax
jge 0x4e265b
test dword [edi + 4], 0x800
jne 0x4e265b
lea ebx, [eax + 1]
jmp 0x4e265b
mov ecx, dword [ebp + 0x14]
cmp ecx, eax
je 0x4e265b
inc dword [esi + 0x2c]
mov eax, dword [esi + 0x2c]
mov dword [ecx], eax
xor edx, edx
cmp ebx, 1
sete dl
push edx
push eax
push edi
push esi
call fcn.004e2860
mov eax, dword [esp + 0x4c]
add esp, 0x10
mov dword [esi + 0x84], eax
jmp 0x4e2067
cmp al, 0x77
jne 0x4e268b
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
mov ecx, dword [eax]
jmp 0x4e2690
mov ecx, 1
xor eax, eax
test ecx, ecx
jle 0x4e269e
mov dword [edx + eax*4], eax
inc eax
cmp eax, ecx
jl 0x4e2696
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret